Вводная. Хотел найти и нашёл ту самую процедуру, поперчив которую минимальным кодом мы бы получили нужный функционал. Переписывать всё и городить огород для последующих работ с обновлениями никому не хочется. По итогу были найдены и использованы в своих корыстных целях по процедуре в каждой из конфигураций.
В рознице 2.2 и Торговле 11.4 в модуле МенеджерОборудованияКлиент захватываем и дописываем под себя -
&Вместо("НачатьВыполнениеКоманды_ВыполнитьКомандуЗавершение")
Процедура ИЧККТ_НачатьВыполнениеКоманды_ВыполнитьКомандуЗавершение(РезультатВыполнения, Параметры) Экспорт
В рознице 2.3 и Торговле 11.5 захватываем в модуле ОборудованиеЧекопечатающиеУстройстваКлиент, добавив немного информации уже после отработки основной части кода -
&После("НачатьФискализациюЧекаНаФискальномУстройстве")
Процедура ИЧККТ_НачатьФискализациюЧекаНаФискальномУстройстве(ОповещениеПриЗавершении, ИдентификаторКлиента, ИдентификаторУстройства, ПараметрыОперации, ДополнительныеПараметры)
Весь функционал реализован захватом одной функции в каждом из расширений.
Расширение дополнительно к основному чеку печатает дополнительный не фискальный документ.
Работа проверялась на ККМ: Атол, Штрих, ВикиПринт.
Создано два расширения. под различный код 1С:
1. Розница 2.2, Торговля 11.4
2. Розница 2.3, Торговля 11.5
Код для Розница 2.3
&После("НачатьФискализациюЧекаНаФискальномУстройстве")
Процедура ИЧККТ_НачатьФискализациюЧекаНаФискальномУстройстве(ОповещениеПриЗавершении, ИдентификаторКлиента, ИдентификаторУстройства, ПараметрыОперации, ДополнительныеПараметры)
ПечатьИнфоЧека = ИЧККТ_ПолучитьПараметрНастроекРабочегоМеста("ПечатьЧекИнфо");
Если ПечатьИнфоЧека Тогда
ЧекККТИнфо = ИЧККТ_ПолучитьИнформациюПоЧеку(ПараметрыОперации.ДокументОснование);
СсылкаQRCode = ЧекККТИнфо.QRCode;
БалловЗаПокупку = ЧекККТИнфо.Баллов;
Если СсылкаQRCode <> Неопределено и БалловЗаПокупку <> Неопределено Тогда
ПараметрыОперацииСвои = Новый Структура;
ПараметрыОперацииСвои.Вставить("СуммаОперации", 0);
ПараметрыОперацииСвои.Вставить("ТипПлатежнойСистемы", "");
ПараметрыОперацииСвои.Вставить("QRКод", Новый Структура());
ПараметрыОперацииСвои.QRКод.Вставить("ТекстПользователя", "Начислено баллов: "+БалловЗаПокупку);
ПараметрыОперацииСвои.QRКод.Вставить("ЗначениеКода", СсылкаQRCode);
ПараметрыВыполнениеКоманды = МенеджерОборудованияКлиентСервер.ПараметрыВыполнениеКоманды("PrintQRCode",
ОборудованиеЧекопечатающиеУстройстваВызовСервера, ДополнительныеПараметры);
МенеджерОборудованияКлиент.НачатьВыполнениеКоманды(ОповещениеПриЗавершении, ИдентификаторКлиента, ИдентификаторУстройства,
ПараметрыОперацииСвои, ПараметрыВыполнениеКоманды);
КонецЕсли;
КонецЕсли;
КонецПроцедуры
Думаю, на 3й рознице получится запустить расширение от УТ 11.5.
Писалось и тестировалось на платформе 1С:Предприятие 8.3 (8.3.22.1750)
Конфигурации:
- Розница, редакция 2.3 (2.3.11.37)
- Управление торговлей, редакция 11 (11.5.10.46)
- Розница, редакция 2.2 (2.2.12.26)
- Управление торговлей, редакция 11 (11.4.11.84)