Имя: Пароль:
1C
1C 7.7
v7: 1С 7.7 и Штрих-М
0 dedmoroz777
 
04.12.25
10:11
Друзья! А нет ли у кого примеров работы ФР Штрих-М с 1С 7.7? С прошивкой 1.2
1 Злопчинский
 
04.12.25
10:34
2 dedmoroz777
 
04.12.25
10:38
Мне не нужна маркировка. Просто примеры работы с кассой
3 dedmoroz777
 
04.12.25
10:41
Банальные ОткрытьЧек(), ЗакрытьЧек()
Понять принцип как там это работает
4 AAA
 
04.12.25
11:08
см обработки обслуживания к ТИС 9.2
5 dedmoroz777
 
04.12.25
11:27
(4) Да вот говорят прошились на 1.2 и перестало работать. Непонятно, куда копать. Методы у них там сменились или что?
6 MWWRuza
 
гуру
04.12.25
11:49
Ну, х.з., что там у Вас перестало работать, "выдрал" фрагмент модуля из рабочей обработки, подробности и маркировку пропустил, но основные команды там есть, сравнивайте:
Вырвано из контекста рабочей обработки:
//
// *************
ФискальныйРегистратор.Password = глПользователь.ПарольККТ;
// *************
	Рез = ФискальныйРегистратор.GetECRStatus();
	
	Если ФискальныйРегистратор.ECRMode = 8 Тогда	
		Подрежим = ФискальныйРегистратор.ECRAdvancedMode;
		ФискальныйРегистратор.CancelCheck();                     // Х.З. 19.06.2022 - ????????????
		Сообщить("Аннулирован незакрытый чек");
	ИначеЕсли ФискальныйРегистратор.ECRMode 	= 3 Тогда
		Если Вопрос("Смена превысила 24 часа!" + РазделительСтрок +
		"Снять Z-отчет?", "Да+Нет")	= "Нет" Тогда
			Предупреждение("Дальнейшая работа с ККМ невозможна!");
			Возврат;
		Иначе 
			ЗакрытиеСмены();
		КонецЕсли;                                       
	КонецЕсли;
// ************
	Если ФискальныйРегистратор.ECRMode 			= 4 Тогда
		ФискальныйРегистратор.FNBeginOpenSession();
		Если СокрЛП(глПользователь.Сотрудник.ИНН) 		<> "" Тогда 
			ФискальныйРегистратор.TagNumber				= 1203;
			ФискальныйРегистратор.TagType               = 7;
			ФискальныйРегистратор.TagValueStr    		= СокрЛП(глПользователь.Сотрудник.ИНН);
			ФискальныйРегистратор.FNSendTag();
		КонецЕсли;		
		Рез = ФискальныйРегистратор.FNOpenSession();	           // Открываю смену, если закрыта
	КонецЕсли;
// ***********
ФискальныйРегистратор.CheckType = 0;
// ***********
// Дальше в цикле:
ФискальныйРегистратор.StringForPrinting	= Наим;
		ФискальныйРегистратор.Price					= ПредстЦена;
		ФискальныйРегистратор.Quantity				= ОбрДок.Количество;
		
		ФискальныйРегистратор.Summ1Enabled          = 1;
		ФискальныйРегистратор.Summ1                 = ПредстЦена * ОбрДок.Количество;
		
		ФискальныйРегистратор.PaymentTypeSign 		= 4;
ФискальныйРегистратор.PaymentItemSign 	= ВернутьПризнакПредметаРасчета(ОбрДок.КТН, ОбрДок.Номенклатура.Подакциз);
  		ФискальныйРегистратор.MeasureUnit 			= 0; // мера количества
  		ФискальныйРегистратор.DivisionalQuantity 	= 0; // без дробного количества
		
		Рез = ФискальныйРегистратор.FNOperation();
// Тут работаем с маркировкой, не привожу, так, как Вы сказали что Вам маркировка не нужна
// ***********
// Оплата наличкой:
		ФискальныйРегистратор.Summ1 	= Окр(Получено,2,1);
		ФискальныйРегистратор.Summ2 	= 0;
		ФискальныйРегистратор.Summ3 	= 0;
		ФискальныйРегистратор.Summ4 	= 0;
	ФискальныйРегистратор.Summ5 		= 0;
	ФискальныйРегистратор.Summ6 		= 0;
	ФискальныйРегистратор.Summ7 		= 0;
	ФискальныйРегистратор.Summ8 		= 0;
	ФискальныйРегистратор.Summ9 		= 0;
	ФискальныйРегистратор.Summ10 		= 0;
	ФискальныйРегистратор.Summ11 		= 0;
	ФискальныйРегистратор.Summ12 		= 0;
	ФискальныйРегистратор.Summ13 		= 0;
	ФискальныйРегистратор.Summ14 		= 0;
	ФискальныйРегистратор.Summ15 		= 0;
	ФискальныйРегистратор.Summ16 		= 0;
	ФискальныйРегистратор.RoundingSumm  = 0; // Сумма округления 
// *************
ФискальныйРегистратор.TaxType 		= ОбрДок.Касса.СНО;
	ФискальныйРегистратор.StringForPrinting = " "; // Без этого, печатает повтором последнюю строку наименования товара
	Рез = ФискальныйРегистратор.FNCloseCheckEx();
    
	ВыданаСдача = ФискальныйРегистратор.Change;
// Тут всякая обрабротка ошибок, получение результата для фиксации в программе и т.п.
// **********
// В принципе, все... Это работает, извиняйте, если чего-то пропустил...
7 kupec
 
04.12.25
12:05
(0) Sale() заменить на FNOperation() в остальном не должно меняться ничего. Если ККМ именно Штрих, то объект не изменился, а если например РР, то возможно, нужно изменить название объекта вот этого AddIn.DrvFR
8 kupec
 
04.12.25
12:07
Понять бы, на каком моменте ошибка вызывается
9 dedmoroz777
 
04.12.25
12:34
(7) Похоже, на Объект.Sale(); и валится
10 dedmoroz777
 
04.12.25
12:35
(6) Спасибо! и (7) Спасибо!
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший