Можно ли доработать печать чека ККМ для онлайн касс в Рознице?
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Посмотрел в документации и сформировал вот такой xml.
Не понимаю в чём ошибка.
сделал добавление вот таким кодом:
Получил результат:
<Document>
<Positions TextString="Карта: 0000000000001"/>
</Document>
Но судя по инструкции должно быть:
Как сделать тег <Positions> правильно?
И как должен выглядеть результирующий файл xml что бы моя строка вывелась на печать?
<?xml version="1.0" encoding="UTF-8"?>
<CheckPackage>
<Parameters PaymentType="1" TaxVariant="3" SenderEmail="" CustomerEmail="" CustomerPhone=""/>
<Positions>
<FiscalString Name="Пакет "майка" Strike 1/50" Quantity="1" Price="5" Amount="5" Tax="0"/>
</Positions>
<Payments Cash="5" CashLessType1="0" CashLessType2="0" CashLessType3="0"/>
<Document>
<Positions TextString="Карта: 0000000000001"/>
</Document>
</CheckPackage>
<CheckPackage>
<Parameters PaymentType="1" TaxVariant="3" SenderEmail="" CustomerEmail="" CustomerPhone=""/>
<Positions>
<FiscalString Name="Пакет "майка" Strike 1/50" Quantity="1" Price="5" Amount="5" Tax="0"/>
</Positions>
<Payments Cash="5" CashLessType1="0" CashLessType2="0" CashLessType3="0"/>
<Document>
<Positions TextString="Карта: 0000000000001"/>
</Document>
</CheckPackage>
Не понимаю в чём ошибка.
сделал добавление вот таким кодом:
ЗаписьXML.ЗаписатьНачалоЭлемента("Document");
ЗаписьXML.ЗаписатьНачалоЭлемента("Positions");
ЗаписьXML.ЗаписатьАтрибут("TextString" , XMLСтрока("Карта: 0000000000001"));
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.ЗаписатьКонецЭлемента();
Получил результат:
<Document>
<Positions TextString="Карта: 0000000000001"/>
</Document>
Но судя по инструкции должно быть:
<?xml version="1.0" encoding="UTF-8"?>
<Document>
<Positions>
<TextString Text="Участие в дисконтной системе"/>
<TextString Text="Дисконтная карта: 00002345"/>
<Barcode BarcodeType="EAN13" Barcode="2000021262157"/>
</Positions>
</Document>
<Document>
<Positions>
<TextString Text="Участие в дисконтной системе"/>
<TextString Text="Дисконтная карта: 00002345"/>
<Barcode BarcodeType="EAN13" Barcode="2000021262157"/>
</Positions>
</Document>
Как сделать тег <Positions> правильно?
И как должен выглядеть результирующий файл xml что бы моя строка вывелась на печать?
С формированием разобрался
Но в чек не выводится моя строка....
ЗаписьXML.ЗаписатьНачалоЭлемента("Document");
ЗаписьXML.ЗаписатьНачалоЭлемента("Positions");
ЗаписьXML.ЗаписатьНачалоЭлемента("TextString");
ЗаписьXML.ЗаписатьАтрибут("Text" , XMLСтрока("Карта: 0000000000001"));
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.ЗаписатьНачалоЭлемента("Positions");
ЗаписьXML.ЗаписатьНачалоЭлемента("TextString");
ЗаписьXML.ЗаписатьАтрибут("Text" , XMLСтрока("Карта: 0000000000001"));
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.ЗаписатьКонецЭлемента();
Но в чек не выводится моя строка....
(6) там же есть готовый пример:
Не надо смешивать код фискального чека и текстового документа. Это совсем разные действия.
Пример текстового XML:
<?xml version="1.0" encoding="UTF-8"?>
<CheckPackage>
<Parameters PaymentType="1" SenderEmail="info@1c.ru" CustomerEmail="alex2000@mail.ru" CustomerPhone="" AgentCompensation="" AgentPhone=""/>
<Positions>
<FiscalString Name="Макароны" Quantity="1" Price="16.75" Amount="16.75" Tax="10"/>
<FiscalString Name="Томатный сок" Quantity="1" Price="200" Amount="200" Tax="18"/>
<FiscalString Name="Алкоголь Шампрео 0.7" Quantity="1" Price="455" Amount="455" Tax="18"/>
<TextString Text="Дисконтная карта: 00002345"/>
<Barcode BarcodeType="EAN13" Barcode="2000021262157"/>
</Positions>
<Payments Cash="471.75" CashLessType1="0" CashLessType2="0" CashLessType3="200"/>
</CheckPackage>
ПоказатьНе надо смешивать код фискального чека и текстового документа. Это совсем разные действия.
(10) пример кода будет довольно большой.
Для варианта, посмотреть БПО (библиотека подключаемого оборудования) или любую типовую в которой она используется (Розница2, УТ11). Только последние.
Там смотрите:
ПодключаемоеОборудованиеУниверсальныйДрайверКлиент.ФискализацияЧека
Внутри происходит вызов заполнения пакета в формате xml:
ДанныеЧека = МенеджерОборудованияВызовСервера.ПолучитьXMLПакетДляФискализацияЧека(ОбщиеПараметры, ШаблонЧека, СуммаЧека, ШиринаСтроки, НовыйФормат);
Для варианта, посмотреть БПО (библиотека подключаемого оборудования) или любую типовую в которой она используется (Розница2, УТ11). Только последние.
Там смотрите:
ПодключаемоеОборудованиеУниверсальныйДрайверКлиент.ФискализацияЧека
Внутри происходит вызов заполнения пакета в формате xml:
ДанныеЧека = МенеджерОборудованияВызовСервера.ПолучитьXMLПакетДляФискализацияЧека(ОбщиеПараметры, ШаблонЧека, СуммаЧека, ШиринаСтроки, НовыйФормат);
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот