19h ошибка fnoperation

Ошибка при выводе чека ККМ в 1С 8: 36h, Ошибка FNOperation: Некорректные параметры в команде для данной реализации

Описание ошибки:
Ошибка возникла внезапно. Т.е. до ее возникновения чеки ККМ печатались. При попытке печати чека ККМ в частности из документа «Оплата от покупателя платежной картой» конфигурации 1С: Управление торговлей 10.3 возникала эта ошибка для отдельно взятого документа, на основании которого документ оплаты был создан.

Найденные решения:

Судя по ошибке — она носит «универсальный» характер, т.е. может возникнуть в любой другой конфигурации 1С, в которой поддерживается работа с торговым оборудованием и ККМ в частности. Поэтому не обращайте внимание на то, что пример приводится в редакции 10.3 управления торговлей. Многие из перечисленных настроек есть и в новой редакции 11.4, и других типовых конфигурациях, поэтому останется только их найти.

Перейдем к сути. Печать чеков работала до определенного момента, когда стала не возможным по причине возникновения ошибки «36h, Ошибка FNOperation: Некорректные параметры в команде для данной реализации». По предварительным предположениям, учитывая, что в документе из ссылок на документы — только заказ покупателя, то при чем тут реализация? Можно подумать, что реализацией при описании ошибки назван любой документ-основание, содержащий данные для печати чека. Тогда, возможно, надо искать причину в самом документе заказ покупателя. Но визуально содержимое выглядело «как всегда», как и в ранее созданных документах, для которых печать чека был выполнен успешно.

1C 8, при печати, выводе чека ккм, 36h, Ошибка FNOperation: Некорректные параметры в команде для данной реализации
Рис. 1. Возникновение ошибки после нажатия на кнопку «Пробить чек» в форме документа «Оплата от покупателя платежной картой».

Ошибка не часто, но встречаемая. Чтобы попытаться понять суть ошибки в соответствии с первыми комментариями обсуждения ошибки на форуме infostart.ru о том, что нужно проанализировать лог кассы, было включено ведение файла .log.

Нажатие на изображении увеличит его
ошибка при пробитии чеков в 1С 8, онлайн касса 36h, ошибка FNoperation
Рис.2. Включение ведения лога в параметрах кассы ККМ в диалоге подключения и настройки торгового оборудования.

После включения настройки «вести лог» на вкладка «Настройка лога» в параметрах ККТ с передачей данных необходимо настроить путь к логу в настройках драйвера.

Нажатие на изображении увеличит его
ошибка при пробитии чека в 1с 8 УТ, управление торговлей, БП, бухгалтерия, КА, комплексная, выдает ошибку 36h fnoperation
Рис. 3. Настройка пути размещения файла лога .log в драйвере ККМ.

Анализ полученного лога после его формирования оказался достаточно проблематичным, т.к. содержал просто огромное количество строк, проанализировать которые без постоянного опыта обслуживания торгового оборудования, не представлялось возможным. Только было отмечено благодаря логу, что после возникшей ошибки, т.е. неудачной попытки печати чека, касса в среде 1С становилась недоступной. Тест подключения возвращал ошибку FFFFFFF8h, connect timed out.

1С 8, устранение, исправление, ошибка кассы штрих-м, Retail 01Ф, 36h fnoperation
Рис. 4. Ошибка «Тест не пройден. FFFFFFF8h, Connect timed out.» после возникновения ошибки «36h, Ошибка FNOperation: Некорректные параметры в команде» в сеансе работы 1С 8.

Но вернуть подключение 1С 8 к кассе ккм позволяло завершение сеанса работы и запуск 1С снова.

1С 8, ошибка 36h, некорректные параметры в команде для данной реализации, ккм штрих-м, Retail 01Ф
Рис. 5. Пример успешного выполнения теста подключения торгового оборудования в форме оборудования.

Но от этого проблема не решалась. Лишь возобновилась возможность снова и снова получать ошибку «36h, Ошибка FNOperation: Некорректные параметры в команде…» при попытке вывести чек для операции безналичной оплаты.

На форуме mista.ru в обсуждении под темой При пробитии чека в 1с УТ ред.11 выдает ошибку 36h предлагалось проверить наличие скидок в документе — они отсутствовали. Так же предлагалось в сумбурной формулировке настроить разбиение строк на 2.

Этого оказалось недостаточно. Окончательную ясность для формулировки «настроить разбиение строк» внесли статьи Ошибка на кассе 36h Штрих и Сумма налога больше суммы регистраций по чеку и/или итога (Атол). УТ 10.3 о том, чтобы изменить «способ форматно-логического» контроля в настройках элемента справочника «Торговое оборудование». Для этого нужно перейти в форму списка справочника «Торговое оборудование» через кнопку «…» ячейки строки колонки «Модель» формы обработки «Подключение и настройка торгового оборудования». 

Нажатие на изображении увеличит его
1С 8, как устранить, убрать, исправить ошибку при пробитии, выводе, печати чека ккм, 36h, ошибка FNOperation: некорректные параметры в команде для   данной реализации
Рис. 6. Порядок перехода к настройке «способ форматно-логического контроля» справочника «Торговое оборудование» в конфигурации 1С: Управление торговлей 8, ред. 10.3, Комплексная автоматизация 1.1

Установка значения «Разделять строки» для настройки «способ форматно-логического контроля» в форме элемента справочника «Торговое оборудование» позволило восстановить дальнейшую работу механизма печати чеков ккм для безналичных оплат.

1C 8, способ форматно-логческого контроля, разделять строки, чтобы устранить, убрать, исправить ошибку, 36h, ошибка FNOperation: Некорректные параметры
Рис. 7. Рабочая настройка способа форматно-логического контроля в значении «Разделять строки» для обхода ошибки «36h, Ошибка FNOperation: Некорректные параметры»

К слову, в других конфигурациях, работающих в режиме управляемого приложения, порядок действий примерно такой же. Переходим в раздел «Администрирование» (или «НСИ и Администрирование» в зависимости от типового решения 1С 8) — «Подключаемое оборудование» — откроется вкладка «Подключение и настройка оборудования». Устанавливаем тип оборудования в значение «ККТ с передачей данных». В списке правой кнопкой мыши для строки нужной модели вызываем контекстное меню и в нем выбираем пункт «Изменить» или, выделив строку, нажимаем клавишу «F2» клавиатуры. В открывшемся окне разворачиваем группу формы «Параметры ККТ» и изменяем значение настройки «способ форматно-логического контроля».

Нажатие на изображении увеличит его
1C 8, где находится настройка способ форматно-логического контроля оборудования в УТ 11, КА 2, БП 3
Рис. 8. На примере конфигурации базы 1С: Бухгалтерия 3.0 показан доступ к настройке способ форматно-логического контроля в списке «Подключение и настройка оборудования» для баз, работающих в режиме управляемого интерфейса.

Таким образом, получается, что драйвер торгового оборудования при такой настройке, если не возможно рассчитать точную сумму по допустимому расхождению, то будет выполнено округление цен по строкам. Одна строка будет  округляться «вверх», а другая – «вниз». И при таком подходе будет выполнено требование, чтобы итоговая сумма была одинаковой, даже при некоторых небольших изменениях стоимости отдельных товаров, например, за счет скидок или дробных значений количества товаров.

Оцените, помогло ли Вам предоставленное описание решения ошибки?




© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.

21-10-2021

Журавлев А.С.
(Сайт azhur-c.ru)

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.

Already on GitHub?
Sign in
to your account

Comments

@Commander4ek

при вызове метода печати чека в конечном итоге вылетает 94 ошибка Закрытие чека без позиций

ЛОГИ:

D [INPAS_PAX]: InpasPax::printPurchase start
D [INPAS_PAX]: InpasPax::readIsDocOpened start
D [INPAS_PAX]: InpasPax::readIsDocOpened ECR STATUS 8
D [INPAS_PAX]: InpasPax::cancelDoc start
D [INPAS_PAX]: InpasPax::checkResult checkResult error code: 0
D [INPAS_PAX]: InpasPax::cancelDoc success
D [INPAS_PAX]: InpasPax::printPurchase PURCHASE_TYPE_INPAS_SELL
D [INPAS_PAX]: InpasPax::checkResult checkResult error code: 0
D [INPAS_PAX]: InpasPax::printPurchase OpenCheck() CHECK OPENED
D [INPAS_PAX]: InpasPax::printPurchase Set_TaxType(): 1
D [INPAS_PAX]: InpasPax::printPurchase Is countable: yes ///штучный товар
D [INPAS_PAX]: InpasPax::printPurchase Set_Quantity : 1
D [INPAS_PAX]: InpasPax::printPurchase Set_CheckType : 0
D [INPAS_PAX]: InpasPax::printPurchase Set_Price : 10000
D [INPAS_PAX]: InpasPax::printPurchase Set_Tax1 0
D [INPAS_PAX]: InpasPax::printPurchase Set_MeasureUnit : 0
D [INPAS_PAX]: InpasPax::printPurchase Set_Department : 1
D [INPAS_PAX]: InpasPax::printPurchase Set_Summ1Enabled(false)
D [INPAS_PAX]: InpasPax::printPurchase Set_PaymentTypeSign(4)
D [INPAS_PAX]: InpasPax::printPurchase Set_PaymentItemSign(1)
D [INPAS_PAX]: InpasPax::printPurchase Set_StringForPrinting: Test
D [INPAS_PAX]: InpasPax::printPurchase Set_DivisionalQuantity(false)
D [INPAS_PAX]: InpasPax::checkResult checkResult error code: -9 ///тут вызов FNOperation()
D [INPAS_PAX]: InpasPax::printPurchase PAYMENT_CASH: 100
E [INPAS_PAX]: InpasPax::printPurchase TOTALE PRICE = 100 TOTALE CASH = 100 TOTALE CHANGE = 0
D [INPAS_PAX]: InpasPax::checkResult checkResult error code: 94
D [INPAS_PAX]: InpasPax::setLastErrMsg start
D [INPAS_PAX]: InpasPax::setLastErrMsg lastErrMsg: «Код ошибки 5Eh (94) от ККТ: Неверная операция <0x005E0033: закрытие чека без позиций>»

Можете подсказать что делаю не так?

@surfernsk

@Commander4ek «Код ошибки 5Eh (94) от ККТ: Неверная операция <0x005E0033: закрытие чека без позиций>»
Вроде все в описании ошибки написано.

По ошибке -9 не корректные параметры в команде. Проверьте какие параметры указываете для позиции.

@Commander4ek

я возможно не до конца понимаю как эту позицию добавить, я так понял, что это делает FNOperation(), предварительно заполнив все свойства, который использует данный метод или я ошибаюсь?

@swex

да, всё так. покажите полный лог от открытия чека до закрытия, можно лог драйвера или лог КЯ.

@surfernsk

@Commander4ek все верно, проверьте что именно передаете в параметрах,

@Commander4ek

разобрался, спасибо, проблема была в том что передаются разные значения в Set_CheckType в OpenCheck и ФН методы

Штрих М. Подключение и настройка торгового оборудования. Сканер, ККТ, весы, эквайринг, принтер этикеток.

Не работает сканер, весы, ККТ и эквайринг, оставляйте заявку в комментариях, либо

— Пишите в

WhatsApp +7(987)-268-84-37

1. Ошибки при сканировании

Слетает галочка на сканере Штрих М Кассир — Запустите программу от имени администратора, настройте и нажмите применить, ок.

После сканирования, приходиться нажимать ШК — Не настроен cканер штрих-кода или сбились настройки сканера.

Неверный формат штрих-кода марки!

Штрих М Кассир 5 код маркировки не прошел проверку неверная марка

Штрих М Кассир 5 код маркировки не прошел проверку некорректная марка

Считанный штрихкод не является кодом маркировки. Отсканируйте код маркировки.

Штрих М Кассир 5. Считанный штрихкод не является кодом маркировки. Отсканируйте код маркировки.

Проверка КМ уже запущена (Код 410)

Процедура проверки КМ уже запущена (Код 401) — выкл. и вкл. ККТ и повторите операцию.

Процедура проверки КМ прервана (Код 403) — нужно при регистрации ККТ указать ИСМ адрес и порт. Настроить адрес ОКП и порт.

Штрих М Кассир 5. Процедура проверки КМ прервана (Код 403).

штрих-м кассир 5 не выводит окно сканирования марки

Запрещена работа с маркированным товарами (Код 406)

Работа с маркированными товарами временно заблокирована! — нужно проверить настройки ИСМ и ОКП.

Ошибка кассы Некорректный код маркировки (Код 409)⁷

Для работы функциональности Маркировка требуется активная подписка на обновления — нужно приобрести подписку.

Введено слишком большое значение. — нужно настроить сканер

Код маркировки не прошел проверку! Некорректный КИЗ мехового изделия — нужно сканировать штрих код КИЗ, а не datamatrix.

Не удалось получить код ЕГАИС из акцизной марки

Штрих М Кассир не пробивает новые акцизные марки — Нужно обновить Штрих М Кассир 5. Изменить настройки сканера.

Кассир 5 не запрашивает акцизную марку

Штрих М Кассир 5 сканер сканирует иероглифы

Штрих М Кассир 5 не сканируется DataMatrix — требуется настройка сканера.

Касса пишет товар со штрихкодом не найден что делать — проверьте выгрузку товара, проверьте штрих код. Все ли совпадает.

Штрих М Кассир не находит весовой штрих код — нужно проверить формат штрих кода на весах и настроить в Штрих М Кассир.

2. Ошибки при продаже

Штрих М Кассир при подборе весового товара в чек попадает 1 кг — нужно корректно настроить формат весового штрих кода.

Товар не может иметь дробного количества.

Штрих М Кассир. Не открывается подбор товаров

Как настроить программу штрих м кассир 5 под ффд 1.2

— Пишите в

WhatsApp +7(987)-268-84-37

Не удалось распределить скидку по позициям — Две организации ИП и ООО. Кассы ЕНВД и онлайн ККТ. Решение: Обновите Штрих М Кассир не ниже версии 5.1.5.17

Перестают запрашиваться акцизные марки после обновления Кассира 5

штрих-м кассир 5 ошибка при продаже сигарет

Ошибка весов: Порт недоступен — проверьте соединение весов, перезапустите программу.

3. Ошибка кассы:

Ошибка кассы Устройство заблокировано! — требуется диагностика ККТ.

В ФН переданы неверная дата или время (Код 122). Отменить чек? — исправьте дату и время на ККТ.

(13) Отсутствуют данные, необходимые для корректного учета в ФН. — требуется обновление ПО ККТ.

Ошибка кассы: Работа с маркированными товарами временно заблокирована! — проверьте настройки ОФД.

Ошибка кассы: Ошибка программирования реквизита 2108 (Код 148). Отменить чек?

Штрих М Кассир 5. Ошибка кассы: Ошибка программирования реквизита 2108 (Код 148). Отменить чек?

Ошибка кассы: Некорректное значение поля items[4].markingCode.type(auto) (Код 501)

Штрих М Кассир 5. Ошибка кассы: Некорректное значение поля items[4].markingCode.type(auto)(Код 501)

Ошибка кассы Реквизит не соответствует установкам при регистрации! — при регистрации ккт нужно указать соответствующие параметры. Напр-р. Продажа подакцизн. товара.

Ошибка кассы Ошибок нет! — снимите галочку Отключаться от ККТ в настройках ККТ.

Ошибка кассы Закрытие чека прервано!

Ошибка кассы Socket Error # 10061 Connection refused

Ошибка кассы Ограничение ресурса ФН!

Ошибка кассы Исчерпан ресурс хранения! — Проверьте связь и настройки ОФД. Нужно передать чеки в ОФД.

Ошибка кассы Исчерпан ресурс хранения!

Ошибка кассы Socket Error # 10061 Connection refused.!

Ошибка установки соединения: Порт занят (Код 3)

Ошибка кассы Соединение не установлено (Код 1)!

Ошибка кассы Нет связи (Код 2)!

Ошибка кассы: Неизвестная ошибка. Отменить чек? — нужно проверить ККТ. Ошибка общего характера.

Ошибка кассы СОМ порт недоступен — Требуется диагностика ПК и настройка кассы

Ошибка кассы Команда выполнена без ошибок! — перезагрузите компьютер, если не помогает, то нужна диагностика для выявления причины поломки.

Ошибка кассы №1: Переполнение диапазона отдела! — Решение: Проверьте карточку номенклатуры, либо секция равна 0 или превышает допустимое значение.

Ошибка кассы Смена превысила 24 часа — Нужно закрыть смену

Ошибка кассы Смена превысила 24 часа

Ошибка кассы Команда не поддерживается в данном режиме! Текущий режим: Закрытая смена — сообщение выходит при попытке повторно закрыть смену. Откройте смену, продолжайте работать.

Не настроена работа с ККМ¹

Не пробивается маркированная обувь на фискальном регистраторе штрих м — нужно проверить версию прошивки и лицензию маркировки в ККТ, а также версию кассовой программы.

— Пишите в

WhatsApp +7(987)-268-84-37

Нет связи с ККМ

Ошибка подключения: -3 Порт не доступен (System Error. Code: 2. Не удается найти указанный файл)! — Нет связи ФР. Проверьте питание ККТ и шнур USB. Выкл. и вкл. ККТ.

штрих м кассир то выбивает чек то нет

Штрих-м Кассир 5 не работает с драйверами АТОЛ ДТО10

Не удалось инициализировать фискальный принтер ATOLKKM.epf: Не удалось загрузить драйвер устройства.

Штрих М Кассир 5 и АТОЛ55ф не печатает без НДС

Не удалось получить дату из ККМ Ошибка кассы не верный дискриптор — Пояснение: Проблема встречается с ККТ Дримкас или ПИРИТ. Обработка «Кристалл Сервис: ККМ «Пирит ФР01К»» через которую подключаются ВикиПринт, не поддерживает работу с двумя логическими устройствами.

Вики Принт 57Ф. Ошибки

Не удалось загрузить обработку «CrystalsPirit.epf:1».

Не удалось загрузить обработку CrystalsPirit.epf:1.

Не удалось инициализировать фискальный принтер «CrystalsPirit.epf: Не удалось инициировать драйвер ККМ.»

Не удалось инициализировать фискальный принтер CrystalsPirit.epf: Не удалось инициировать драйвер ККМ.

Не удалось инициализировать фискальный принтер «ATOLKKM10.epf: Не удалось загрузить драйвер устройства.» — установите драйвер ккт АТОЛ.

Ошибка ККМ При вызове метода РегистрацияПродажи: {ВнешняяОбработка. Shtrih_M_DrvFR. Форма. Поле объект не обнаружено (MeasureUnit) — удалите и переустановите драйвер ККТ.

Не удалось инициализировать фискальный принтер «Strih_M_DrvFR.epf: Не удалось инициировать драйвер ККМ.» — установите драйвер ккт Штрих М.

Переполнение буфера коммуникационного порта — настройте правильно порт и скорость подключения.

После перепрошивки кассы атол 20ф и обновления штрих-м кассир 5, в чеке не печатается буква [M] — обновите Штрих М Кассир до последней версии.

4. Ошибки ЕГАИС

Нет связи с УТМ. Продолжить подбор акцизного алкоголя? — перезагрузите ПК и повторите операцию.

[1] Ошибка при отправке файла в УТМ java.lang. Illegal Argument Exception: org.xml.sax. SAXParse Exception; cvc-pattern-valid: Value ‘7734449770’ is not facet-valid with respect to pattern ‘(d)9)’ for type ‘KP’ — проверьте КПП в настройках Штрих М Кассир в разделе ЕГАИС.

[1] Ошибка при отправке файла в УТМ: Проверка не пройдена: продукция не внесена в поштучный учет. — продукция не числится за организацией и не поступала на торговую точку. Рекомендуется поштучно принимать продукцию со сканированием акцизы.

[1] Ошибка при отправке файла в УТМ Filter — Настройки еще не обновлены — перезагрузите ПК и повторите операцию.

[1] Ошибка при отправке файла в УТМ Сертификат SN: недействительный — нужно продлить ключ ЕГАИС в центре сертификации (Напр.р: где приобретали ключ Рутокен).

[1] Ошибка при отправке файла в УТМ java. lang. IllegalStateException: Расхождение времени чека с текущим временем — перезагрузите ПК и повторите операцию.

[1] Ошибка при отправке файла в УТМ java. lang. IllegalStateException: Лицензия на вид деятельности не действует. — нужно проверить ключ ЕГАИС.

Ошибка чтения файлов на УТМ. Ошибка сервера УТМ. Код статуса: 500 — удалите и переустановите УТМ.(Ошибка в ТП7).

[1] Ошибка при отправке файла ТТ. Ошибка при выполнении POST запроса, код ошибки: 500.

[1]Ошибка при отправке файла в ТТ Невалидные марки: — Обновите настройки УТМ. Проверьте акцизу на сайте ЕГАИС.

[1]Ошибка при отправке файла в ТТ 1: Проверка не пройдена: продукция не поступала в магазин по поштучному учету — Обновите настройки УТМ или переустановить УТМ. Проверьте акцизу на сайте ЕГАИС Проверка статуса штрих-кода.

[9] Ошибка при отправке файла ТТ null — Нужно обновить Штрих М Кассир 5.

Ошибка при отправке файла в ТТ

Ошибка при отправке файла в ТТ. Ошибка при вызове метода контекста (Send):Произошла исключительная ситуация

Сторнировать всю алкогольную продукцию с акцизными марками в чеке?

Сторнировать всю алкогольную продукцию с акцизными марками в чеке?

5. Ошибка с базой

Включилась индексация базы программы штрих кассир — Дождитесь окончания процесса

Пожалуйста, ожидайте и не выключайте компьютер до завершения операции! Индексация…

Ошибка режима доступа к файлу базы данных.

Файл базы данных поврежден.

Ошибка СУБД файл базы данных поврежден Штрих-М Кассир 5
Не запускается Штрих-М Кассир 5

— Пишите в

WhatsApp +7(987)-268-84-37

Ошибка потока. Не запускается 1С⁸

Ошибка SDBL: Таблица или поле Fld1148 не содержится в разделе FROM⁸

Недостаточно памяти²

Не выгружается отчет о продажах (отчет отдела).²

Ошибка формата потока

6. Иные ошибки

Штрих М ТП5. Поле объекта не обнаружено (Certificate) — обновите программу КриптоПРО и плагин КриптоПРО.

24, 12: Поле не найдено ВидыОплат. Номер Банковской Оплаты БПО.⁶

Ожидание файлов отчета о продажах.

Указанный путь к файлам обмена: C:Files не существует

— Пишите в

WhatsApp +7(987)-268-84-37

Штрих М ТП7. Изменились данные по остаткам.⁵

Не удалось сменить разрешение экрана — установите значение частоты — 0.

Штрих-м кассир 5 дублирует нажатие клавиш³

При нажатие клавиши BackSpace удаляет два символа³

На данном рабочем месте не настроена работа в режиме Кассир. Возможность запуска этого режима задается в обработке Подключение торгового оборудования⁴

Как вводить ИНН КассираВидео инструкция

Неверный формат хранилища данных file://C/Users/Админ/AppData/Local/1C/1Cv82/…. — пройдите по этому пути и удалите конечный файл. Далее запустите Штрих М Кассир.

Сбились настройки НДС после замены ФН
(после обновления ПО)
— Нужно настроить НДС в программе кассира или в учетной программе.

Подождите идет загрузка отложенных чеков

Ошибка [2] при запуске программы
Штрих-М Кассир 5

Не найден ключ защиты в программе штрих м кассир

Штрих М Кассир базовая розница 5,2 требует ключ защиты, ключа не было.

Не базовая версия — При запуске выводится ошибка «Не базовая версия», но при отключенном сетевом адаптере запускается.
Решение: Проблема в том, что платформа находит ключ в сети. Отредактируйте файл «…1cv81binconf,nethasp.ini», добавив опцию (скорее всего она закомментирована): NH_USE_BROADCAST = Disabled

Ошибка чтения из реестра — Решение: переустановка 1с

6. Fiscalmaster

Ошибка 51, Некорректные параметры в команде. — обновите ПО ККТ, повторите операцию.

Полезные заметки:

Фискальный накопитель

Регистрация онлайн касс

Автор: Нуруллин И.Н. Дата: 2017-10-24

idw

03.08.21 — 19:38

Обновили ККТ до версии ФФД 1.2

Теперь из 1С БП 3 (последняя версия) не печатаются чеки.

ККТ Атол 55ф, драйвер атола 10.9.0

Возникает ошибка тут:

ерсияФН = ?(ОбщегоНазначенияКлиентСервер.СравнитьВерсии(ВерсияФН, «1.0.5.0») > 0, ВерсияФН, «1.0.5.0»);

Версия ФФД ФН пишет одни вопросы так: ???

Кто-нибудь сталкивался с таким? Есть решение?

DmVl76

201 — 13.10.21 — 14:20

Начал тестировать с МГМ, УПП. В старой обработке переделал формирование GoodCodeData, передаю полный код в Base64. Если передавать реальный код, то выдает 2106,РЕЗ-Т ПРОВ. СВЕД. О ТОВ.:3, если сгенерированный в тестовом контуре, то 2106, РЕЗ-Т ПРОВ. СВЕД. О ТОВ.:0, что логично — в тестовом коде критпохвост вида testtesttest…. В обоих случаях печатается [М]

Возникают вопросы:

1. Достаточно ли положительного результата проверки только ФН, без проверки в ЦРПТ? Если да, то шьем боевые кассы и все, по желанию на них позже допиливаем проверку ЦРПТ.

2. Получится ли на МГМ проверить тестовый код в ЧЗ? ФН его разворачивает, может он его все-таки передаст в ЧЗ. Хотя эти коды в ЧЗ я уже второй день не могу ввести в оборот, тестовый контур работает в рандомное время, выдает постоянно 503 ошибку.

Oleg_Bu

202 — 19.10.21 — 11:25

(200) Добрый день!, подскажите пжста, откуда в коде запускается цепочка проверки Кодов марок, сам никак не могу найти это, У меня УПП 1.3.167.1.

Нашел вот это «МенеджерОборудованияКлиент.НачатьЗапросКМ», но не могу понять, откуда это запускается! Поиск не дал результат…

mouse4mice

203 — 19.10.21 — 13:49

Штриховский каменный цветок наконец вышел!

Компонента 1С от Штрих-М для работы в формате ФФД 1.2 сегодня получила статус «1С совместимо».

View post on imgur.com

ttk

204 — 19.10.21 — 14:18

(203) а где можно скачать?

на сайте штриха не нашел

Spyke

205 — 19.10.21 — 14:18

В Рознице 2.3.10.24 (Типовая) при пробитие чека через Штрих, марка не проходит проверку, данные в ОФД передаются с маркой, но марка как была в статусе Introduced, так и остается. При пробитии этой же марки через тест драйвер все проходит корректно на чеке появляется М+ и марка выходит из оборота в ЦРПТ

mouse4mice

206 — 19.10.21 — 14:29

mouse4mice

207 — 19.10.21 — 14:32

(205) Не ту версию компоненты в 1С подцепили.

Для успешного внедрения компоненты 3.4, запускайте 1С исключительно от имени Администратора, архив с компонентой необходимо использовать вот этот «shtrih-m_34_x32_64».

Если после установки компоненты в 1С она выдаёт ошибку, зарегистрируйте библитеку вручную, открыв командную строку от имени Админа.

Тест драйвер ККТ должен быть 32-битный и установлен в папку: C:Program Files(x86)SHTRIH-M

Актуальная версия Тест драйвера: 5.16.877

Spyke

208 — 19.10.21 — 14:39

(207) Спасибо, проверяю

mouse4mice

209 — 19.10.21 — 14:47

(208) Мы тоже начали отладку, но пока на МГМ-ФН-М 1.2

Oleg_Bu

210 — 19.10.21 — 15:31

(202) Отвечу сам, в УПП 1.3.167.1 походу еще нет кода с запуском цепочек. В Рабочем месте кассира Розницы 2.3.10.24 — это можно увидеть.

Spyke

211 — 19.10.21 — 15:54

(205) Пока не взлетело

Starik113

212 — 19.10.21 — 16:02

(210) В УТ10 функционал по проверке марок не реализован, соответственно не работает списание марок из оборота. В УПП скорее всего так же

Spyke

213 — 19.10.21 — 18:47

(205) Все ок, была проблема с настройками параметров в ккт ОФД порт проверки км

cojko

214 — 19.10.21 — 18:47

Конфигурация: Управление торговлей, редакция 11 (11.4.13.280)

При продаже маркированной продукции «Шины» не пробивается чек ККМ.

Касса настроена на ФФД 1.2.

Драйвер АТОЛ 10.9.0.8

В 1С везде написано, что версия ФФД 1.1. Но касса точно на ФФД 1.2.

При пробитие чека с марками выдает «Ошибка программирования реквизита 1162»

У кого-то есть такая проблема? Она решается?

DmVl76

215 — 20.10.21 — 10:15

(209)Как продвигается. Я попробовал с полной проверкой, но не взлетело.

Если брать код, сгенерированный тестовым контуром ЦРПТ, он имеет вид:

010<EAN>21<S/n><GS1>91FFD0<GS1>92testtesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttesttest,

то при запросе КМ вылетает ошибка — код не распознан.

Если поменять 2 последних символа этого кода на «==», то ошибки не возникает, статус проверки =2, ФН не содержит ключ проверки кода проверки этого КМ

Если же указывать реальный код — то локальная проверка проходит нормально

А вот при ПолучитьРезультатыЗапросаКМ() в обоих случаях возвращает

<?xml version=»1.0″?>

<ProcessingKMResult GUID=»» Result=»true» ResultCode=»-1″ HandleCode=»0″/>,

хотя СтатусЗапроса = 0, т.е. результат получен. Такое ощущение, что тестовый контур не работает на проверку кодов (не удивлюсь, 10 дней вводили в оборот 5 КМ, запросиои 3 или 4 раза уточнения, в конце концов ввели вручную), либо в настройкак кассы чего-то не учел, либо их в принципе не проверить с МГМ, т.к. у гененрируемого тестовым контуром КМ фейковый криптохвост, ну а реальных КМ там нет.

Тег 1163 формируется, в тестовом ОФД виден чек с маркой.

Теперь непонятно, что с этим делать.

mouse4mice

216 — 20.10.21 — 10:25

(214) У вас в 1С не та версия компоненты из архива с Тест драйвером подключена, я выше писал какую версию внедрять следует, чтобы взлетело.

Вот человек вчера отписался, что в таком же релизе УТ как у вас у него маркировка успешно бьётся:

https://forum.shtrih-m-partners.ru/index.php?topic=34070.60

mouse4mice

217 — 20.10.21 — 10:28

(214) Только сейчас заметил различия, у него ККТ Штрих-М, а у вас Атоловский аппарат.

Вам следует библиотеку компоненты заново в 1С установить, включая процедуру регистрации .dll через командную строку и обязательный запуск платформы 1С от имени Админа.

mouse4mice

218 — 20.10.21 — 10:35

(215) У нас сейчас на макете ФН-М никак не получается пройти проверку обновления ключей.

При открытии смены пишет ошибку «обновление ключей проверки не выполнено».

Нашли параметры тестового контура сервера ОКП, прописали эти параметры согласно номеру нашего макета ФН, затем прописали в таблицах тестовый сервер ОФД.

Всё равно не работает, ключи не обновляются, следовательно мы не можем начать процесс продажи маркированного товара ни в нашей 1С, ни через Тест драйвер ККТ.

View post on imgur.com

https://docs.google.com/spreadsheets/d/190heU5YQR4WV6EdV0FleXbsZdzhrf1BrQGRlOCdG40o/edit#gid=0

mouse4mice

219 — 20.10.21 — 11:26

Установили kktproxy.exe и прописали значение socks5 в таблицах — ошибка ключей при открытии смены исчезла.

Теперь пишет «обновлено ключей 2, ошибок нет».

https://docs.google.com/document/d/1dLuTrYn6P-aOHpsB-zb3DT2xfF4F2xoWhoOyvr068bY/edit

101101101

220 — 21.10.21 — 12:19

Коллеги, добрый день!

Опишу наши муки с ФФД 1.2 и текущие результаты, может кто идет в этом направлении…

У нас маркировка одежды и обуви, никаких дробных количеств нет.

Коды маркировки мы проверяем сразу после сканирования своим веб-сервисом, соответственно в ККТ мы отправляем заведомо корректные марки.

Зачем нам проверять их второй раз средствами ККТ непонятно. Также непонятно можно ли этого избежать.

Драйвер и компонента 1С штриха обновлены до необходимых версий, все хорошо.

В xml пишем: «<GoodCodeData GS1.M=»КракозябрыBase64КодаМаркировкиСХвостомИСкрытымиСимволамиGS»/>», все остальное как в прошлой версии ФФД.

При этом в чек выходит, все хорошо. В ОФД: Результат проверки сведений о товаре [М], Код товара — марка без хвоста (то есть все хорошо расшифровалось).

Но на бумажном чеке, примерно там где должно быть [М] выводится «КМ?» Техподдержка штриха говорит, что это тэг 2107 в значении 1, типа проверка КМ средствами кассы не проводилась.

С тестовым контуром ЧЗ как я понимаю проблемы, в рабочем контуре выведение марки из оборота проверить пока не можем.

Несколько вопросов:

1) Туда ли мы идем? или плюнуть на все и сделать вторую проверку средствами ККТ, как в стандартной 1С:Рознице?

2) Если то что мы делаем допустимо, как добиться, чтобы на бумажном чеке печаталось [М], а не «КМ?» ?

3) Может в XML дописать, что-нибудь, чтобы не проверяло, а сразу отправляло? Или есть какая-нибудь настройка драйвера Штриха?

4) Кто пробовал схему как у нас, будут ли марки выводиться из оборота или никак без проверки средствами ККТ?

GlRoznica

221 — 21.10.21 — 21:25

(220) Поздравляю! С 1 декабря, те, кто внес недостоверные сведения в ЧЗ, подлежат административной отвесности.

Счастья вам и удачи, в Новом году!

victuan1

222 — 22.10.21 — 05:49

«Зачем нам проверять их второй раз средствами ККТ непонятно. Также непонятно можно ли этого избежать. »

Таков закон, надо исполнять. Избежать проверки средствами ККТ (точнее ФН) невозможно, т.к. обязательное прохождение проверки железно зашито в сам ФН-М на аппаратном уровне, не изменить. Если КМ не прошел проверку в ФН, то чек ККТ пробить не получится — будет ошибка, что КМ не проверен (запрет на уровне ФН, производители прошивок ККТ его обойти не смогут даже если очень сильно попросить).

DmVl76

223 — 22.10.21 — 07:09

(222) А по (215) не подскажете? Это связано именно с тем, что бьем по тестовому контуру?

END

224 — 22.10.21 — 08:36

(223) Тестовый контур у нас всегда возвращал ошибку проверки марки. Попробуй взять боевой ККТ, настрой в 1С проверку при сканировании. Если при добавлении товара в чек проверка ККТ проходит успешно, значит все хорошо на этом этапе.

ТутЯ

225 — 22.10.21 — 09:17

Коллеги, у Штриха вышел новый драйвер 5.16.883. Заявлено, что исправлена ошибка чека коррекции.

Приступаем к тестированию.

DmVl76

226 — 22.10.21 — 10:06

(224) На 1.2 прошита только касса с МГМ. Боевые кассы прошивать нельзя — если что-то пойдет не так, то назад на 1.05 уже не перейти. Придется тогда тестовую кассу регистрировать и покупать туда обычный ФН.

END

227 — 22.10.21 — 11:08

(226) Ну, поработает магазин временно без одной кассы. Мы так и сделали. Магаз на 3 кассы, одну прошили под 1.2 и сняли на стенд. В магазе работает пока 2 кассы. Справляются.

Darksid

228 — 22.10.21 — 11:22

Коллеги!!всем добрейшего чего-то там. Кто-то решил вопрос с кассами атол? 1с УТ обновили уже на последний релиз,никак не можем подменить драйверы на новые,чтобы всё заработало гугл не помогает даже на 4 странице

GlRoznica

229 — 22.10.21 — 11:24

(228) все работает отлично. Вызовите специалиста.

victuan1

230 — 22.10.21 — 15:00

(223) Насчет тестового контура не скажу. Я сразу на боевом всё сделал. И причем для 1С 7.7

Для Атол и для Штрих-м, на их родных драйверах, еще до до того как вышла обновленная БСП для 1С8. )))))

ТутЯ

231 — 22.10.21 — 16:42

Как оказалось у Штрихов есть настройка и пробить можно любую марку (помойку), запрета не будет.

Таблица 17 строка 41 «RUS принимать все КТ» = 1.

ТутЯ

232 — 22.10.21 — 16:47

Чек коррекции на новом драйвере 5.16.883 действительно работает.

При тестировании обычных чеков (не коррекции) замечено, что при большой нагрузке на кассу происходит зависание ККТ минут на 10-30, потом касса оживает и работает как обычно.

Зависание может быть как при локальной проверке так и при проверке статуса товара ОИСМ.

В чем может быть причина?

mouse4mice

233 — 25.10.21 — 10:10

(232) Добрый день. Может подскажете, что мы делаем не так?

Наш программист пытается доработать отраслевую конфигурацию согласно инструкции к компоненте ФФД 1.2, формирует запрос, но в поля Checking и CheckingResult возвращается ответ «false».

Метод:

ЗапросКМ()

Входные данные:

<?xml version=»1.0″ encoding=»UTF-8″?>

<RequestKM GUID=»4a72ab02-b309-431b-ac84-f39ee4fcfdc9″ MarkingCode=»MDEwNDYwMzk4ODAwMTk4MjIxODAySjU0NTc1TDhKSR05MUVFMDYdOTJwdzFmNW1kcTBPbm03RkFWVHdmSmErajJ6RCt4NmMyMWdqMnZPNVR4MWVFPQ==» PlannedStatus=»1″/>

Результат:

<?xml version=»1.0″?>

<RequestKMResult Checking=»false» CheckingResult=»false»/>

mouse4mice

234 — 25.10.21 — 10:13

(232) В какой конфигурации работаете?

Какую модель Штрих-М используете?

На боевой ККТ чеки с маркировкой бьёте или тестовой с МГМ-ФН-М на борту?

Поясните пожалуйста функционал настройки:

Таблица 17 строка 41 «RUS принимать все КТ» = 1.

victuan1

235 — 25.10.21 — 12:00

(234) При такой настройке ККТ будет принимать любые марки, т.е. ККТ не будет контролировать правильность формата марки, и будет писаться тег 1300, если марка не распознана.

mouse4mice

236 — 25.10.21 — 12:42

(235) Понял вас. Спасибо.

Helene1986

237 — 25.10.21 — 15:00

(225)  Товарищи, дайте ссылку на последние драйвера штриха 5.16.883, не нашла. заранее благодарю

D3h, ошибка привязки КМ: код товара не распознан кто-нибудь решил вопрос?

ТутЯ

238 — 25.10.21 — 15:28

(225) Должны быть разделители в коде марки.

Если и с разделителями ошибка, то настройкой кассы Таблица 17 строка 41 «RUS принимать все КТ» = 1.

http://doc.shtrih-m.ru/

ТутЯ

239 — 25.10.21 — 15:28

ТутЯ

240 — 25.10.21 — 15:31

(233) аналогичная проблема.

//В какой конфигурации работаете?

Своя, на основе БП.

//Какую модель Штрих-М используете?

Штрих-М-01Ф

//На боевой ККТ чеки с маркировкой бьёте или тестовой с МГМ-ФН-М на борту?

МГМ

И от себя вопрос, подскажите, пожалуйста как работать с МГМ и тестовым ОФД? Как проверить информацию в ОФД?

Helene1986

241 — 25.10.21 — 15:39

(238) Таблица 17 строка 41 «RUS принимать все КТ» = 1 Это сделала уже, стал на кассе пробивать, но ОФд уходит код товара 04811644000721(21)yxhwjgyed

отладкой прошлась он из 1с передал кассе 04811644000721(21)yxhwjgyed , а в офд почему такую кривоту шлет ? 011) вместо (01)

Helene1986

242 — 25.10.21 — 15:41

(238)  Таблица 17 строка 41 «RUS принимать все КТ» = 1 Это сделала уже, стал на кассе пробивать, но ОФд уходит код товара 011)04811644000721(21)yxhwjgyed

отладкой прошлась он из 1с передал кассе (01)04811644000721(21)yxhwjgyed , а в офд почему такую кривоту шлет ?    011) вместо (01)

mouse4mice

243 — 25.10.21 — 16:36

(240) [quote]подскажите, пожалуйста как работать с МГМ и тестовым ОФД? Как проверить информацию в ОФД?[/quote]

Для этого необходимо зарегистрировать вашу тестовую ККТ с МГМ на борту в спец. тестовом личном кабинете ОФД и затем закрепить за этой ККТ демо-договор ОФД к примеру на 3 месяца.

ОФД «СБИС» (он же Тензор) бесплатно предоставляют подобный тестовый ЛК. Уточняйте у своего ОФД наличие подобного функционала.

Вот инструкция от «СБИС»:

https://disk.yandex.ru/i/kD1LP-1y_llLwg

mouse4mice

244 — 25.10.21 — 16:55

(240) {quote}аналогичная проблема.{/quote}

Мы отправили офиц. запрос в отдел разработки «Штрих-М» мск. Ждём комментариев.

DmVl76

245 — 26.10.21 — 06:22

(233) У вас одежда судя по коду? В тесте драйвера при проверке выдает:

Статус локальной проверки    : 0

  «код маркировки не может быть проверен фискальным накопителем с использованием ключа проверки КП»

Результат локальной проверки : 1, КМ данного типа не подлежит проверке в ФН

Распознанный тип КМ          : 3, КМ со значением кода проверки длиной 44 символа, не подлежащим проверке в ФН

Насколько помню, только обувь и еще какая-то товарная группа может проверяться локально ФН.

DmVl76

246 — 26.10.21 — 06:25

Подставил код обуви:

Статус локальной проверки    : 3

  «код маркировки проверен фискальным накопителем с использованием ключа проверки КП»

  «результат проверки КП КМ фискальным накопителем с использованием ключа проверки КП положительный»

Результат локальной проверки : 0, КМ проверен в ФН

Распознанный тип КМ          : 2, КМ со значением кода проверки длиной 88 символов, подлежащим проверке в ФН

victuan1

247 — 26.10.21 — 07:07

(241) Так и передаете код со скобками (21)?

Это неправильно. Нужно передавать без скобок, но с символом #29 в нужных местах.

mouse4mice

248 — 26.10.21 — 09:13

(245) У нас не одежда, у нас лекарственные препараты (медикаменты).

Подскажите, вы наш код маркировки у себя в Тест драйвере проверили?

И Тест драйвер выдал вам: «КМ данного типа не подлежит проверке в ФН»?

Озвучьте пожалуйста пошагово, как вы проводите тест кода маркировки в Штриховском Тест драйвере ККТ?

victuan1

249 — 26.10.21 — 09:26

(248) Локальная проверка (она же оффлайн-проверка) КМ в ФН предусмотрена только для обувных товаров (только для них существуют ключи ОКП, которые загружаются в ФН с сервера при каждом открытии кассовой смены).

Онлайн-проверка проводится на сервере ИСМ — для всех товаров (если ККТ имеет доступ в интернет в момент проверки).

Оффлайн-проверка (локальная) — производится только для обувных товаров (независимо от того, имеет ли ККТ в этот момент доступ в интернет).

mouse4mice

250 — 26.10.21 — 09:43

(244) Пришёл ответ от разработчиков Штрих-М мск:

«Что ККМ на команду проверки КМ возвращает, то я и выдаю. В данном случае: на проверку следующей КМ у меня возвращается следующее:

010460398800198221802J54575L8JI<0x1D>91EE06<0x1D>92pw1f5mdq0Onm7FAVTwfJa+j2zD+x6c21gj2vO5Tx1eE=

Статус локальной проверки: 0

  «код маркировки не может быть проверен фискальным накопителем с использованием ключа проверки КП»

Результат локальной проверки: 1, КМ данного типа не подлежит проверке в ФН

Распознанный тип КМ: 3, КМ со значением кода проверки длиной 44 символа, не подлежащим проверке в ФН

Код ответа ФН на команду онлайн-проверки: 0, Ошибок нет

Результат проверки КМ: 5

  «код маркировки проверен»

  «результат проверки КП КМ отрицательный или код маркировки не был проверен»

  «проверка статуса ОИСМ выполнена»

  «от ОИСМ получены сведения, что планируемый статус товара некорректен или сведения о статусе товара от ОИСМ не получены»

  «результат проверки КП КМ и статуса товара сформирован ККТ, работающей в режиме передачи данных»

Реквизиты ответа сервера: 42 08 04 00 59 15 77 61 39 08 01 00 02 D5 07 01 00 05

Поскольку локальная проверка не проходит, Соответственно, возвращаю:

Checking = False (Код маркировки не может быть проверен фискальным

накопителем с использованием ключа проверки КП.)

CheckingResult = False (Результат проверки КП КМ фискальным накопителем с использованием ключа проверки КП отрицательный.)»

mouse4mice

251 — 26.10.21 — 09:56

(249) Теперь мы пытаемся понять, требуется ли нам сейчас в срочном порядке приобретать боевой ФН-М и подключать ККТ к боевому ОФД, чтобы проследить весь путь КИЗа от нашей ККТ в ОФД, а затем и в «Честный Знак». Можете что-либо подсказать?

На данный момент в нашей ККТ прописан тестовый сервер ОИСМ, но ещё не присвоен тестовый ОФД и касса не зарегана в тестовом личном кабинете «СБИС».

Может поэтому разработчики отписались нам, что:

«результат проверки КП КМ отрицательный или код маркировки не был проверен»

«от ОИСМ получены сведения, что планируемый статус товара некорректен или сведения о статусе товара от ОИСМ не получены»

DmVl76

252 — 26.10.21 — 10:17

(250) А вы просто проверяете код маркировки из тест-драйвера на МГМ?

У меня вторая часть не выводится:

Код ответа ФН на команду онлайн-проверки: 0, Ошибок нет

Результат проверки КМ: 5

  «код маркировки проверен»

  «результат проверки КП КМ отрицательный или код маркировки не был проверен»

  «проверка статуса ОИСМ выполнена»

  «от ОИСМ получены сведения, что планируемый статус товара некорректен или сведения о статусе товара от ОИСМ не получены»

  «результат проверки КП КМ и статуса товара сформирован ККТ, работающей в режиме передачи данных»

Реквизиты ответа сервера: 42 08 04 00 59 15 77 61 39 08 01 00 02 D5 07 01 00 05

И еще Количество уведомлений в очереди : 31

Что-то с настройками кассы?

mouse4mice

253 — 26.10.21 — 10:22

(252) Нам не удаётся проверить код маркировки в Тест драйвере ККТ на МГМ. Как выяснилось, нам и не требуется это делать. У нас лекарства, не обувь.

mouse4mice

254 — 26.10.21 — 10:25

(252) [quote]Что-то с настройками кассы?[/quote]

Думаю, у вас чеки в ОФД не уходят.

Если у вас МГМ, то касса должна быть зарегана в отдельном тестовом личном кабинете вашего ОФД и к ней должен быть привязан боевой договор ОФД.

Чеки в ФНС не уйдут, но зато вы сможете проанализировать их корректность в тестовом ЛК ОФД.

DmVl76

255 — 26.10.21 — 10:25

(253) У меня не проверялся именно через ЦРПТ. Увидел как у вас выдает сообщение о проверке, стал проверять кассу. В результате оказалось, что просто закрыт порт по работе с КМ (7788)

mouse4mice

256 — 26.10.21 — 10:27

(255) Да, все возможные порты мы открыли, включая порты сервера ОИМС.

И на уровне брэндмауэра Windows, и на уровне маршрутизатора.

DmVl76

257 — 26.10.21 — 10:27

(254) В ОФД как раз уходили, в ЦРПТ — нет, таблица 19, пункт 6 — порт был закрыт

DmVl76

258 — 26.10.21 — 11:52

(215) как раз из-за (257) Поставил в таблице принимать все КМ, пробил тестовый КМ, в чеке [М+] и КМ выбыл в тестовом контуре

Darksid

259 — 26.10.21 — 18:09

по поводу касс атол-чтобы всё работало в ут11 нужно платформу взять 8.3.18.1616(можно и ниже,но лучше её,чтобы точно заработало). в самой кассе прописать в параметрах адрес проверки ОКП. мы брали prod01.okp-fn.ru порт 26101. всё ожило,страдания прошли)

вдруг кому-то пригодится…

Alyona

260 — 27.10.21 — 20:39

Добрый день! Как в итоге решили проблему?

такая же ошибка «D3h, Код товара не распознан».

  

ТутЯ

261 — 28.10.21 — 08:20

(260) ответ в (110)(231)(235)

mouse4mice

262 — 28.10.21 — 10:09

(261) Доброе утро. Я выяснил, что этот функционал проверки кода маркировки на уровне ККТ в боевых условиях отключать нельзя.

Поскольку производитель к примеру лекарственного препарата в виду сбоя оборудования может нанести некорректный/битый код на упаковку.

При подобном развитии событий считанный вам КМ мгновенно улетит в ОФД, а затем и в Честный Знак.

А так как с 1 Декабря 2021 в КоАП вводятся новые штрафные санкции за некорректно-представленные сведения в систему маркировки, то продавца и производителя рублём накажет «Роспотребнадзор».

Причём не просто предписание по почте выпишет (как это ФНС практикует), а начнёт судебное разбирательство с последующим судебным постановлением.

Это всё время, нервные клетки и деньги. И если денежные средства можно заработать, временной ресурс оценить невозможно, время бесценно в принципе.

mouse4mice

263 — 28.10.21 — 10:19

Чтобы вы понимали, у нас сейчас на демо-стенде лежит в качестве образца сфотографированный и распечатанный DataMatrix (рядом с которым указаны GTIN и серийный номер).

Этот DataMatrix в своё время был реально нанесён на упаковку с лекарством и выпущен в оборот.

Когда мы отключаем функцию проверки КМ через настройки таблиц в Тест драйвере Штриха, считанный битый DataMatrix успешно проходит сканирование.

Когда мы включаем обратно проверку кодов на уровне ККТ, при сканировании битого DataMatrix верхнее ПО сразу возвращает ошибку, а на ККТ звучит оповещающий сигнал-гудок.

Вывод: отключать данный функционал целесообразно только в тестовых условиях, не в боевых.

Alyona

264 — 28.10.21 — 11:43

(261) Спасибо! настройки помогли))) М вышла на печать.

Но я так понимаю в честном знаке код так же не распознается и статус не изменится… видимо что то пропускаем

ТутЯ

265 — 28.10.21 — 12:50

(249)

//Локальная проверка (она же оффлайн-проверка) КМ в ФН предусмотрена только для обувных товаров (только для них существуют ключи ОКП, которые загружаются в ФН с сервера при каждом открытии кассовой смены).

Откуда эта информация?

Техподдержка Штрих М утверждает, что духи, обувь, одежда, лекарства и шины должны проходить локальную проверку.

Если криптохвост в 44 символа — не проводится проверка, если 88 — проводится проверка.

У нас шины, хвост 88, но проверку не проходим, ответ всегда false.

<?xml version=»1.0″?>

<RequestKMResult Checking=»false» CheckingResult=»false»/>

ТутЯ

266 — 28.10.21 — 12:55

Для Штрихов появился новый драйвер 884 http://doc.shtrih-m.ru/

ТутЯ

267 — 28.10.21 — 14:39

(265) Закружилась совсем, у шин 44.

ТутЯ

268 — 28.10.21 — 17:39

У меня какое-то несчастье с чеком коррекции.

Радость была недолгой, часть чеков фискализирована и далее как ранее, аварийное завершение 1С…

Коллеги, кто работает на Штрих М через Ethernet и успешно пробивает чеки коррекции? Научите, пожалуйста, так работать.

DmVl76

269 — 29.10.21 — 04:09

(265) духи, обувь, одежда, лекарства и шины должны проходить локальную проверку

У одежды 44 символа хвост

victuan1

270 — 29.10.21 — 05:50

(269) ну-ну..

DmVl76

271 — 29.10.21 — 08:56

(270) А что не так? У нас есть одежда и текстиль — как от поставщиков, так и генерируемые нами общая длина 85, криптохвост 44

victuan1

272 — 29.10.21 — 09:33

(271) Ключи ФН на текущий момент работают только для обувных товаров. Мне так сказала техподдержка Атол.

DmVl76

273 — 29.10.21 — 10:09

(272) Я и написал, что у одежды 44, значит не проходит проверку

mouse4mice

274 — 01.11.21 — 10:44

abuca

275 — 01.11.21 — 12:46

(274) Сегодня проверяли продажу обуви и текстиля. Штрих Онлайн. Успешно. М+ Марка выбыла в ЧЗ. Помог новый драйвер (266). До обновления драйвера было [М], но марки, при этом, выбывали в ЧЗ. Подозреваю, что драйвер Штрих неверно трактовал символы GS, передаваемые из 1С.

amir62

276 — 04.11.21 — 11:18

Писали в налоговую есть письмо от них что до 1 февраля 2022 года можно работать на старом ФФД если товаро-учётное ПО ещё не готово работать с ФФД 1.2, не знаю что все побежали перефискаливать кассы, не спеша тестируем релиз на тестовой кассе с МГМ ФН-М. Штрих только недавно прошёл сертификацию у налоговой по ФФД 1.2, не рекомендую в старые конфигурации вручную добавлять обработчик Атол на драйвере 10.9.x.x не оптимизировав ваш код конфигурации под этот обработчик, так как кассы с ФФД 1.2 работают через тег 1163, а кассы со старым ФФД работают через тег 1162. Оба обработчика что на штрих м, что на атол довольно таки сыроваты на этом этапе и многие ньюансы не учитаны, поэтому не спеша оптимизируем.)

GlRoznica

277 — 04.11.21 — 11:21

(276) Боже. Набор слов. Уже всех клиентов перевел на ФФД 1.2.

Остались только кто на Эвоторах сидит, и тех закроем на следующей неделе.

Хватит паники.

Garykom

278 — 04.11.21 — 11:23

(276) По закону есть 1 год на приведение в актуальное состояние онлайн ККТ после опубликования закона

bystrovvv

279 — 04.11.21 — 11:58

Добрый день!

Так и не удалось устранить ошибку при сканировании марки ЧЗ:

«Произошла ошибка проверки средствами ККТ по причине:

При выполнении операции произошла ошибка: D3h, Код товара не распознан»

1С:Предприятие 8.3 (8.3.19.1351)

Управление торговлей, редакция 11 (11.4.13.281)

DrvFR_5.16_884_x32

Штрих-М 01Ф

Товары без маркировки пробиваются отлично, ЧЗ не пробивается.

victuan1

280 — 06.11.21 — 15:04

(279) В чек неверно передан код маркировки товара.

Проверьте настройку сканера — код маркировки товара должен содержать спецсимволы с кодом 29 перед идентификаторами применения (кроме 01 и 21). Обычно помогает перевод сканера в режим эмуляции СОМ-порта, также напишите модель сканера.

Можете код маркировки скопировать в текстовый документ и прислать мне этот документ для проверки (непосредственно в тело письма или в сообщение код копировать не следует, т.к. почтовый клиент или движок форума может удалить из кода спецсимволы).

Тихий омут

281 — 08.11.21 — 10:02

Опубликован релиз УТ 10.3.72.1

«Поддержана возможность проверки кодов маркировки средствами ККТ»

Будем посмотреть.

Тихий омут

282 — 08.11.21 — 10:30

(281)+ В демо базе релиза 72.1 есть новая обработка обслуживания для ККТ Атол. В обработке поддержаны методы ЗапросКМ, ПодтвердитьКМ, ПолучитьРезультатыЗапросаКМ.

mouse4mice

283 — 08.11.21 — 12:34

(276) Письмо с подобной формулировкой от ФНС в студию!

На официальном уровне таких заявлений опубликовано вроде не было.

GlRoznica

284 — 08.11.21 — 12:35

GlRoznica

285 — 08.11.21 — 12:38

+(284) только как всегда, наш народ все перевертел, как захотел. Там ни слова нет про ПО.

1.если кассы еще нет в реестре под ФФД 1.2, но она числится в списке планируемых, перерегистрировать с новым ФН-М можно будет кассу на старых ФФД, но не позднее 1 февраля 2022 года

Там указано, если кассы еще числятся в списке планируемых, а наш народец, переписал для себя то, что хочет.

mouse4mice

286 — 08.11.21 — 12:39

(278) Ссылку на формулировку закона предоставьте пожалуйста!

Согласно текущему регламенту ФНС и базе знаний «Штрих-М», все ККТ из аккредитованного ФНС перечня, поддерживающие ФФД 1.2, обязаны работать в рамках нового формата либо после модернизации, либо сразу из коробки.

GlRoznica

287 — 08.11.21 — 12:41

(286) какая формулировка? Им же Вася из налоговой письмо написал.

mouse4mice

288 — 08.11.21 — 14:50

(285) Согласен, в июньских/июльских письмах от ФНС речь шла исключительно о кассах, для которых планируется поддержка функционала ФФД 1.2

Про отсрочку в связи с недоработанным ПО никто не заикался.

snails-lord

289 — 10.11.21 — 09:58

(281) УТ 10.3 (10.3.72.1) и Атол 55Ф. Обработка и драйвер последние. При пробитии чека ошибка:

{ОбщийМодуль.ПодключаемоеОборудованиеУниверсальныйДрайверКлиент.Модуль(1596)}: Поле объекта не обнаружено (ИдентификаторУстройства)

ТекущийСтатус = МенеджерОборудованияКлиент.ПроверкаКодаМаркировки(ПараметрыПодключения.ИдентификаторУстройства);

Удалось у кого-то запустить ФФД 1.2 на УТ 10.3?

VKOSH

290 — 11.11.21 — 11:09

(287) (286) (285) (283) Вот вам официальное письмо, читайте: http://www.consultant.ru/document/cons_doc_LAW_307831/

Если перевести с бюрократического языка на русский, то до 1 февраля 2022 года отложили обязательный переход на ФФД 1.2.

DmVl76

291 — 11.11.21 — 14:22

Запустили боевую кассу. С одним КМ возникла проблема

При локальной проверке выдает

Статус локальной проверки    : 0

  «код маркировки не может быть проверен фискальным накопителем с использованием ключа проверки КП»

Результат локальной проверки : 2, ФН не содержит ключ проверки кода проверки этого КМ

Распознанный тип КМ          : 2, КМ со значением кода проверки длиной 88 символов, подлежащим проверке в ФН,

проверку ЦРПТ проходит нормально — возвращает 15.

При этом проверку этого же КМ на тестовой кассе проходит — возвращает 3.

Что это может быть? И можно ли бить чек со статусом 0, при условии, что проверка в ЦРПТ пройдена?

DmVl76

292 — 11.11.21 — 14:39

+(291) Все проверяемые КМ начали выдавать тоже самое (проверил около 10 КМ локально — отрицательно(0), ЦРПТ — положительно (15)), на тестовой кассе локальная проверка положительная. Кассир говорит, что это началось около часа назад, некоторые коды пробивались со ворого — третьего раза, потом перестали вообще.

mouse4mice

293 — 11.11.21 — 14:49

(290) Благодарю и жму руку. Оповестил руководство. Выдохнули все вместе.

VKOSH

294 — 11.11.21 — 19:01

(279) Создайте расширение конфигурации и в «Документы», «Чек ККМ», «Формы», «ФормаДокументаРМК» вставьте следующий код:

&НаКлиенте

&Вместо(«ПоискПоШтрихкодуЗавершение»)

Процедура сг_FNC_ПоискПоШтрихкодуЗавершение(ИсходныеДанные, ДополнительныеПараметры)

    

    Если ИсходныеДанные = Неопределено Тогда

        Возврат;

    КонецЕсли;

    
    ПараметрыСканирования = ШтрихкодированиеИСКлиент.ПараметрыСканирования(ЭтотОбъект);

    

    ШтрихкодКоличество = ОбщегоНазначенияКлиент.СкопироватьРекурсивно(ИсходныеДанные, Ложь);

    ШтрихкодированиеИСКлиентСервер.ЗакодироватьШтрихкодДанныхBase64(ШтрихкодКоличество);

    
    РезультатОбработки = ОбработатьВводШтрихкода(ШтрихкодКоличество, Неопределено, ПараметрыСканирования);

    

    //VKOSH + Вставляем разделитель FNC в код марткировки для ШТРИХ-М

    Если РезультатОбработки.ТипШтрихкода = ПредопределенноеЗначение(«Перечисление.ТипыШтрихкодов.GS1_DataMatrix»)

       И СтрНайти(ПараметрыСканирования.ККТФФД12ИСМП, «Штрих-М: ККТ с передачей данных в ОФД 3.4 (ФФД 1.2)») > 0 Тогда

        

        ИсходныеДанные.Штрихкод = Сред(ИсходныеДанные.Штрихкод, 1, 31) + Символ(29) +

            Сред(ИсходныеДанные.Штрихкод, 32, 6) + Символ(29) +

            Сред(ИсходныеДанные.Штрихкод, 38);

            

        ШтрихкодКоличество = ОбщегоНазначенияКлиент.СкопироватьРекурсивно(ИсходныеДанные, Ложь);

        ШтрихкодированиеИСКлиентСервер.ЗакодироватьШтрихкодДанныхBase64(ШтрихкодКоличество);

        
        РезультатОбработки = ОбработатьВводШтрихкода(ШтрихкодКоличество, Неопределено, ПараметрыСканирования);

    

    ПараметрыЗавершенияВводаШтрихкода = ПараметрыЗавершенияВводаШтрихкода(ИсходныеДанные, РезультатОбработки, ПараметрыСканирования);

    ШтрихкодированиеИСКлиент.ЗавершитьОбработкуШтрихкода(ПараметрыЗавершенияВводаШтрихкода);

        

    АктивироватьСтрокуСПозицией(РезультатОбработки);

    ПересчитатьДокументНаКлиенте();

        
КонецПроцедуры

И после этого всё заработает, как надо. Там просто не хватает разделителей, которые у 1с называются «Символ(29)».

victuan1

295 — 12.11.21 — 09:17

(294) Ваш код не универсален — не для всех товарных групп подойдет.

VKOSH

296 — 12.11.21 — 11:54

(295) А в жизни вообще нет ничего универсального. Это тот «костыль», который мне пришлось вставлять в конфигурацию «УТ 11», чтобы в моем случае, кассы Штрих-М заработали, как надо. Я лишь дал вам пример решения этой проблемы, а вы можете на его основе переписать код под ваши условия. В моем случае, данный код полностью отрабатывает и решает проблему.

Если вы используете тип «GS1_DataMatrix», который имеет стандартную для него структуру, а именно: «(«Префикс 01» + «14 символов GTIN») + («Префикс 21» + «13 символов серийник») + (здесь вставляем «Символ 29») + («Префикс 91» + «4 символа проверочный ключ») + (здесь вставляем «Символ 29») + («Префикс 92″ + Криптохвост до 88 символов»)», то данный код вам подойдет. По сути он просто вставляет «Символ 29» в двух местах: перед префиксом «91» и перед префиксом «92».

victuan1

297 — 12.11.21 — 16:13

(296) Приведенная вами структура отнюдь не является стандартной для всех товарных групп. Пишу здесь как предостережение для тех, кто решит бездумно копировать ваш код.

VKOSH

298 — 12.11.21 — 17:51

(297) У нас «Парфюмерия», для неё данная структура соответствует, для «Обуви» и «Одежды», насколько мне известно, тоже соответствует. С другими видами товара не сталкивался, возможно, что там есть какие-то отличия. Если у кого-то возникнут какие-то сложности, то нужен будет пример вашего кода маркировки, и я подправлю мой программный код под ваш вид товара.

CepeLLlka

299 — 12.11.21 — 19:08

Спрошу в этой теме..

Друзья, после перехода на ффд 1.2 начались проблемы с ФР АТОЛ 11Ф

Время от времени, бывает раз в день, а бывает и 5 раз за день, ФР выдаёт чек — «Отчет автотестирования», такое ощущение что он тупо ребутится как-то что-ли..

Бывает такое происходит в момент пробития чека, особенно при оплате по банку, с подключенным интегрированным терминалом. В момент пробития чека, теряется связь с ФР..

Никто таких проблем не наблюдает? Есть какие-то мысли на этот счёт?

Конфа 1С Розница, релиз 2.3.9.42, Драйвер ККТ 10.9.0.9

Накачу обновление в понедельник конечно, но боюсь дело не в этом..

GlRoznica

300 — 12.11.21 — 19:10

(299) а какая прошивка?

0

Ошибок нет

–1

Нет связи

  • Интерфейсный кабель не подключен или неисправен.
  • Скорость порта ПК не соответствует установленной скорости в ККМ
  • Проверить кабель.
  • Обратиться в сервисную службу

–3

Порт недоступен

  • Порт занят другим приложением.
  • Данный порт отсутсвует в ПК

–4

Ключ защиты не найден

Драйвер не смог найти ключ защиты

Установить ключ защиты

–5

Работа драйвера прервана пользователем

–6

Недопустимое значение

При попытке установить значение в свойство (подробнее см. «Приложение 4. Ошибки параметров»)

Свойство не может принимать устанавливаемое значение

–7

Невозможно добавить устройство

Количесво ЛУ превышает допустимое значение

Удалить лишние ЛУ

–8

Невозможно удалить устройство

При попытке удалить последнее ЛУ

–9

Логическое устройство не найдено

При попытке выбрать ЛУ с несуществующим номером

Выбрать ЛУ с существующим номером

–10

Неверная последовательность команд

При выполнении методов требующих определенной последовательности нарушена последовательность

Проверить последовательность вызываемых методов

–11

Устройство не включено

Установить DeviceEnabled равным TRUE

–12

Не поддерживается в данной версии оборудования

Вызываемый метод нельзя выполнить на данной ККМ

–13

Драйвер не смог загрузить необходимые модули

Зарегистрировать используемые модули

–14

Порт занят приложением: (<имя ПК><описание приложения–клиента><описание драйвера>)

Если драйвер определил, что порт занят одним из драйверов семейства «АТОЛ: Драйверы торгового оборудования», то возвращается данная ошибка (<имя ПК> – имя ПК, на котором запущено клиентское приложение, <описание драйвера> – описание драйвера, занявшего порт)

  • Воспользоваться поиском оборудования для определения порта, к которому подключена ККМ.
  • Установить другой порт

–15

Некорректные данные от устройства

Ошибка обмена с ККМ на нижнем уровне

Повторить команду

–16

Не поддерживается в данном режиме устройства

Вызываемый метод не может быть выполнен в данном режиме

Перейти в нужный режим

–17

Нет больше элементов отчета

При снятии отчетов закончились элементы отчета

–19

Нет доступа к ключу реестра

Изменить права доступа к соответствующему ключу реестра

–199

Описание ошибки недоступно

При возникновении ошибки, не имеющей описания, или ошибки оборудования

–3800

В ККМ нет денег для выплаты

Недостаточно денег при выплате

Выполнить внесение

–3801

Чек закрыт – операция невозможна

При выполнении операции требующей предварительного открытия чека

Открыть чек

–3802

Чек открыт – операция невозможна

При выполнении операции требующей предварительного закрытия чека

Закрыть чек

–3803

Неверная цена (сумма)

Сумма регистрации превышает максимально возможное значение

Проверить значение свойства Price и Quantity

–3804

Неверное количество

В ККМ передано неверное количество

–3805

Нулевая цена

В ККМ передано неверная цена

–3807

Нет бумаги

В ККМ закончилась бумага

Вставить бумагу

–3808

Процесс ввода пароля

В ККМ находится в режиме ввода пароля

  • Ввести пароль.
  • Выйти из режима ввода пароля

–3809

Недопустимый ИНН

Введенный ИНН неверен

Ввести правильный ИНН

–3810

Накопление меньше суммы возврата или аннулирования

Сумма возврата или аннулирования больше накопленной суммы

  • Произвести возврат или аннулирование без контроля наличности.
  • Произвести внесение

–3811

Производится печать

Подождать пока печать не закончится

–3813

Неверная величина скидки/надбавки

Установить правильное значение скидки

–3814

Операция после скидки/надбавки невозможна

При попытке вызова метода после начисленной скидки/надбавки на чек

Отменить скидку/надбавку

–3815

Неверная секция

В ККМ передано неверный номер секции

Указать правильный номер секции

–3816

Неверный вид оплаты

В ККМ передан неверный тип оплаты

Установить правильный номер оплаты

–3817

Переполнение при умножении

При перемножении количества на цену происходит переполнение

–3818

Операция запрещена в таблице настроек

Разрешить операцию в таблице настроек

–3819

Переполнение итога чека

–3820

Переполнение контрольной ленты

Снять контрольную ленту

–3821

Открыт чек возврата – операция невозможна

При выполнении некоторых недопустимых методов при открытом чеке возврата

Закрыть чек

–3822

Смена превысила 24 часа

Открытая смена превысила 24 часа

Закрыть смену

–3823

Скидка запрещена в таблице

Разрешить скидку в таблице настроек

–3824

Аннулирование и возврат в одном чеке

При попытке произвести аннулирование в чеке возврата или наоборот

Отменить чек

–3825

Неверный пароль

Введен неверный пароль

Ввести верный пароль

–3826

Не переполнен буфер контрольной ленты

При попытке снятия контрольной ленты до момента ее переполнения

–3827

Идет печать контрольной ленты

Подождать, пока печать КЛ не закончится

–3828

Смена закрыта — операция невозможна

При попытке снятия повторного отчета с гашением

–3829

Идет печать отчета

Подождать, пока не закончится снятие отчета

–3830

Неверная дата

При установке неверной даты

Установить верную дату

–3831

Неверное время

При установке неверного времени

Установить верное время

–3832

Сумма чека меньше суммы сторно

При регистрации сторно на сумму, больше суммы чека

–3833

Контрольная лента обработана без ошибок

–3834

Недопустимый РНМ

Введенный РНМ неверен

Ввести правильный РНМ

–3835

Вносимая сумма меньше суммы чека

Сумма оплаты меньше суммы чека

Внести сумму больше или равную сумме чека

–3836

Начисление сдачи невозможно

На данный тип оплаты начисление сдачи невозможно

–3837

Смена открыта, операция невозможна

При вызове метода, требующего закрытой смены

Закрыть смену

–3838

Отчет закончен

–3839

Неверный номер таблицы

Указать верный номер таблицы

–3840

Неверный номер ряда

Указать верный номер ряда

–3841

Неверный номер поля

Указать верный номер поля

–3842

ККМ заблокирована. Необходимо вызвать фискальный отчет или выполнить вход в режим доступа к ФП с указанием правильного пароля администратора

Выполнить вход в режим доступа к ФП с указанием правильного пароля администратора

–3843

Заводской номер уже задан

При повторном вводе заводского номера

–3844

Исчерпан лимит перерегистраций

Ошибка при попытке перерегистрации ККМ после четырех перерегистраций

–3845

Ошибка фискальной памяти

Обратитесь в сервисную службу

–3846

Запись фискальной памяти повреждена

Обратитесь в сервисную службу

–3847

Неверная смена

Неверный номер смены в диапазоне при снятии фискальных отчетов

Произвести запрос диапазонов и указать верные значения

–3848

Неверный тип отчета

Указать верный номер типа отчета

–3850

Недопустимый заводской номер ККМ

Обратитесь в сервисную службу

–3851

ККМ не фискализирована

Обратитесь в сервисную службу

–3852

Не задан заводской номер

Обратитесь в сервисную службу

–3853

Нет отчетов

–3854

Режим не активизирован

–3855

Нет указанного чека в КЛ

Указать верный номер чека

–3857

Некорректный код или номер кода защиты

При вводе кода защиты

Обратитесь в сервисную службу

–3859

Код защиты не введен

Обратитесь в сервисную службу

–3860

Режим не поддерживается

Попытка перейти в неподдерживаемый данной ККМ режим

–3862

Повторная скидка/надбавка на операцию невозможна

Попытка начислить повторно скидку/надбавку

–3863

Скидка/надбавка на предыдущую операцию невозможна

При начислении скидки/надбавки на сторно

–3864

Открыт чек аннулирования – операция невозможна

Вызываемая операция не может быть выполнена при открытом чеке аннулирования

  • Закрыть чек.
  • Отменить чек

–3865

Открыт чек продажи – операция невозможна

Вызываемая операция не может быть выполнена при открытом чеке продажи

  • Закрыть чек.
  • Отменить чек

–3866

Требуется выполнение общего гашения

Выполнить общее гашение

–3867

Нет устройства, обрабатывающего данную команду

–3868

Нет связи с внешним устройством

–3869

Неверный диапазон записей

Значение в свойстве LastRecord меньше чем в FirstRecord

Установить верные значения свойств LastRecord и FirstRecord

–3870

Команда не разрешена введенными кодами защиты

Ввести код защиты

–3871

Невозможна отмена скидки/надбавки.

–3872

Невозможно закрыть чек данным типом оплаты (в чеке присутствуют операции без контроля наличных)

  • Закрыть чек типом оплаты «Наличные»
  • Отменить чек

–3873

Нет связи с принтером чеков

Обратитесь в сервисную службу

–3877

Неверный номер маршрута

Указать верны номер маршрута

–3878

Неверный номер начальной зоны

Указать верный номер начальной зоны

–3879

Неверный номер конечной зоны

Указать верный номер конечной зоны

–3880

Неверный тип тарифа

Указать верный тип тарифа

–3881

Неверный тариф

Указать верный тариф

–3882

Нет заказа с таким номером

Указать верный номер заказа

–3883

Снятие отчета прервалось

Возобновить снятие отчета

–3887

Неверный штрихкод товара

Указать/считать верный ШК

–3892

ККМ заблокирована после попытки ввода даты, меньшей чем дата последней записи в ФП

Если введена дата меньше даты последней записи в ФП

Ввести дату больше даты последней записи в ФП

–3893

Требуется подтверждение ввода даты

Подтвердить ввод даты

–3894

Отчет с гашением прерван. Вход в режим невозможен

Снять отчет с гашением

–3895

Неверная длина

При выполнении команды по нижнему уровню

Проверить написание команды

–3896

Сумма не наличных оплат превышает сумму чека

При оплате чека.

Оплата не наличными типами оплаты не должна превышать сумму чека

–3897

Чек оплачен не полностью

Оплатить чек

–3898

Неверный номер картинки/штрихкода

  • При удалении.
  • При печати и др.

Запросить массив картинок/штрихкодов и ввести правильный номер картинки/штрихкода

–3899

Невозможно открыть файл или формат некорректный

  • При добавлении картинки из файла.
  • При печати картинки из файла

Возможно печать только растровых монохромных картинок

–3900

Сумма сторно больше, чем было получено данным типом оплаты

При сторнировании оплаты сумма оплаты превышает сумму платежей

Проверить правильность ввода суммы сторно оплаты

–3901

Неверный номер регистра

Указан неверный номер регистра при запросе регистра

Ввести верный номер регистра

–3902

Недопустимое целевое устройство

Устройство, указанное в свойстве UnitType отсутствует в подключенной модели ККМ

–3903

Неверный параметр регистра

При запросе регистра неверно указаны его параметры

Проверить параметры ввода запрашиваемого регистра

–3904

Недостаточно памяти

В ККМ недостаточно свободной памяти для загрузки картинки

–3905

Неверный формат или значение

Проверить формат вводимых значений

–3906

Переполнение суммы платежей

Уменьшите значение свойства Summ

–3907

Ошибка обмена с фискальным модулем

Обратитесь в сервисную службу

–3908

Переполнение ФП

Обратитесь в сервисную службу

–3909

Ошибка печатающего устройства

Обратитесь в сервисную службу

–3910

Ошибка интерфейса ЭКЛЗ/ФН

Обратитесь в сервисную службу

–3911

Ошибка формата передачи параметров ЭКЛЗ/ФН

Обратитесь в сервисную службу

–3912

Неверное состояние ЭКЛЗ/ФН

Обратитесь в сервисную службу

–3913

Неисправимая ошибка ЭКЛЗ/ФН

Обратитесь в сервисную службу

–3914

Авария крипто–процессора ЭКЛЗ/ФН

Обратитесь в сервисную службу

–3915

Исчерпан временной ресурс ЭКЛЗ/ФН

Обратитесь в сервисную службу

–3916

ЭКЛЗ/ФН переполнено

Обратитесь в сервисную службу

–3917

В ЭКЛЗ/ФН переданы неверная дата или время

Ввести верные дату и время

–3918

В ЭКЛЗ/ФН нет запрошенных данных

–3919

Переполнение итога чека в ЭКЛЗ/ФН

Обратитесь в сервисную службу

–3920

Исчерпан лимит активизаций ЭКЛЗ/ФН

Обратитесь в сервисную службу

–3921

Проверьте дату и время

Обратитесь в сервисную службу

–3922

Дата и/или время в ККМ меньше чем в ЭКЛЗ/ФН/ФП

Обратитесь в сервисную службу

–3923

Невозможно закрыть архив ЭКЛЗ/ФН

Обратитесь в сервисную службу

–3924

Необходимо провести профилактические работы

Обратитесь в сервисную службу

–3925

Неверный номер ЭКЛЗ/ФН

Указать верный номер

–3926

Предыдущая операция не завершена

Завершить предыдущую операцию

–3927

Переполнение сменного итога

–3928

Активизация данной ЭКЛЗ/ФН в составе данной ККМ невозможна

Обратитесь в сервисную службу для установки и последующей активизации нового экзкмпляра ЭКЛЗ

–3929

Переполнение счетчика наличности

–3930

Переполнение буфера чека

–3931

Размер картинки слишком большой.

Картинка не помещается на ленте.

Изменить параметры картинки

–3932

Неверный тип чека

Указать верный тип чека

–3933

Вход в режим заблокирован

Обратитесь в сервисную службу

–3934

Неверные номера смен в ККМ и ЭКЛЗ/ФН

Обратитесь в сервисную службу

–3935

ЭКЛЗ/ФН отсутствует

Обратитесь в сервисную службу

–3936

Итоги чека ККМ и ЭКЛЗ/ФН не совпадают

Обратитесь в сервисную службу

–3937

ККМ находится в режиме ввода даты или времени

Остановка часов

Установить дату и время

–3938

Переполнение буфера отложенного документа

–3939

Невозможно напечатать второй фискальный оттиск

–3940

Буфер переполнен’

–3941

Требуется гашение ЭЖ

Выполнить гашение ЭЖ

–3942

Перегрев головки принтера

Отключить ККТ

–3943

Ошибка отрезчика

Обратиться в сервисную службу

–3944

Буфер принтера ПД пустой

–3945

Буфер принтера ПД переполнен

–3946

Карта физически отсутствует в картоприемнике

Установить карту в картоприемник

–3947

Неверный PIN код

Ввести верный PIN-код

–3948

Ячейка защищена от записи

–3949

Невозможно сторно последней операции

–3950

Сторно по коду невозможно

–3951

Невозможен повтор последней операции

–3952

Неверный код товара

Ввести верный код товара

–3953

Нет подтверждения или отмены продажи

Выполнить подтверждение продажи или отменить продажу

–3954

Отключение контроля наличности невозможно (не настроены необходимые типы оплаты)

Настроить типы оплаты и повторно отключить контроль наличности

–3955

Товар не найден

–3956

Весовой штрих-код с количеством ≠ 1.000

–3957

Переполнение буфера чека

–3958

Недостаточное количество товара

Указать верное количество

–3959

Сторнируемое количество больше проданного

Указать верное количество операции сторно

–3960

Заблокированный товар не найден в буфере чека

–3961

Данный товар не продавался в чеке, сторно невозможно

–3962

Memo Plus 3 заблокировано с ПК

–3963

Ошибка контрольной суммы таблицы настроек Memo Plus 3

–3964

Идет обработка контрольной ленты

–3965

Недопустимый пароль

Ввести верный пароль

–3966

Ошибочное состояние ТРК

–3967

Невозможно напечатать вторую фискальную копию

–3968

Ошибка питания

Ошибка возникает в автономных ККМ при недостаточности питания

Зарядить аккумулятор

–3969

Сумма налога больше суммы регистраций по чеку и/или итога

Указать верную сумму налога

–3970

Начисление налога на последнюю операцию невозможно

–3971

Операция невозможна, недостаточно питания

Зарядить аккумулятор

–3972

Недопустимый порядок реквизитов чека

Указать реквизиты в правильном порядке

–3973

Недопустимый идентификатор накопителя фискальной памяти

–3974

Ошибка записи в накопитель фискальной памяти

–3975

Накопитель фискальной памяти не пуст

–3976

Данные в накопителе фискальной памяти разрушены

Обратиться в сервисную службу для замены накопителя фискальной памяти

–3977

Команда в режиме принтера игнорируется

–3978

Отсутствует код оператора

Ввести код оператора

–3979

Не определен тип документа

–3980

Несовпадение заводского номера ПФП/ККМ

–3981

Данные заводской регистрации ККМ в накопителе фискальной памяти разрушены

Обратиться в сервисную службу для замены накопителя фискальной памяти

–3982

Слишком много товара в чеке

Отменить последнюю позицию и закрыть чек или отменить весь чек

–3983

Неверный формат документа

–3984

Перезапись текста документа

–3985

Слишком много параметров документа

–3986

Недопустимый параметр документа

Ввести верный параметр документа

–3987

Недопустимое значение параметра документа

Вввести верное значение параметра документа

–3988

Описание несуществующего объекта

–3989

Документ не был завершен

Завершить документ

–3990

Описание товара или операции не полно

Дополнить описание товара и завершить действие

–3991

Вложенные прерывания

–3992

Неверный байт подтверждения приема данных

–3993

Несовпадение контрольной суммы ОЗУ

–3994

Несовпадение контрольной суммы накопителя фискальной памяти

–3995

Порт данных неисправен

Обратиться в сервисную службу

–3996

Нулевые координаты для обязательного реквизита

–3997

Недопустимая длина запроса

Подать запрос верной длины

–3998

Разрядность числа больше допустимой

Указать число с верной разрядностью

–3999

Переполнение

–4000

Нет числа

Ввести число

–4002

Ошибка передачи

Проверить интерфейс обмена, устранить неполадку и повторить передачу

–4003

Не все параметры ККМ запрограммированы

Запрограммировать недостающие параметры ККТ

–4004

Сбой памяти

Обратиться в сервисную службу

–4005

Принтер выключен

Включить принтер

–4006

Превышено время ожидания готовности принтера

Проверить подключение и исправность принтера, при обнаружении неполадки устранить ее

–4007

Данные учтены в ЭКЛЗ/ФН и ФП, но возникли проблемы печати документа при завершении чека

Обратиться в сервисную службу

–4008

Требуется повторить последнюю команду

Повторно выполнить последнюю команду

–4009

ФР ожидает готовности (ПУ), код 247

–4010

SD карта не готова

Дождаться готовности карты, при обнаружении ее поломки, заменить SD карту

–4011

Требуется пароль доступа

Не указан пароль доступа, требующийся для работы ККМ

Указать пароль доступа

–4012

Достигнут конец каталога

Ошибка возникает при чтении SD-карты

–4013

Ошибка GSM модуля

Обратиться в сервисную службу

–4014

Нет данных в буфере ККТ

–4015

Некорректное значение параметров команды ФН

Повторно подать команду с верными параметрами ФН

–4016

Превышение размеров TLV данных ФН

–4017

Нет транспортного соединения ФН

Настроить соединение с ФН

–4018

Исчерпан ресурс КС ФН

Обратиться в сервисную службу для замены ФН

–4019

Исчерпан ресурс хранения ФН

Обратиться в сервисную службу для замены ФН

–4020

Сообщение от ОФД не может быть принято ФН

Сбой связи с ОФД

Настроить интерфейс обмена с ОФД.

Сбой в работе сервера ОФД

После устрания неполадок сервера ОФД повторно запустить работу по обмену данными ККТ–ОФД

Поврежден фискальный накопитель

Обратиться в сервисную службу для замены ФН

–4021

В ФН есть неотправленные ФД

Проверить параметры связи с ОФД, дождать отправки документов ОФД

–4022

В текущем состоянии документа команда не допустима

–4023

Нет документа для повтора

–4024

Ожидание команды продолжения печати

Подать команду продолжения печати

1.После перехода на 5-ю платформу (прошивка 5.7.0) при формировании чека возникает ошибка — «Неверная СНО».

Формально ошибка не связана с переходом на 5 платформу, с таким же успехом ее можно получить и на платформе 2.5 — проблема неправильного выбора СНО в верхнем ПО, например 1С. Устраняется так же как и на платформе 2.5.

1. Более сложный (рекомендуется, но помогает только в 80% случаев). В окне параметры оборудования, на первой вкладке — «Основные» установить требуемое СНО по умолчанию.

Настраиваем СНО по умолчанию

2. Более простой (не рекомендуется, но помогает в 100% случаев). При закрытой смене заходим на вкладку регистрация нажимаем считать, проверяем системы НО и самое главное какое СНО стоит по умолчанию, нажимаем клавишу «Регистрация» (Важно! Не путать с клавишей «Перерегистрация»)

Устраняем ошибку «Неверная СНО»

2. После перехода на 5-ю платформу (прошивка 5.7.0) ККТ стал печатать номер смены и номер чека в смене, что запрещено после 1 марта 2020 года, на платформе 2.5 номер смены и номер чека в смене не печатался.

После перехода на 5 платформу ККТ «вспомнил » старые требования к оформлению чека.

В инструкции по переходу на 5 платформу этот момент указан неявно — кроме перехода на 5 платформу требуется установить шаблоны, в которых отключена печать номера смены, номера чека в смене. Для платформы 5.7.0 шаблоны без номера чека и без номера смены: сжатый шрифт 80 мм — ATEC3012.con и стандартный шрифт 80 мм — ATCP3010.con .

Шаблоны загружаются через драйвер на вкладке ПО ККТ, в параметрах ККТ проверяем галочку работы с шаблонами.

3.После перехода на 5 платформу (прошивка 5.7.0-5.7.10) ККТ переходит в режим светофора, при возврате на платформу 2.5  ККТ восстанавливает работоспособность. 

На данный момент проблема решается только чисткой флешки и то только в двух случаях из трех. Тех. поддержка обещает исправить проблему в прошивке 5.7.20  

Пока решение только одно, дошивать, обнулять и заливать лицензии вручную: 

-дошиваем файлом 0xx_upgrade.con (где 0xx — номер материнской платы до документации Атол, она же 3-4 цифра заводского номера ККТ) со вкладки ПО ККТ в ДТО10
— заводим вручную заводской номер и MAC -адрес, если номер отсутствует
— обнуляем — перемычку устанавливать не надо, нажимаем тех.обнуление выключаем-включаем ККТ после того как он замигает
— лицензии берем из файла licenses.xml и вводим их поочередно.

4. ККТ не добавляется в ЛК АС для формирования файла миграции на 5 платформу.

На ККТ установлена старая прошивка ниже 4139 или неправильно указан адрес ЛК в ККТ. В параметрах ККТ на вкладке Диагностика устанавливаем адрес и порт ЛК (service.atol.ru и 80 соотвественно).

Условия для формирования файла миграции для перехода на 5 платформу

— Прошивка 4139 или выше
— ИНН фискализации равен ИНН клиента
— Настроен и работает канал обмена с ОФД
— Есть доступ к АС по 80 порту:
— Открываем доступ к IP адресу 5.188.186.134 и 5.188.186.133
— Не сбиты настройки в Таблице 19

Настройки таблицы 19 АТОЛ Сервис для Платформы 2.5. В ДТО 10 запрограммировать следующие поля 19 таблицы
Т19Р1П9:
73 65 72 76 69 63 65 2E 61 74 6F 6C 2E 72 75 00 2F 6B 6B 74 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
Т19Р1П10: 
00 50

5. ККТ не смог обновится на 5 платформу, требуется откатится на платформу 2.5 на прошивку 8541, а в ЛК АС пропала возможность скачать файлы платформы 2.5.

Запрограммировать образ 7942 и настроить параметры ЛК (см п.4) и передать данные о прошивке установленной на ККТ — файлы платформы 2.5 появятся вновь.

6. На 5 платформе (прошивка 5.7.0) при регистрации ККТ выдается ошибка «Ошибка ККТ 0x4459».

Данная ошибка есть и платформе 2.5, но там она имеет обратный смысл. 

На 5 платформе (прошивка 5.7.10) подобная ошибка возникает если неправильно введен реквизит регистрации. Реальный пример, вместо www.nalog.ru был введен <пробел>www.nalog.ru 

В разрезе 5 платформы (прошивка 5.7.0) и в переводе на русский язык — ККТ можно зарегистрировать только на канал обмена ОФД EoT. Возможно в дальнейшем эту проблему уберут зарегистрировать можно будет на любой интерфейс, но на прошивке 5.7.0 можно только на EoT.

Данная ошибка при правильности все введенных регистрационных данных говорит о том, что выбран канал обмена с ОФД не EoT. 

Для устранения ошибки устанавливаем в трех местах канал EoT и делаем регистрацию(перерегистрацию).

Устанавливаем во всех трех вкладках канал EoT

7.При переходе на 5 платформу (прошивка 5.7.0-5.7.10) ККТ «окирпичился» и горит только красным светодиодом, на клавиши протяжки ленты не реагирует, при подключении к компьютеру в диспетчере устройств не появляется ни каких новых устройств.
 

Довольно редкая ошибка при миграции на 5 платформу, поэтому может ввести в заблуждение даже опытного специалиста. Проблему можно устранить двумя способами — не разбирая ККТ и разбирая ККТ. Если не разбирать ККТ, то надо отсоединить все (!!!) кабеля и подождать 3-5 часов, чтобы конденсаторы разрядились. Если нет времени для ожидания, то требуется разобрать ККТ и принудительно разрядить все конденсаторы на системной плате. После включения получаем ошибку быстрый светофор — далее по стандартному пути:

— Из мигратора выдергиваем файл соответствующий материнской плате файл Upgrade 
— Вкладка ПО ККТ, выбираем файл Upgrade, проверяем Состав контейнера, Загрузить ПО ККТ
— ККТ уходит в двойной светофор
— Заводской номер, MAC-адрес, инициализация ККМ
— Устанавливаем все лицензии вручную
— Тех. обнуление, выкл-вкл ККТ
— Выпускаем чек информация ККТ, вверху проверяем MAC-адрес и лицензии, внизу проверяем отсутствие ошибок на чеке 
— Открываем, закрываем смену

Все.

8.При переходе на 5 платформу (прошивка 5.7.0-5.7.10) ККТ перестал печатать, точнее печатает все в одну линию. При откате назад, на платформу 2.5 принтер печатает нормально.

Ошибка довольно неприятная, указывающая на то, что 2.5 и 5.0 платформы по разному используют принтер. Требуется замена шестерен принтера или самого принтера в сборе, если шестерен на складе нет. В качестве временной меры, рекомендуется залить дефолтный шаблон, если шестерни не сильно изношенные, то принтер некоторое время проживет.

0

Mafiozaa

23.10.20

05:02

Приветствую не уходит код маркировки передаю из 1с

Объект.MarkingType = 17485;

Объект.SerialNumber = «SerialNumber»;

Объект.GTIN = GTIN;

Объект.FNSendItemCodeData();

Не уходит, попробывал напрямую вставить в тест драйвер ФН->КТ-> Там ручками вбил гтин серийник, при нажатие на отправить выдает 115 ошибку команда не поддерживается в данном режиме, прошивка 13.02.20 в чем проблема? смена открыта

1

victuan1

23.10.20

05:27

Непосредственно перед Объект.MarkingType = 17485 какой метод использован?

FNOperation()?

2

Mafiozaa

23.10.20

05:27

(1) Обработка fr_elves.ert тут нет FNOperation();

3

Mafiozaa

23.10.20

05:28

(1) Щас выложу весь код обработки

4

Mafiozaa

23.10.20

05:31

(1)

Перем ОписаниеРезультата;

//******************************************************************************

Функция ПолучитьОписаниеРезультата(Объект)

    Возврат Объект.ResultCodeDescription;

КонецФункции // ПолучитьОписаниеРезультата()

//********************************************************************************

Функция ПодключитьсяКФР(Объект, Пароль)

    Рез = 0;

    Объект.Password=Пароль;

    Объект.Connect();

    
    Ответ = Объект.ResultCode;

    Если Ответ=0 Тогда

        Рез=1;

    Иначе

        ОписаниеРезультата = ПолучитьОписаниеРезультата(Объект);

    КонецЕсли;

    
    Возврат Рез;

КонецФункции

//********************************************************************************

Функция ОтключитьсяОтФР(Объект, Пароль, ЗапоминатьОшибку = 1)

    Рез = 0;

    // пеключим ФР в нерабочий режим

    Объект.Password=Пароль;

    Объект.Disconnect();

    
    Ответ = Объект.ResultCode;

    Если Ответ=0 Тогда

        Рез=1;

    ИначеЕсли ЗапоминатьОшибку = 1 Тогда

        ОписаниеРезультата = ПолучитьОписаниеРезультата(Объект);

    КонецЕсли;

    
    Возврат Рез;

КонецФункции

//********************************************************************************

Функция Подключить(Компонента, ПрогИд, Объект, Пароль)

    Рез = 0;

    
    Если ЗагрузитьВнешнююКомпоненту(Компонента) = 0  Тогда

        ОписаниеРезультата = «не удалось загрузить внешнюю компоненту «»» + Компонента + «»»»;

    Иначе

        Попытка

            Объект = СоздатьОбъект(«AddIn.» + ПрогИд);  // Создание объекта внешней компоненты

        Исключение

        КонецПопытки;

        
        Если ПустоеЗначение(Объект) = 1 Тогда

            ОписаниеРезультата = «не удалось создать объект внешней компоненты с программым идентификатром AddIn.» + ПрогИд;

        Иначе

            Рез = 1;

        КонецЕсли;

    КонецЕсли;

    
    Возврат Рез;

КонецФункции

//********************************************************************************

Функция Отключить(Объект, Пароль)

    Рез = 0;

    
    Если ПустоеЗначение(Объект) = 1 Тогда

        Рез = 1; // нет объекта, ничего не нужно отключать

    Иначе

        Рез = ОтключитьсяОтФР(Объект, Пароль);

    КонецЕсли;

    Возврат Рез;    

КонецФункции

//********************************************************************************

Процедура ОтрезатьЧек(Объект, Пароль)

    Ошибка=80;    //Идет печать предыдущей команды

    
    Пока Ошибка=80 Цикл

        Попытка

            Объект.Password = Пароль;

            Объект.CutType  = 1;

            Объект.CutCheck();

    
            Ошибка=Объект.ResultCode;

        Исключение

            Ошибка=-1;

        КонецПопытки;

    КонецЦикла;

    
КонецПроцедуры

//********************************************************************************

Процедура АннулированиеЧека(Объект, Пароль)

    Попытка

        Объект.Password=Пароль;

        Объект.CancelCheck();

    Исключение

    КонецПопытки;

КонецПроцедуры

//********************************************************************************  

Функция ПечататьТекст(Объект, Пароль, Текст)

    Если ПустоеЗначение(Объект) = 1 Тогда

        ОписаниеРезультата = «устройство не подключено»;

        Возврат 0;

    ИначеЕсли ПодключитьсяКФР(Объект, Пароль) = 0 Тогда

        Возврат 0;

    КонецЕсли;

    КолСтр=СтрКоличествоСтрок(Текст);

    Для ц = 1 По КолСтр Цикл

        Стр=СтрПолучитьСтроку(Текст,ц);

      Объект.StringForPrinting=Стр ;

      Объект.PrintString();

КонецЦикла;

    ОтрезатьЧек(Объект, Пароль);

    Возврат ОтключитьсяОтФР(Объект, Пароль);

КонецФункции

//********************************************************************************

Функция ПечататьТекстСпасибо(Объект, Пароль, Текст)

    Если ПустоеЗначение(Объект) = 1 Тогда

        ОписаниеРезультата = «устройство не подключено»;

        Возврат 0;

    ИначеЕсли ПодключитьсяКФР(Объект, Пароль) = 0 Тогда

        Возврат 0;

    КонецЕсли;

    КолСтр=СтрКоличествоСтрок(Текст);

    Для ц = 1 По КолСтр*1.5 Цикл

        Стр=СтрПолучитьСтроку(Текст,ц);

      Объект.StringForPrinting=Стр;

      Объект.PrintString();

      Объект.StringForPrinting=» «;

      Объект.PrintString();

    КонецЦикла;    

    
    ОтрезатьЧек(Объект, Пароль);

    Возврат ОтключитьсяОтФР(Объект, Пароль);

КонецФункции

//********************************************************************************

Функция ПечататьЧек(Объект, Пароль, СписокТоваров, Получено, ПолучСерт, ПолучКарт, Скидка, ПризнВозврата, НомерСекции, НомерЧека,СкидкаСуммой,НомерДок)

    Если ПустоеЗначение(Объект) = 1 Тогда

        ОписаниеРезультата = «устройство не подключено»;

        Возврат 0;

    ИначеЕсли ПодключитьсяКФР(Объект, Пароль) = 0 Тогда

        Возврат 0;

    КонецЕсли;

    // регистрация товаров

    РезРегистрация = 1;

    СписокТоваров.ВыбратьСтроки();

    
    Объект.StringForPrinting = »          Товарный чек»;    

    Объект.PrintString();                    

    Объект.StringForPrinting = »     «+    НомерДок+» от «+ТекущаяДата();

    Объект.PrintString();  

    
    Если (Нрег(глПользователь.Наименование))=»кассир1″  Тогда

        пробел =»                                 » ;

        Объект.StringForPrinting = Лев(«Продавец:»+прав(пробел,32-(9+СтрДлина(Константа.Кассир1)))+(Константа.Кассир1),32);    

        Объект.PrintString();  

    КонецЕсли;      

    
    
    Если (Нрег(глПользователь.Наименование))=»кассир2″  Тогда

        пробел =»                                 » ;

        Объект.StringForPrinting = Лев(«Продавец:»+прав(пробел,32-(9+СтрДлина(Константа.Кассир2)))+(Константа.Кассир2),32);    

        Объект.PrintString();  

    КонецЕсли;      

    
    Если (Нрег(глПользователь.Наименование))=»кассир3″  Тогда

        пробел =»                                 » ;

        Объект.StringForPrinting = Лев(«Продавец:»+прав(пробел,32-(9+СтрДлина(Константа.Кассир3)))+(Константа.Кассир3),32);    

        Объект.PrintString();  

    КонецЕсли;      

    
    Если (Нрег(глПользователь.Наименование))=»кассир4″  Тогда

        пробел =»                                 » ;

        Объект.StringForPrinting = Лев(«Продавец:»+прав(пробел,32-(9+СтрДлина(Константа.Кассир4)))+(Константа.Кассир4),32);    

        Объект.PrintString();                                                                

    КонецЕсли;      

    
    Если (Нрег(глПользователь.Наименование))=»кассир5″  Тогда

        пробел =»                                 » ;

        Объект.StringForPrinting = Лев(«Продавец:»+прав(пробел,32-(9+СтрДлина(Константа.Кассир5)))+(Константа.Кассир5),32);    

        Объект.PrintString();  

    КонецЕсли;      

    
    Если (Нрег(глПользователь.Наименование))=»кассир6″  Тогда

        пробел =»                                 » ;

        Объект.StringForPrinting = Лев(«Продавец:»+прав(пробел,32-(9+СтрДлина(Константа.Кассир6)))+(Константа.Кассир6),32);    

        Объект.PrintString();  

    КонецЕсли;      

    
    Если (Нрег(глПользователь.Наименование))=»кассир7″  Тогда

        пробел =»                                 » ;

        Объект.StringForPrinting = Лев(«Продавец:»+прав(пробел,32-(9+СтрДлина(Константа.Кассир7)))+(Константа.Кассир7),32);    

        Объект.PrintString();  

    КонецЕсли;      

    
    Пока СписокТоваров.ПолучитьСтроку() = 1 Цикл

        
        СтрокаДляПечати = СокрЛП(СписокТоваров.ТовНаим);

        ДлинаСтроки = 32;

        
        //Пока СтрДлина(СтрокаДляПечати)>0 Цикл

            //Объект.StringForPrinting = Лев(СтрокаДляПечати,ДлинаСтроки);

            //Объект.PrintString();

            //СтрокаДляПечати = СокрЛП(Сред(СтрокаДляПечати,ДлинаСтроки+1));

        //КонецЦикла;

        
        Объект.Password          = Пароль;

        Объект.StringForPrinting = Лев(СтрокаДляПечати,ДлинаСтроки);

    //    Объект.Price             = СписокТоваров.Цена;  

    Если  СписокТоваров.Количество=0 тогда      

        Объект.Price             = СписокТоваров.Цена;  

    иначе

        Объект.Price             = СписокТоваров.Сумма/СписокТоваров.Количество;

    КонецЕсли;

        Объект.Quantity          = СписокТоваров.Количество;

        Объект.Department        = НомерСекции;

        
        //Проверка наличия колонки «НДС» в таблице значений.

        НДСЕсть = «»;

        Попытка

            НДС = СписокТоваров.НДС;

            НДСЕсть = 1;

        Исключение

            НДСЕсть = 0;

        КонецПопытки;

        
        Если НДСЕсть = 1 Тогда//Печатаем НДС

            
            // В настройках ФР надо настроить ставки:

            // Налог 1 = 18% — НДС 18%

            // Налог 2 = 10% — НДС 10%

            // Налог 3 = 20% — НДС 20%            

    
            Если СписокТоваров.НДС = 18 Тогда

                Объект.Tax1 = 1;

            ИначеЕсли СписокТоваров.НДС = 10 Тогда

                Объект.Tax1 = 2;

            ИначеЕсли СписокТоваров.НДС = 20 Тогда

                Объект.Tax1 = 3;

            Иначе

                Объект.Tax1 = 0;

            КонецЕсли;

            Объект.Tax2 = 0;

            Объект.Tax3 = 0;

            Объект.Tax4 = 0;

        КонецЕсли;                

        Если ПризнВозврата = 0 Тогда

            Объект.Sale();

        Иначе

            Объект.ReturnSale();

        КонецЕсли;                            

        
        Если Объект.ResultCode <> 0 Тогда

            ОписаниеРезультата = ПолучитьОписаниеРезультата(Объект);

            АннулированиеЧека(Объект, Пароль);

            ОтключитьсяОтФР(Объект, Пароль, 0);

            Возврат 0;

        КонецЕсли;  

        Если ПустоеЗначение(СписокТОваров.СкидкаПоСтроке) = 0 Тогда

            пробел =»…………………………..» ;

            Объект.StringForPrinting = Лев(«Стоимость»+прав(пробел,32-(9+СтрДлина(Формат(СписокТоваров.Цена*СписокТоваров.Количество,»Ч.2″))))+Формат(СписокТоваров.Цена*СписокТоваров.Количество,»Ч.2»),32);

            Объект.PrintString();//                                                  СписокТоваров.СкидкаПоСтроке

            Объект.StringForPrinting = «Скидка «+СписокТоваров.СкидкаПоСтроке+»%»+прав(пробел,32-(5+СтрДлина(СписокТоваров.СкидкаПоСтроке-СписокТоваров.СкидкаСпасибо)+СтрДлина(Формат((СписокТоваров.Цена*СписокТоваров.Количество-СписокТоваров.Сумма-СписокТоваров.СкидкаСпасибо),»Ч.2″))))+Формат(((СписокТоваров.Цена*СписокТоваров.Количество)-СписокТоваров.Сумма-СписокТоваров.СкидкаСпасибо),»Ч.2»);

            Объект.PrintString();  

        //доб.скидка СПАСИБО

            Если пустоезначение(СписокТоваров.СкидкаСпасибо)=0 тогда

                Объект.StringForPrinting = «Скидка СПАСИБО»+прав(пробел,32-(10+СтрДлина(СписокТоваров.СкидкаСпасибо)+СтрДлина(Формат((СписокТоваров.СкидкаСпасибо),»Ч.2″))))+Формат(((СписокТоваров.СкидкаСпасибо)),»Ч.2»);

                Объект.PrintString();

        
                Объект.StringForPrinting = «Общая скидка «+прав(пробел,32-(11+СтрДлина(СписокТоваров.СкидкаПоСтроке)+СтрДлина(Формат((СписокТоваров.Цена*СписокТоваров.Количество-СписокТоваров.Сумма),»Ч.2″))))+Формат(((СписокТоваров.Цена*СписокТоваров.Количество)-СписокТоваров.Сумма),»Ч.2»);

                Объект.PrintString();  

            КонецЕсли;

            Объект.StringForPrinting     = Лев(«Всего»+прав(пробел,32-(5+СтрДлина(Формат(СписокТоваров.Сумма,»Ч.2″))))+Формат(СписокТоваров.Сумма,»Ч.2»),32);

            Объект.PrintString();  

        ИначеЕсли ПустоеЗначение(СписокТОваров.СкидкаСпасибо) = 0 тогда

            пробел =»…………………………..» ;

            Объект.StringForPrinting = Лев(«Стоимость»+прав(пробел,32-(9+СтрДлина(Формат(СписокТоваров.Цена*СписокТоваров.Количество,»Ч.2″))))+Формат(СписокТоваров.Цена*СписокТоваров.Количество,»Ч.2»),32);

            Объект.PrintString();//

            Объект.StringForPrinting = «Скидка СПАСИБО»+прав(пробел,32-(10+СтрДлина(СписокТоваров.СкидкаСпасибо)+СтрДлина(Формат((СписокТоваров.СкидкаСпасибо),»Ч.2″))))+Формат(((СписокТоваров.СкидкаСпасибо)),»Ч.2»);

            Объект.PrintString();

            Объект.StringForPrinting     = Лев(«Всего»+прав(пробел,32-(5+СтрДлина(Формат(СписокТоваров.Сумма,»Ч.2″))))+Формат(СписокТоваров.Сумма,»Ч.2»),32);

            Объект.PrintString();        

        //конец скидка СПАСИБО

        КонецЕсли;

        //

                  
//         Если ПустоеЗначение(СписокТОваров.СкидкаПоСтроке) = 0 Тогда

//             

//                Объект.Password          = Пароль;

//        Объект.StringForPrinting = Лев(СтрокаДляПечати,ДлинаСтроки);

//    //    Объект.Price             = СписокТоваров.Цена;

//        Объект.Price             = СписокТоваров.Сумма/СписокТоваров.Количество;

//        Объект.Quantity          = СписокТоваров.Количество;

//        Объект.Department        = НомерСекции;

//        

//        //Проверка наличия колонки «НДС» в таблице значений.

//        НДСЕсть = «»;

//        Попытка

//            НДС = СписокТоваров.НДС;

//            НДСЕсть = 1;

//        Исключение

//            НДСЕсть = 0;

//        КонецПопытки;

//        

//        Если НДСЕсть = 1 Тогда//Печатаем НДС

//            

//            // В настройках ФР надо настроить ставки:

//            // Налог 1 = 18% — НДС 18%

//            // Налог 2 = 10% — НДС 10%

//            // Налог 3 = 20% — НДС 20%            

//    

//            Если СписокТоваров.НДС = 18 Тогда

//                Объект.Tax1 = 1;

//            ИначеЕсли СписокТоваров.НДС = 10 Тогда

//                Объект.Tax1 = 2;

//            ИначеЕсли СписокТоваров.НДС = 20 Тогда

//                Объект.Tax1 = 3;

//            Иначе

//                Объект.Tax1 = 0;

//            КонецЕсли;

//            Объект.Tax2 = 0;

//            Объект.Tax3 = 0;

//            Объект.Tax4 = 0;

//        КонецЕсли;                

//

//        Если ПризнВозврата = 0 Тогда

//            Объект.Sale();

//        Иначе

//            Объект.ReturnSale();

//        КонецЕсли;                            

//        

//        Если Объект.ResultCode <> 0 Тогда

//            ОписаниеРезультата = ПолучитьОписаниеРезультата(Объект);

//            АннулированиеЧека(Объект, Пароль);

//            ОтключитьсяОтФР(Объект, Пароль, 0);

//            Возврат 0;

//        КонецЕсли;

//        

//    

//

//

//

//    КонецЕсли;

//        

        
        
        
        
        
        
        
    КонецЦикла;

      
    //Если СкидкаСуммой <> 0 тогда  

    //        Объект.StringForPrinting=»        Спасибо за покупку»;

    //        Объект.Summ1    = СкидкаСуммой;

    //        Объект.Discount();

    //КонецЕсли;      

    //    

    Объект.Password = Пароль;

    Объект.Summ1    = Получено;

    Объект.Summ2    = ПолучСерт;

    Объект.Summ3    = 0;

    Объект.Summ4    = ПолучКарт;  

        Объект.StringForPrinting=» «;

    Объект.StringForPrinting=»        Спасибо за покупку»;

    
    

    
    //    Объект.StringForPrinting=» «;

//    Сообщить(«ывпаыв»);

    Объект.DiscountOnCheck=Скидка;

    Объект.DiscountOnCheck=0;  

    
    
    
    
        
        
    Объект.CloseCheck();  

    
            
        

    Если Объект.ResultCode <> 0 Тогда

        ОписаниеРезультата = ПолучитьОписаниеРезультата(Объект);

        АннулированиеЧека(Объект, Пароль);

        ОтрезатьЧек(Объект, Пароль);

        ОтключитьсяОтФР(Объект, Пароль, 0);

        Возврат 0;

    КонецЕсли;    

    
    Объект.Password = Пароль;

    Объект.GetECRStatus();

    
    Если Объект.ResultCode <> 0 Тогда

        ОписаниеРезультата = ПолучитьОписаниеРезультата(Объект);

        ОтключитьсяОтФР(Объект, Пароль, 0);

        Возврат 0;

    КонецЕсли;

    НомерЧека = Объект.OpenDocumentNumber+?(Объект.ECRAdvancedMode=5,1,0);

    
//    ОтрезатьЧек(Объект, Пароль);      

  

    Возврат ОтключитьсяОтФР(Объект, Пароль);

    
КонецФункции

//********************************************************************************

Функция ЗакрытьСмену(Объект, Пароль, НомерЛенты)

    Рез = 0;

    
    Если ПустоеЗначение(Объект) = 1 Тогда

        ОписаниеРезультата = «устройство не подключено»;

    ИначеЕсли ПодключитьсяКФР(Объект, Пароль) = 1 Тогда

        // переключение в режим снятия отчета (нужен пароль администратора)

        Объект.Password = Пароль;

        Объект.PrintReportWithCleaning();

        Если Объект.ResultCode <> 0 Тогда

            ОписаниеРезультата = ПолучитьОписаниеРезультата(Объект);

            ОтключитьсяОтФР(Объект, Пароль, 0);

            Возврат 0;

        КонецЕсли;

        Объект.Password = Пароль;

        Объект.GetECRStatus();

            
        Если Объект.ResultCode <> 0 Тогда

            ОписаниеРезультата = ПолучитьОписаниеРезультата(Объект);

            ОтключитьсяОтФР(Объект, Пароль, 0);

            Возврат 0;

        КонецЕсли;

        
        НомерЛенты = Объект.SessionNumber+?(Объект.ECRAdvancedMode=5,1,0);

        ОтрезатьЧек(Объект, Пароль);

        Рез = ОтключитьсяОтФР(Объект, Пароль);

    КонецЕсли;

    
    Возврат Рез;

КонецФункции

                                      

  ///////////////////////////////////////////////

  
Функция ОткрытьСмену(Объект, Пароль, НомерЛенты)

    Рез = 0;

    
    Если ПустоеЗначение(Объект) = 1 Тогда

        ОписаниеРезультата = «устройство не подключено»;

    ИначеЕсли ПодключитьсяКФР(Объект, Пароль) = 1 Тогда

        // переключение в режим снятия отчета (нужен пароль администратора)

        Объект.Password = Пароль;

    Объект.OpenSession();

    КонецЕсли;

    
    Возврат Рез;

КонецФункции          

Функция СнятьХотчет(Объект, Пароль, НомерЛенты)

    Рез = 0;

    
    Если ПустоеЗначение(Объект) = 1 Тогда

        ОписаниеРезультата = «устройство не подключено»;

    ИначеЕсли ПодключитьсяКФР(Объект, Пароль) = 1 Тогда

        // переключение в режим снятия отчета (нужен пароль администратора)

        Объект.Password = Пароль;

    //    Объект.PrintReportWithCleaning();  

        Объект.PrintReportWithoutCleaning();

    КонецЕсли;

    
    Возврат Рез;

КонецФункции

//********************************************************************************

Функция ПроверкаПароля (Пароль)

    Если ПустаяСтрока(Пароль) = 1 Тогда

        Ответ = «неправильно указан пароль пользователя»;

        Возврат Ответ;

    Иначе

        Попытка

            ПарольЧислом = Число(Пароль);

        Исключение

            Ответ = «неправильно указан пароль пользователя»;

            Возврат Ответ;

        КонецПопытки;

    КонецЕсли;

    Возврат «»;

КонецФункции

//********************************************************************************

Процедура ПриОткрытии()

    Перем Объект, НомерЧека, НомерЛенты, Парам;

    СтатусВозврата(0);

    Форма.Параметр.Выгрузить(Парам);

    Форма.Параметр.УдалитьВсе();

    
    Если Парам.РазмерСписка() = 0 Тогда

        Рез = 0;

        ОписаниеРезультата = «в обработку не переданы параметры»;

    Иначе

        
        Процесс = НРег(Парам.Получить(«Процесс»));

        
        Если Процесс = «подключить» Тогда            

            
            Компонента = Парам.Получить(«Компонента»);

            ПрогИд     = Парам.Получить(«ПрогИд»);

            Пароль     = Парам.Получить(«ПарольПользователя»);

            
            ОписаниеРезультата = ПроверкаПароля (Пароль);

            Если ОписаниеРезультата <> «» Тогда                

                Рез = 0;

            Иначе

                Рез = Подключить(Компонента, ПрогИд, Объект, Пароль);

                Форма.Параметр.Установить(«Объект», Объект);

            КонецЕсли;

            
        ИначеЕсли Процесс = «отключить» Тогда

            
            Рез = Отключить(Объект, Пароль);

        ИначеЕсли Процесс = «печатать_текст» Тогда

            Объект        = Парам.Получить(«Объект»);

            Пароль        = Парам.Получить(«ПарольПользователя»);

            Текст = Парам.Получить(«Текст»);

            ОписаниеРезультата = ПроверкаПароля (Пароль);

            Если ОписаниеРезультата <> «» Тогда                

                Рез = 0;

            Иначе

                Рез = ПечататьТекст(Объект, Пароль, Текст);

            КонецЕсли;

        ИначеЕсли Процесс = «печатать_текст_спасибо» Тогда

            Объект        = Парам.Получить(«Объект»);

            Пароль        = Парам.Получить(«ПарольПользователя»);

            Текст = Парам.Получить(«Текст»);

            ОписаниеРезультата = ПроверкаПароля (Пароль);

            Если ОписаниеРезультата <> «» Тогда                

                Рез = 0;

            Иначе

                Рез = ПечататьТекстСпасибо(Объект, Пароль, Текст);

            КонецЕсли;

            

        ИначеЕсли Процесс = «печатать_чек» Тогда

            Объект        = Парам.Получить(«Объект»);

            Пароль        = Парам.Получить(«ПарольПользователя»);

            СписокТоваров = Парам.Получить(«СписокТоваров»);

            Получено      = Парам.Получить(«Получено»);

            ПолучСерт     = Парам.Получить(«ПолучСерт»);

            ПолучКарт     = Парам.Получить(«ПолучКарт»);

            ЧекНаВозврат  = Парам.Получить(«Возврат»);

            НомерСекции   = Парам.Получить(«НомерСекции»);

            Скидка        = Парам.Получить(«Скидка»);

            СкидкаСуммой  = Парам.Получить(«СкидкаСуммой»);

            НомерДок1     = Парам.Получить(«НомерДок1»);

            
            
        
            ОписаниеРезультата = ПроверкаПароля (Пароль);

            Если ОписаниеРезультата <> «» Тогда                

                Рез = 0;

            Иначе;

                Рез = ПечататьЧек(Объект, Пароль, СписокТоваров, Получено, ПолучСерт, ПолучКарт, Скидка, ЧекНаВозврат, НомерСекции, НомерЧека,СкидкаСуммой,НомерДок1);

                Форма.Параметр.Установить(«НомерЧека», НомерЧека);

                Объект.MarkingType = 17485;

                Объект.GTIN = GTIN;

                Объект.SerialNumber = SerialNumber;

                Объект.FNSendItemCodeData();

            КонецЕсли;

            
            
        ИначеЕсли Процесс = «закрыть_смену» Тогда

            Объект  = Парам.Получить(«Объект»);

            Пароль  = Парам.Получить(«ПарольАдминистратора»);

            
            Если Число(Пароль)=0 Тогда

                Рез = 0;

                ОписаниеРезультата = «неправильно указан пароль администратора»;

            Иначе

                Рез = ЗакрытьСмену(Объект, Пароль, НомерЛенты);

                Форма.Параметр.Установить(«НомерЛенты», НомерЛенты);

            КонецЕсли;  

            
        ИначеЕсли Процесс = «открыть_смену» Тогда

            
        ///    Сообщить(«Мытут»);                              

            
            Объект  = Парам.Получить(«Объект»);

            Пароль  = Парам.Получить(«ПарольАдминистратора»);

            
            Рез = ОткрытьСмену(Объект, Пароль, НомерЛенты);

            
            ИначеЕсли Процесс = «снятьхотчет» Тогда

            
        ///    Сообщить(«Мытут»);                              

            
            Объект  = Парам.Получить(«Объект»);

            Пароль  = Парам.Получить(«ПарольАдминистратора»);

            
            Рез = СнятьХотчет(Объект, Пароль, НомерЛенты);

                
            //Если Число(Пароль)=0 Тогда

            //    Рез = 0;

            //    ОписаниеРезультата = «неправильно указан пароль администратора»;

            //Иначе

            //    Рез = ОткрытьСмену(Объект, Пароль, НомерЛенты);

            //    Форма.Параметр.Установить(«НомерЛенты», НомерЛенты);

            //КонецЕсли;  

            //

        
        Иначе

            ОписаниеРезультата = «неизвестная команда»;

            Рез = 0;

            
        КонецЕсли;

    КонецЕсли;

    Форма.Параметр.Установить(«Результат»         , Рез);

    Форма.Параметр.Установить(«ОписаниеРезультата», ОписаниеРезультата);

    
КонецПроцедуры

//********************************************************************************

ОписаниеРезультата = «»;

5

Mafiozaa

23.10.20

05:38

(1) Или мне самому можно добавить этот FNOperation и после него прописать передачу?

6

victuan1

23.10.20

06:11

В коде используются устаревшие методы:

Если ПризнВозврата = 0 Тогда

    Объект.Sale();

Иначе

    Объект.ReturnSale();

КонецЕсли;          

С ними передача тега 1162 невозможна.

Надо полностью переписывать код обработки под новые принципы работы, в частности для регистрации позиции в чеке использовать FNOperation вместо Sale / ReturnSale

7

Mafiozaa

23.10.20

06:55

(6) Хорошо,предположим, тогда почему я не могу напрямки с тест драйвера послать код, 115 ошибку выдает

8

Kigo_Kigo

23.10.20

08:14

Серьезно?

ИначеЕсли Процесс = «печатать_чек» Тогда

            Объект        = Парам.Получить(«Объект»);

            Пароль        = Парам.Получить(«ПарольПользователя»);

            СписокТоваров = Парам.Получить(«СписокТоваров»);

            Получено      = Парам.Получить(«Получено»);

            ПолучСерт     = Парам.Получить(«ПолучСерт»);

            ПолучКарт     = Парам.Получить(«ПолучКарт»);

            ЧекНаВозврат  = Парам.Получить(«Возврат»);

            НомерСекции   = Парам.Получить(«НомерСекции»);

            Скидка        = Парам.Получить(«Скидка»);

            СкидкаСуммой  = Парам.Получить(«СкидкаСуммой»);

            НомерДок1     = Парам.Получить(«НомерДок1»);

            
            
        
            ОписаниеРезультата = ПроверкаПароля (Пароль);

            Если ОписаниеРезультата <> «» Тогда                

                Рез = 0;

            Иначе;

                Рез = ПечататьЧек(Объект, Пароль, СписокТоваров, Получено, ПолучСерт, ПолучКарт, Скидка, ЧекНаВозврат, НомерСекции, НомерЧека,СкидкаСуммой,НомерДок1);

                Форма.Параметр.Установить(«НомерЧека», НомерЧека);

                Объект.MarkingType = 17485;

                Объект.GTIN = GTIN;

                Объект.SerialNumber = SerialNumber;

                Объект.FNSendItemCodeData();

            КонецЕсли;

9

Mafiozaa

23.10.20

08:16

(8) Не совсем догнал, о чем вы, обработка стандартная, мною добавлено лишь

                Объект.MarkingType = 17485;

                Объект.GTIN = GTIN;

                Объект.SerialNumber = SerialNumber;

                Объект.FNSendItemCodeData();

Так как вся инфа ставить после FNOperation, я попробывал затолкнуть сюда, я сделал что то не то? подсказка?

10

Kigo_Kigo

23.10.20

08:17

(6) Покажи как надо, у меня сча такая же проблема, драйвер маркировку хавает, а нигде она не появляется

(9) Маркировка передается для каждой позиции отдельно

после

Если НДСЕсть = 1 Тогд�//Печатаем НДС

            
            // В настройках ФР надо настроить ставки:

            // Налог 1 = 18% — НДС 18%

            // Налог 2 = 10% — НДС 10%

            // Налог 3 = 20% — НДС 20%            

    
            Если СписокТоваров.НДС = 18 Тогда

                Объект.Tax1 = 1;

            ИначеЕсли СписокТоваров.НДС = 10 Тогда

                Объект.Tax1 = 2;

            ИначеЕсли СписокТоваров.НДС = 20 Тогда

                Объект.Tax1 = 3;

            Иначе

                Объект.Tax1 = 0;

            КонецЕсли;

            Объект.Tax2 = 0;

            Объект.Tax3 = 0;

            Объект.Tax4 = 0;

        КонецЕсли;

Объект.MarkingType = 17485;

                Объект.GTIN = GTIN;

                Объект.SerialNumber = SerialNumber;

                Объект.FNSendItemCodeData();

11

Mafiozaa

23.10.20

08:28

(10) Брат, подскинь всю обработку, полистаю гляну может еще что не так, у тебя так же fr_elves?

12

Kigo_Kigo

23.10.20

08:34

(11) Там все тоже самое что и у тебя только добавлено

        Если НДСЕсть = 1 Тогда//Печатаем НДС

            
            // В настройках ФР надо настроить ставки:

            // Налог 1 = 18% — НДС 18%

            // Налог 2 = 10% — НДС 10%

            // Налог 3 = 20% — НДС 20%            

    
            Если СписокТоваров.НДС = 18 Тогда

                Объект.Tax1 = 1;

            ИначеЕсли СписокТоваров.НДС = 10 Тогда

                Объект.Tax1 = 2;

            ИначеЕсли СписокТоваров.НДС = 20 Тогда

                Объект.Tax1 = 3;

            Иначе

                Объект.Tax1 = 0;

            КонецЕсли;

            Объект.Tax2 = 0;

            Объект.Tax3 = 0;

            Объект.Tax4 = 0;

            
            ДлинаСтроки = 36;

        Иначе

            ДлинаСтроки = 0;

        КонецЕсли;                

        Если ПризнВозврата = 0 Тогда

            Объект.Sale();

        Иначе

            Объект.ReturnSale();

        КонецЕсли;

        
        Если ПустоеЗначение(СокрЛП(СписотТоваров.Маркировка)) = 0 Тогда

            КМ = СокрЛП(СписотТоваров.Маркировка);

            GTIN = Сред(КМ, 3, 14);                            

            SerialNumber = Сред(КМ, 19, 13);

            
            Объект.Пароль = Пароль;  

            Объект.MarkingType         = 17485;//  Это «444D»    

            Объект.GTIN             = GTIN;

            Объект.SerialNumber     = SerialNumber;

            Объект.FNSendItemCodeData(); // отправка тега маркировки

        КонецЕсли;

14

Mafiozaa

23.10.20

08:43

(13) А пробывал через тест драйвера напрямую отправить код?

15

Kigo_Kigo

23.10.20

08:48

(14) там как то надо открыть чек, загнать туда товар цену количество, только после этого можно попробовать загнать туда маркировку — в лоб, тоже самое что и у тебя — «команда не поддерживается»

16

Mafiozaa

23.10.20

08:51

(15) Теперь и этот вариант откидываю, читал что действительно

Если ПризнВозврата = 0 Тогда

    Объект.Sale();

Иначе

    Объект.ReturnSale();

КонецЕсли;

Что это устаревшая конструкция, и при нем якобы отправка тега не возможна, но при этом нигде не нашел обработки с FNOperation

А пробывал отправлять xehom?

17

Kigo_Kigo

23.10.20

09:10

Вот что надыбал

FNOperation()

убираем из конструкции

Если ПризнВозврата = 0 Тогда

    Объект.Sale();

Иначе

    Объект.ReturnSale();

КонецЕсли;

вместо в начале чека вставляем

Если ПризнВозврата = 0 Тогда

Объект.CheckType= 0; // «0» — продажа, «1» — покупка, «2» — возврат продажи, «3» — возврат покупки.

Иначе

Объект.CheckType= 2;

КонецЕсли;

рез=Объект.OpenCheck();    

Если рез<>0 Тогда

    Сообщить(«НапечататьЧек, ошибка открытия нового чека: «+Объект.ResultCodeDescription);

    рКодОшибки=Объект.ResultCode;

        
КонецЕсли;

потом

Если ПустоеЗначение(СокрЛП(СписотТоваров.Маркировка)) = 0 Тогда

            КМ = СокрЛП(СписотТоваров.Маркировка);

            GTIN = Сред(КМ, 3, 14);                            

            SerialNumber = Сред(КМ, 19, 13);

            
            Объект.Пароль = Пароль;  

            Объект.MarkingType         = 17485//  Это «444D»    

            Объект.GTIN             = GTIN;

            Объект.SerialNumber     = SerialNumber;

            Объект.FNSendItemCodeData();// отправка тега маркировки

        КонецЕсли;

Объект.FNOperation();

18

Mafiozaa

23.10.20

09:18

(17) Хорошо, щас буду пробовать, вперед сделаю, отпишусь, но если вдруг ты скорее, отпишись, будь любезен)

19

Kigo_Kigo

23.10.20

09:28

(18) у меня точка только в 11 откроется, тоже буду пробовать

20

Mafiozaa

23.10.20

09:31

(19) А скинь ссылку где вычитал, пошарю

21

Mafiozaa

23.10.20

09:32

(19) У меня в ваши 11, моя уже закрывается))

23

Kigo_Kigo

23.10.20

09:44

(22) уже все перерабатываю, там я пишу что у меня нигде этот код не появляется, но та ветка в основном о получении и подготовки маркировки, так как у меня не горит, по этому разбираюсь по ходу и не спеша, вот и ваша ветка стала мне полезна

про Объект.FNOperation();

тут http://catalog.mista.ru/1c/articles/617491/

код из 17 можете смело пробовать, только в таблицу СписокТоваров не забудьте добавить «Маркировка», в Чеке в ТЧ колонку «Маркировку», куда загоняйте данные с СканераШК, как разобрать код вы знаете

25

Mafiozaa

23.10.20

09:50

(23) Ну у меня как, когда оформляю чекккм есть реквизит тч кодмаркировки, в него залетает весь код со сканера и там же обрезается все лишнее, в обработку печати приходят уже готовые данные для отправки

26

Kigo_Kigo

23.10.20

09:53

код из 17 сам подготавливает и обрезает, ну как хотите, тогда в печать чека надо передававть 2 параметра плюсом GTIN;  и SerialNumber;

27

Mafiozaa

23.10.20

09:55

(26) Это я вижу что он у вас в обработке уже режет, но почему FNOperation после всех процедур, хотя везде пишут что он должен быть до

28

Kigo_Kigo

23.10.20

10:03

(27) FNOperation() это операция регистрации одной строки одного товара чека

вначале чека

Если ПризнВозврата = 0 Тогда

Объект.CheckType= 0;// «0» — продажа, «1» — покупка, «2» — возврат продажи, «3» — возврат покупки.

Иначе

Объект.CheckType= 2;

КонецЕсли;

рез=Объект.OpenCheck();    

Если рез<>0 Тогда

    Сообщить(«НапечататьЧек, ошибка открытия нового чека: «+Объект.ResultCodeDescription);

    рКодОшибки=Объект.ResultCode;

        
КонецЕсли;

//*************************************

код регистрации товара

//************************************

Если НДСЕсть = 1 Тогд�//Печатаем НДС

            
            // В настройках ФР надо настроить ставки:

            // Налог 1 = 18% — НДС 18%

            // Налог 2 = 10% — НДС 10%

            // Налог 3 = 20% — НДС 20%            

    
            Если СписокТоваров.НДС = 18 Тогда

                Объект.Tax1 = 1;

            ИначеЕсли СписокТоваров.НДС = 10 Тогда

                Объект.Tax1 = 2;

            ИначеЕсли СписокТоваров.НДС = 20 Тогда

                Объект.Tax1 = 3;

            Иначе

                Объект.Tax1 = 0;

            КонецЕсли;

            Объект.Tax2 = 0;

            Объект.Tax3 = 0;

            Объект.Tax4 = 0;

            
            ДлинаСтроки = 36;

        Иначе

            ДлинаСтроки = 0;

        КонецЕсли;  

Если ПустоеЗначение(СокрЛП(СписотТоваров.Маркировка)) = 0 Тогда

            КМ = СокрЛП(СписотТоваров.Маркировка);

            GTIN = Сред(КМ, 3, 14);                            

            SerialNumber = Сред(КМ, 19, 13);

            
            Объект.Пароль = Пароль;  

            Объект.MarkingType         = 1748//  Это «444D»    

            Объект.GTIN             = GTIN;

            Объект.SerialNumber     = SerialNumber;

            Объект.FNSendItemCodeData()// отправка тега маркировки

        КонецЕсли;

Объект.FNOperation();

потом конец цикла

потоом закрываем чек

Объект.FNCloseCheckEx();

    Объект.CloseCheck();

29

Kigo_Kigo

23.10.20

10:06

(27) в 23 посмотрите там код выкладывали, где он должен быть

Процедура ФнОперация(ТипЧека,Цена,Количество,Налог,Сумма, ПризнакСпособаРасчета, ПризнакПредметаРасчета, Наименование)

    FR2.CheckType = ТипЧека;

    FR2.Price = Цена;

    FR2.Quantity = Количество;

    FR2.Tax1 = Налог;

    FR2.Department = 1;

    FR2.Summ1 = Сумма;

    FR2.PaymentTypeSign = ПризнакСпособаРасчета;

    FR2.PaymentItemSign = ПризнакПредметаРасчета;

    FR2.StringForPrinting = Наименование;  

    FR2.FNOperation();  

КонецПроцедуры

30

Kigo_Kigo

23.10.20

10:36

Попробовал с FR2.FNOperation(); не прокатилов в ОФД маркировка не появилась, грусть печаль

31

Mafiozaa

23.10.20

10:43

(30) Я не смог до конца проверить, точка работает, не могу свободно поиграться, а скажи пожалуйста, какая версия драйвера у тебя 4.15 … 829?

Если вдруг добьешь,чирикни

32

Kigo_Kigo

23.10.20

10:54

не, драйвер DrvFR_4_15_821, что то я не нашел 829 на офф сайте штриха

34

Kigo_Kigo

23.10.20

11:03

(33) Посмотрел на точке 829 стоит, ссори, эт у меня на лок машине для тестов 821

35

lodger

23.10.20

11:11

(28) а где FNSendItemCodeData()?

36

Kigo_Kigo

23.10.20

11:27

(35) А повнимательнее посмотреть?

37

Kigo_Kigo

23.10.20

11:34

Вот полный код, что я делаю не так?

Функция ПечататьЧек(Объект, Пароль, СписокТоваров, Получено1, Скидка, ПризнВозврата, НомерСекции, НомерЧека,ТипНалогов)

    
    Если ПризнВозврата = 0 Тогда

        Объект.CheckType= 0// «0» — продажа, «1» — покупка, «2» — возврат продажи, «3» — возврат покупки.

        
        
    Иначе

        Объект.CheckType= 2;

    КонецЕсли;

    рез=Объект.OpenCheck();    

    
    Если рез<>0 Тогда

        Сообщить(«НапечататьЧек, ошибка открытия нового чека: «+Объект.ResultCodeDescription);

        рКодОшибки=Объект.ResultCode;

        
    КонецЕсли;

    
    
    // регистрация товаров

    Объект.TaxType = ТипНалогов;

    РезРегистрация = 1;

    Получено1 = 0;  

    КорректноКудаОтправитьЧек = -1;//-1 не ввден, 1- корректно,0 не корректно

    
    Если ПустоеЗначение(КудаОтправитьЧек) = 0 Тогда

        Если Найти(СокрЛП(КудаОтправитьЧек),»@») <> 0 Тогда

            КорректноКудаОтправитьЧек = 1;

        ИначеЕсли Лев(СокрЛП(КудаОтправитьЧек),2) = «+7» Тогда

            КорректноКудаОтправитьЧек = 1;

        Иначе

            КорректноКудаОтправитьЧек = 0;

            Если Вопрос(«Не корректно введен email или номер телефона клиента, пробить обычный чек?»,4) = 6 Тогда

                КорректноКудаОтправитьЧек = -1;

            Иначе

                Предупреждение(«Проверте  email или номер телефона клиента, номер телефона должен начинаться на +7»);

                Возврат 0;    

            КонецЕсли;

            
        КонецЕсли;

    КонецЕсли;

    Объект.Password          = Пароль;

    Если СокрЛП(Продавец.ИНН) <> «» Тогда

        Объект.TagNumber  = 1203;

        Объект.TagType = 7;

        
        Объект.TagValueStr = СокрЛП(Продавец.ИНН);

        Объект.FNSendTag();

    КонецЕсли;

    СуммаСкидкиНаЧек = 0;

    
    СписокТоваров.ВыбратьСтроки();

    
    Пока СписокТоваров.ПолучитьСтроку() = 1 Цикл

        СтрокаДляПечати = СписокТоваров.ТовНаим;

        Объект.Password          = Пароль;

        Объект.StringForPrinting = Лев(СтрокаДляПечати,48);

        
        Если СуммаСкидки = 0 Тогда

            Объект.Price       = СписокТоваров.Цена;

            Получено1 = Получено1+ СписокТоваров.Цена * СписокТоваров.Количество;

            
        Иначе

            СуммаСкидкиНаЧек  =СуммаСкидкиНаЧек +(СписокТоваров.Цена * СписокТоваров.Количество — СписокТоваров.Сумма);

            ЦенаЦены =Окр(СписокТоваров.Сумма/СписокТоваров.Количество,2);

            Объект.Price             = ЦенаЦены;

            Получено1 = Получено1+ ЦенаЦены * СписокТоваров.Количество;

        КонецЕсли;

        Объект.Quantity          = СписокТоваров.Количество;

        Объект.Department        = НомерСекции;

        НДСЕсть = «»;

        Попытка

            НДС = СписокТоваров.НДС;

            НДСЕсть = 1;

        Исключение

            НДСЕсть = 0;

        КонецПопытки;

        
        Если НДСЕсть = 1 Тогда//Печатаем НДС

            
            // В настройках ФР надо настроить ставки:

            // Налог 1 = 18% — НДС 18%

            // Налог 2 = 10% — НДС 10%

            // Налог 3 = 20% — НДС 20%            

            
            Если СписокТоваров.НДС = 18 Тогда

                Объект.Tax1 = 1;

            ИначеЕсли СписокТоваров.НДС = 10 Тогда

                Объект.Tax1 = 2;

            ИначеЕсли СписокТоваров.НДС = 20 Тогда

                Объект.Tax1 = 3;

            Иначе

                Объект.Tax1 = 0;

            КонецЕсли;

            Объект.Tax2 = 0;

            Объект.Tax3 = 0;

            Объект.Tax4 = 0;

            ДлинаСтроки = 36;

        Иначе

            ДлинаСтроки = 0;

        КонецЕсли;

        Если ПустоеЗначение(СокрЛП(СписокТоваров.Маркировка)) = 0 Тогда

            КМ = СокрЛП(СписокТоваров.Маркировка);

            GTIN = Сред(КМ, 3, 14);                            

            SerialNumber = Сред(КМ, 19, 13);

            
            Объект.Пароль = Пароль;  

            Объект.MarkingType         = 17485;//  Это «444D»    

            Объект.GTIN             = GTIN;

            Объект.SerialNumber     = SerialNumber;

            Объект.FNSendItemCodeData(); // отправка тега маркировки

        КонецЕсли;

        Объект.FNOperation();

        Если Объект.ResultCode <> 0 Тогда

            ОписаниеРезультата = ПолучитьОписаниеРезультата(Объект);

            АннулированиеЧека(Объект, Пароль);

            Сообщить(ОписаниеРезультата);

            Возврат 0;

        КонецЕсли;

        
    КонецЦикла;

    Если константа.ПисатьСуммуСкидкиВЧеке = 1 тогда

        
        СтрокаДляПечати = «Сумма скидки на чек:» + Строка(глФРМ(СуммаСкидкиНаЧек,Валюта,1));

        Объект.Password          = Пароль;

        Объект.StringForPrinting = Лев(СтрокаДляПечати,48);

    Иначе

        СтрокаДляПечати = «__________________________»; //+ Строка(глФРМ(СуммаСкидки,Валюта,1));

        Объект.Password          = Пароль;

        Объект.StringForPrinting = Лев(СтрокаДляПечати,48);

        
    КонецЕсли;

    
    Объект.Password = Пароль;

    Если ВидПлатежа = перечисление.ВидыПлатежа.Нал тогда

        Объект.Summ1    = Получено1;

        Объект.Summ2 = 0;

    Иначе

        Объект.Summ1    = 0;

        Объект.Summ2    = Получено1;

        
        
    КонецЕсли;

    Объект.Summ3    = 0;

    Объект.Summ4    = 0;

    Объект.FNCloseCheckEx();

    Объект.CloseCheck();

    
    Если Объект.ResultCode <> 0 Тогда

        ОписаниеРезультата = ПолучитьОписаниеРезультата(Объект);

        АннулированиеЧека(Объект, Пароль);

        ОтрезатьЧек(Объект, Пароль);

        Сообщить(ОписаниеРезультата);

        Возврат 0;

    КонецЕсли;

    
    Объект.Password = Пароль;

    Объект.GetECRStatus();

    
    Если Объект.ResultCode <> 0 Тогда

        ОписаниеРезультата = ПолучитьОписаниеРезультата(Объект);

        Сообщить(ОписаниеРезультата);

        Возврат 0;

    КонецЕсли;

    
    НомерЧека = Объект.OpenDocumentNumber+?(Объект.ECRAdvancedMode=5,1,0);

КонецФункции

38

lodger

23.10.20

11:43

(37) а. я его после FNOperation искал.

39

Kigo_Kigo

23.10.20

13:07

подниму тему, может кто то что то подскажет?

41

lodger

24.10.20

11:23

(39) из Руководство программиста:

FNSendItemCodeData

ФНОтправитьКТН

Отправляет тег 1162 (Код товарной номенклатуры), привязанный к операции.

Метод должен вызываться только после метода FNOperation.

42

Kigo_Kigo

24.10.20

15:29

(41) ТО есть вот так?

Если ПустоеЗначение(СокрЛП(СписокТоваров.Маркировка)) = 0 Тогда

            КМ = СокрЛП(СписокТоваров.Маркировка);

            GTIN = Сред(КМ, 3, 14);                            

            SerialNumber = Сред(КМ, 19, 13);

            
            Объект.Пароль = Пароль;  

            Объект.MarkingType         = 17485//  Это «444D»    

            Объект.GTIN             = GTIN;

            Объект.SerialNumber     = SerialNumber;

            Объект.FNOperation();

            Объект.FNSendItemCodeData();// отправка тега маркировки

        КонецЕсли;

43

lodger

24.10.20

15:41

Объект.FNOperation();

перед

Если ПустоеЗначение(СокрЛП(СписокТоваров.Маркировка)) = 0 Тогда

44

Mafiozaa

26.10.20

04:55

(42) Приветствую, ну что разобрался? Сижу кручу верчу обработку, у тебя не получилось?

45

Mafiozaa

26.10.20

05:26

(42) Вот нашел такое

Заменить Sale() на FNOperation()

Заменить CloseCheck() на CloseCheckEX()

После этих манипуляций стало ругаться на Неверное значение свойства GTIN. возможно в типах данных что то не то, попробую,отпишусь

46

victuan1

26.10.20

05:48

(45) Ну-ну. Про FNOperation написано еще в (6).

Заменять CloseCheck() на CloseCheckEX() необязательно.

PS. Побежал за покорном))

47

Mafiozaa

26.10.20

05:49

(46) (42)  Привет, было написано да, вот только куда толкать его пришлось искать, ну вручную строкой вбил код, все ушло все четко, щас передам переменную текстом, и все, домучаю)

48

Mafiozaa

26.10.20

05:50

(46) И за твое содействие спасибо, я сегодня думал если не добью, буду тебе в личку строчить, но слава богу не дошло)

49

victuan1

26.10.20

22:19

(48) Ну и отлично, что решилось. Удачи!

50

Pavlik56

14.01.21

19:00

Здравствуйте!

Пожалуйста выложите итоговую версию. Что у Вас получилось. НЕ могу сложить пазл. Задолбала ошибка 55. Где то что-то пропускаю.

С самого начала обращения к драйверу.

52

victuan1

15.01.21

07:18

(50) Там есть бесплатная Демо.

53

Mafiozaa

15.01.21

08:08

(50) Штрих? Версия прошивки?

54

Pavlik56

15.01.21

09:55

Прошивка у меня 2018 года. Вот жду очереди на прошивку 2020.

Заработало. Оказывается ошибка вылазила на эмуляторе. На реальной кассе заработало.

Но всё равно интересно посмотреть на чужой код. У меня еще нет отправки инн кассира и емейла покупателя.

Я имел ввиду не программу итоговую. А код работы с кассой.

Ошибка при выводе чека ККМ в 1С 8: 36h, Ошибка FNOperation: Некорректные параметры в команде для данной реализации

Описание ошибки:
Ошибка возникла внезапно. Т.е. до ее возникновения чеки ККМ печатались. При попытке печати чека ККМ в частности из документа «Оплата от покупателя платежной картой» конфигурации 1С: Управление торговлей 10.3 возникала эта ошибка для отдельно взятого документа, на основании которого документ оплаты был создан.

Найденные решения:

Судя по ошибке — она носит «универсальный» характер, т.е. может возникнуть в любой другой конфигурации 1С, в которой поддерживается работа с торговым оборудованием и ККМ в частности. Поэтому не обращайте внимание на то, что пример приводится в редакции 10.3 управления торговлей. Многие из перечисленных настроек есть и в новой редакции 11.4, и других типовых конфигурациях, поэтому останется только их найти.

Перейдем к сути. Печать чеков работала до определенного момента, когда стала не возможным по причине возникновения ошибки «36h, Ошибка FNOperation: Некорректные параметры в команде для данной реализации». По предварительным предположениям, учитывая, что в документе из ссылок на документы — только заказ покупателя, то при чем тут реализация? Можно подумать, что реализацией при описании ошибки назван любой документ-основание, содержащий данные для печати чека. Тогда, возможно, надо искать причину в самом документе заказ покупателя. Но визуально содержимое выглядело «как всегда», как и в ранее созданных документах, для которых печать чека был выполнен успешно.

1C 8, при печати, выводе чека ккм, 36h, Ошибка FNOperation: Некорректные параметры в команде для данной реализации
Рис. 1. Возникновение ошибки после нажатия на кнопку «Пробить чек» в форме документа «Оплата от покупателя платежной картой».

Ошибка не часто, но встречаемая. Чтобы попытаться понять суть ошибки в соответствии с первыми комментариями обсуждения ошибки на форуме infostart.ru о том, что нужно проанализировать лог кассы, было включено ведение файла .log.

Нажатие на изображении увеличит его
ошибка при пробитии чеков в 1С 8, онлайн касса 36h, ошибка FNoperation
Рис.2. Включение ведения лога в параметрах кассы ККМ в диалоге подключения и настройки торгового оборудования.

После включения настройки «вести лог» на вкладка «Настройка лога» в параметрах ККТ с передачей данных необходимо настроить путь к логу в настройках драйвера.

Нажатие на изображении увеличит его
ошибка при пробитии чека в 1с 8 УТ, управление торговлей, БП, бухгалтерия, КА, комплексная, выдает ошибку 36h fnoperation
Рис. 3. Настройка пути размещения файла лога .log в драйвере ККМ.

Анализ полученного лога после его формирования оказался достаточно проблематичным, т.к. содержал просто огромное количество строк, проанализировать которые без постоянного опыта обслуживания торгового оборудования, не представлялось возможным. Только было отмечено благодаря логу, что после возникшей ошибки, т.е. неудачной попытки печати чека, касса в среде 1С становилась недоступной. Тест подключения возвращал ошибку FFFFFFF8h, connect timed out.

1С 8, устранение, исправление, ошибка кассы штрих-м, Retail 01Ф, 36h fnoperation
Рис. 4. Ошибка «Тест не пройден. FFFFFFF8h, Connect timed out.» после возникновения ошибки «36h, Ошибка FNOperation: Некорректные параметры в команде» в сеансе работы 1С 8.

Но вернуть подключение 1С 8 к кассе ккм позволяло завершение сеанса работы и запуск 1С снова.

1С 8, ошибка 36h, некорректные параметры в команде для данной реализации, ккм штрих-м, Retail 01Ф
Рис. 5. Пример успешного выполнения теста подключения торгового оборудования в форме оборудования.

Но от этого проблема не решалась. Лишь возобновилась возможность снова и снова получать ошибку «36h, Ошибка FNOperation: Некорректные параметры в команде…» при попытке вывести чек для операции безналичной оплаты.

На форуме mista.ru в обсуждении под темой При пробитии чека в 1с УТ ред.11 выдает ошибку 36h предлагалось проверить наличие скидок в документе — они отсутствовали. Так же предлагалось в сумбурной формулировке настроить разбиение строк на 2.

Этого оказалось недостаточно. Окончательную ясность для формулировки «настроить разбиение строк» внесли статьи Ошибка на кассе 36h Штрих и Сумма налога больше суммы регистраций по чеку и/или итога (Атол). УТ 10.3 о том, чтобы изменить «способ форматно-логического» контроля в настройках элемента справочника «Торговое оборудование». Для этого нужно перейти в форму списка справочника «Торговое оборудование» через кнопку «…» ячейки строки колонки «Модель» формы обработки «Подключение и настройка торгового оборудования». 

Нажатие на изображении увеличит его
1С 8, как устранить, убрать, исправить ошибку при пробитии, выводе, печати чека ккм, 36h, ошибка FNOperation: некорректные параметры в команде для   данной реализации
Рис. 6. Порядок перехода к настройке «способ форматно-логического контроля» справочника «Торговое оборудование» в конфигурации 1С: Управление торговлей 8, ред. 10.3, Комплексная автоматизация 1.1

Установка значения «Разделять строки» для настройки «способ форматно-логического контроля» в форме элемента справочника «Торговое оборудование» позволило восстановить дальнейшую работу механизма печати чеков ккм для безналичных оплат.

1C 8, способ форматно-логческого контроля, разделять строки, чтобы устранить, убрать, исправить ошибку, 36h, ошибка FNOperation: Некорректные параметры
Рис. 7. Рабочая настройка способа форматно-логического контроля в значении «Разделять строки» для обхода ошибки «36h, Ошибка FNOperation: Некорректные параметры»

К слову, в других конфигурациях, работающих в режиме управляемого приложения, порядок действий примерно такой же. Переходим в раздел «Администрирование» (или «НСИ и Администрирование» в зависимости от типового решения 1С 8) — «Подключаемое оборудование» — откроется вкладка «Подключение и настройка оборудования». Устанавливаем тип оборудования в значение «ККТ с передачей данных». В списке правой кнопкой мыши для строки нужной модели вызываем контекстное меню и в нем выбираем пункт «Изменить» или, выделив строку, нажимаем клавишу «F2» клавиатуры. В открывшемся окне разворачиваем группу формы «Параметры ККТ» и изменяем значение настройки «способ форматно-логического контроля».

Нажатие на изображении увеличит его
1C 8, где находится настройка способ форматно-логического контроля оборудования в УТ 11, КА 2, БП 3
Рис. 8. На примере конфигурации базы 1С: Бухгалтерия 3.0 показан доступ к настройке способ форматно-логического контроля в списке «Подключение и настройка оборудования» для баз, работающих в режиме управляемого интерфейса.

Таким образом, получается, что драйвер торгового оборудования при такой настройке, если не возможно рассчитать точную сумму по допустимому расхождению, то будет выполнено округление цен по строкам. Одна строка будет  округляться «вверх», а другая – «вниз». И при таком подходе будет выполнено требование, чтобы итоговая сумма была одинаковой, даже при некоторых небольших изменениях стоимости отдельных товаров, например, за счет скидок или дробных значений количества товаров.

Оцените, помогло ли Вам предоставленное описание решения ошибки?




© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.

21-10-2021

Журавлев А.С.
(Сайт azhur-c.ru)

Штрих М. Подключение и настройка торгового оборудования. Сканер, ККТ, весы, эквайринг, принтер этикеток.

Не работает сканер, весы, ККТ и эквайринг, оставляйте заявку в комментариях, либо

— Пишите в

WhatsApp +7(987)-268-84-37

1. Ошибки при сканировании

Слетает галочка на сканере Штрих М Кассир — Запустите программу от имени администратора, настройте и нажмите применить, ок.

После сканирования, приходиться нажимать ШК — Не настроен cканер штрих-кода или сбились настройки сканера.

Неверный формат штрих-кода марки!

Штрих М Кассир 5 код маркировки не прошел проверку неверная марка

Штрих М Кассир 5 код маркировки не прошел проверку некорректная марка

Считанный штрихкод не является кодом маркировки. Отсканируйте код маркировки.

Штрих М Кассир 5. Считанный штрихкод не является кодом маркировки. Отсканируйте код маркировки.

Проверка КМ уже запущена (Код 410)

Процедура проверки КМ уже запущена (Код 401) — выкл. и вкл. ККТ и повторите операцию.

Процедура проверки КМ прервана (Код 403) — нужно при регистрации ККТ указать ИСМ адрес и порт. Настроить адрес ОКП и порт.

Штрих М Кассир 5. Процедура проверки КМ прервана (Код 403).

штрих-м кассир 5 не выводит окно сканирования марки

Запрещена работа с маркированным товарами (Код 406)

Работа с маркированными товарами временно заблокирована! — нужно проверить настройки ИСМ и ОКП.

Ошибка кассы Некорректный код маркировки (Код 409)⁷

Для работы функциональности Маркировка требуется активная подписка на обновления — нужно приобрести подписку.

Введено слишком большое значение. — нужно настроить сканер

Код маркировки не прошел проверку! Некорректный КИЗ мехового изделия — нужно сканировать штрих код КИЗ, а не datamatrix.

Не удалось получить код ЕГАИС из акцизной марки

Штрих М Кассир не пробивает новые акцизные марки — Нужно обновить Штрих М Кассир 5. Изменить настройки сканера.

Кассир 5 не запрашивает акцизную марку

Штрих М Кассир 5 сканер сканирует иероглифы

Штрих М Кассир 5 не сканируется DataMatrix — требуется настройка сканера.

Касса пишет товар со штрихкодом не найден что делать — проверьте выгрузку товара, проверьте штрих код. Все ли совпадает.

Штрих М Кассир не находит весовой штрих код — нужно проверить формат штрих кода на весах и настроить в Штрих М Кассир.

2. Ошибки при продаже

Штрих М Кассир при подборе весового товара в чек попадает 1 кг — нужно корректно настроить формат весового штрих кода.

Товар не может иметь дробного количества.

Штрих М Кассир. Не открывается подбор товаров

Как настроить программу штрих м кассир 5 под ффд 1.2

— Пишите в

WhatsApp +7(987)-268-84-37

Не удалось распределить скидку по позициям — Две организации ИП и ООО. Кассы ЕНВД и онлайн ККТ. Решение: Обновите Штрих М Кассир не ниже версии 5.1.5.17

Перестают запрашиваться акцизные марки после обновления Кассира 5

штрих-м кассир 5 ошибка при продаже сигарет

Ошибка весов: Порт недоступен — проверьте соединение весов, перезапустите программу.

3. Ошибка кассы:

Ошибка кассы Некорректные данные о промежутке времени между фискальными документами! — нужно исправить дату и время в ККТ.

Ошибка кассы Устройство заблокировано! — требуется диагностика ККТ.

В ФН переданы неверная дата или время (Код 122). Отменить чек? — исправьте дату и время на ККТ.

(13) Отсутствуют данные, необходимые для корректного учета в ФН. — требуется обновление ПО ККТ.

Ошибка кассы: Работа с маркированными товарами временно заблокирована! — проверьте настройки ОФД.

Ошибка кассы: Ошибка программирования реквизита 2108 (Код 148). Отменить чек?

Штрих М Кассир 5. Ошибка кассы: Ошибка программирования реквизита 2108 (Код 148). Отменить чек?

Ошибка кассы: Некорректное значение поля items[4].markingCode.type(auto) (Код 501)

Штрих М Кассир 5. Ошибка кассы: Некорректное значение поля items[4].markingCode.type(auto)(Код 501)

Ошибка кассы Реквизит не соответствует установкам при регистрации! — при регистрации ккт нужно указать соответствующие параметры. Напр-р. Продажа подакцизн. товара.

Ошибка кассы Ошибок нет! — снимите галочку Отключаться от ККТ в настройках ККТ.

Ошибка кассы Закрытие чека прервано!

Ошибка кассы Socket Error # 10061 Connection refused

Ошибка кассы Ограничение ресурса ФН!

Ошибка кассы Исчерпан ресурс хранения! — Проверьте связь и настройки ОФД. Нужно передать чеки в ОФД.

Ошибка кассы Исчерпан ресурс хранения!

Ошибка кассы Socket Error # 10061 Connection refused.!

Ошибка установки соединения: Порт занят (Код 3)

Ошибка кассы Соединение не установлено (Код 1)!

Ошибка кассы Нет связи (Код 2)!

Ошибка кассы: Неизвестная ошибка. Отменить чек? — нужно проверить ККТ. Ошибка общего характера.

Ошибка кассы СОМ порт недоступен — Требуется диагностика ПК и настройка кассы

Ошибка кассы Команда выполнена без ошибок! — перезагрузите компьютер, если не помогает, то нужна диагностика для выявления причины поломки.

Ошибка кассы №1: Переполнение диапазона отдела! — Решение: Проверьте карточку номенклатуры, либо секция равна 0 или превышает допустимое значение.

Ошибка кассы Смена превысила 24 часа — Нужно закрыть смену

Ошибка кассы Смена превысила 24 часа

Ошибка кассы Команда не поддерживается в данном режиме! Текущий режим: Закрытая смена — сообщение выходит при попытке повторно закрыть смену. Откройте смену, продолжайте работать.

Не настроена работа с ККМ¹

Не пробивается маркированная обувь на фискальном регистраторе штрих м — нужно проверить версию прошивки и лицензию маркировки в ККТ, а также версию кассовой программы.

— Пишите в

WhatsApp +7(987)-268-84-37

Нет связи с ККМ

Ошибка подключения: -3 Порт не доступен (System Error. Code: 2. Не удается найти указанный файл)! — Нет связи ФР. Проверьте питание ККТ и шнур USB. Выкл. и вкл. ККТ.

штрих м кассир то выбивает чек то нет

Штрих-м Кассир 5 не работает с драйверами АТОЛ ДТО10

Не удалось инициализировать фискальный принтер ATOLKKM.epf: Не удалось загрузить драйвер устройства.

Штрих М Кассир 5 и АТОЛ55ф не печатает без НДС

Не удалось получить дату из ККМ Ошибка кассы не верный дискриптор — Пояснение: Проблема встречается с ККТ Дримкас или ПИРИТ. Обработка «Кристалл Сервис: ККМ «Пирит ФР01К»» через которую подключаются ВикиПринт, не поддерживает работу с двумя логическими устройствами.

Вики Принт 57Ф. Ошибки

Не удалось загрузить обработку «CrystalsPirit.epf:1».

Не удалось загрузить обработку CrystalsPirit.epf:1.

Не удалось инициализировать фискальный принтер «CrystalsPirit.epf: Не удалось инициировать драйвер ККМ.»

Не удалось инициализировать фискальный принтер CrystalsPirit.epf: Не удалось инициировать драйвер ККМ.

Не удалось инициализировать фискальный принтер «ATOLKKM10.epf: Не удалось загрузить драйвер устройства.» — установите драйвер ккт АТОЛ.

Ошибка ККМ При вызове метода РегистрацияПродажи: {ВнешняяОбработка. Shtrih_M_DrvFR. Форма. Поле объект не обнаружено (MeasureUnit) — удалите и переустановите драйвер ККТ.

Не удалось инициализировать фискальный принтер «Strih_M_DrvFR.epf: Не удалось инициировать драйвер ККМ.» — установите драйвер ккт Штрих М.

Переполнение буфера коммуникационного порта — настройте правильно порт и скорость подключения.

После перепрошивки кассы атол 20ф и обновления штрих-м кассир 5, в чеке не печатается буква [M] — обновите Штрих М Кассир до последней версии.

4. Ошибки ЕГАИС

Нет связи с УТМ. Продолжить подбор акцизного алкоголя? — перезагрузите ПК и повторите операцию.

[1] Ошибка при отправке файла в УТМ java.lang. Illegal Argument Exception: org.xml.sax. SAXParse Exception; cvc-pattern-valid: Value ‘7734449770’ is not facet-valid with respect to pattern ‘(d)9)’ for type ‘KP’ — проверьте КПП в настройках Штрих М Кассир в разделе ЕГАИС.

[1] Ошибка при отправке файла в УТМ: Проверка не пройдена: продукция не внесена в поштучный учет. — продукция не числится за организацией и не поступала на торговую точку. Рекомендуется поштучно принимать продукцию со сканированием акцизы.

[1] Ошибка при отправке файла в УТМ Filter — Настройки еще не обновлены — перезагрузите ПК и повторите операцию.

[1] Ошибка при отправке файла в УТМ Сертификат SN: недействительный — нужно продлить ключ ЕГАИС в центре сертификации (Напр.р: где приобретали ключ Рутокен).

[1] Ошибка при отправке файла в УТМ java. lang. IllegalStateException: Расхождение времени чека с текущим временем — перезагрузите ПК и повторите операцию.

[1] Ошибка при отправке файла в УТМ java. lang. IllegalStateException: Лицензия на вид деятельности не действует. — нужно проверить ключ ЕГАИС.

Ошибка чтения файлов на УТМ. Ошибка сервера УТМ. Код статуса: 500 — удалите и переустановите УТМ.(Ошибка в ТП7).

[1] Ошибка при отправке файла ТТ. Ошибка при выполнении POST запроса, код ошибки: 500.

[1]Ошибка при отправке файла в ТТ Невалидные марки: — Обновите настройки УТМ. Проверьте акцизу на сайте ЕГАИС.

[1]Ошибка при отправке файла в ТТ 1: Проверка не пройдена: продукция не поступала в магазин по поштучному учету — Обновите настройки УТМ или переустановить УТМ. Проверьте акцизу на сайте ЕГАИС Проверка статуса штрих-кода.

[9] Ошибка при отправке файла ТТ null — Нужно обновить Штрих М Кассир 5.

Ошибка при отправке файла в ТТ

Ошибка при отправке файла в ТТ. Ошибка при вызове метода контекста (Send):Произошла исключительная ситуация

Сторнировать всю алкогольную продукцию с акцизными марками в чеке?

Сторнировать всю алкогольную продукцию с акцизными марками в чеке?

5. Ошибка с базой

Включилась индексация базы программы штрих кассир — Дождитесь окончания процесса

Пожалуйста, ожидайте и не выключайте компьютер до завершения операции! Индексация…

Ошибка режима доступа к файлу базы данных.

Файл базы данных поврежден.

Ошибка СУБД файл базы данных поврежден Штрих-М Кассир 5
Не запускается Штрих-М Кассир 5

— Пишите в

WhatsApp +7(987)-268-84-37

Ошибка потока. Не запускается 1С⁸

Ошибка SDBL: Таблица или поле Fld1148 не содержится в разделе FROM⁸

Недостаточно памяти²

Не выгружается отчет о продажах (отчет отдела).²

Ошибка формата потока

6. Иные ошибки

Штрих М ТП5. Поле объекта не обнаружено (Certificate) — обновите программу КриптоПРО и плагин КриптоПРО.

24, 12: Поле не найдено ВидыОплат. Номер Банковской Оплаты БПО.⁶

Ожидание файлов отчета о продажах.

Указанный путь к файлам обмена: C:Files не существует

— Пишите в

WhatsApp +7(987)-268-84-37

Штрих М ТП7. Изменились данные по остаткам.⁵

Не удалось сменить разрешение экрана — установите значение частоты — 0.

Штрих-м кассир 5 дублирует нажатие клавиш³

При нажатие клавиши BackSpace удаляет два символа³

На данном рабочем месте не настроена работа в режиме Кассир. Возможность запуска этого режима задается в обработке Подключение торгового оборудования⁴

Как вводить ИНН КассираВидео инструкция

Неверный формат хранилища данных file://C/Users/Админ/AppData/Local/1C/1Cv82/…. — пройдите по этому пути и удалите конечный файл. Далее запустите Штрих М Кассир.

Сбились настройки НДС после замены ФН
(после обновления ПО)
— Нужно настроить НДС в программе кассира или в учетной программе.

Подождите идет загрузка отложенных чеков

Ошибка [2] при запуске программы
Штрих-М Кассир 5

Не найден ключ защиты в программе штрих м кассир

Штрих М Кассир базовая розница 5,2 требует ключ защиты, ключа не было.

Не базовая версия — При запуске выводится ошибка «Не базовая версия», но при отключенном сетевом адаптере запускается.
Решение: Проблема в том, что платформа находит ключ в сети. Отредактируйте файл «…1cv81binconf,nethasp.ini», добавив опцию (скорее всего она закомментирована): NH_USE_BROADCAST = Disabled

Ошибка чтения из реестра — Решение: переустановка 1с

6. Fiscalmaster

Ошибка 51, Некорректные параметры в команде. — обновите ПО ККТ, повторите операцию.

Неверное состояние ФН (Код 117) — нужно проверить состояние ФН в драйвере ККТ.

Полезные заметки:

Фискальный накопитель

Регистрация онлайн касс

Автор: Нуруллин И.Н. Дата: 2017-10-24

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.

Already on GitHub?
Sign in
to your account


Closed

ConsperSerj opened this issue

May 19, 2020

· 136 comments

Comments

@ConsperSerj

Доброе утро, дорогие разработчики.

У меня возникли некоторые проблемы в регистрации чека.

Опишу мои действия и код

Зада следующая. На вход приходят данные о покупке и товарах. Мне нужно провести оплату и распечатать соответствующий чек.

Первое что я делаю я вызываю команду закрытия последнего незакрытого чека и проверяю открыта ли у меня смена, не превысила ли она 24 часа и т.д. Тут все хорошо ибо другие метода все адыкватно работают и не вызывают проблем.

После этого после этого указываю тип чека и печатать ли его и после этого открываю чек

Set_CheckType(OperationTypeEntity.getCode(parameters.operationType)) //указываем тип чека
Set_SkipPrint(print) // признак печати чека

    codeResult = executeCommand(Callable { OpenCheck() }) //открываем чек
    if (codeResult != 0)
        throw CommonFiscalRegistrarException(
            requestGuid = "",
            code = codeResult.toString(),
            message = "Code: $codeResult, Message: Ошибка при открытии чека"
        )

После того как открылся чек я выполняю регистрацию оплат

for (position in parameters.positions) {
Set_CheckType(parameters.operationType.code)
Set_Quantity(position.quantity)
Set_Price(position.pricePerUnit)
Set_Summ1(position.totalPrice ?: -1)
Set_Summ1Enabled(position.totalPrice != -1L) //рассчитывает касса
Set_TaxValueEnabled(true) // TODO должно высчитывать налоги
Set_Tax1(getNDSType(position.vatRate))
Set_Department(1) // номер отдела
Set_PaymentTypeSign(position.method?.code ?: 4) //способ расчета
Set_PaymentItemSign(
getFESettlementSubjects(
position.subject ?: FESettlementSubjects.PRODUCT
)
) // предмет расчета

        Set_StringForPrinting(position.name)

        codeResult = executeCommand(Callable { FNOperation() })
        if (codeResult != 0)
            throw CommonFiscalRegistrarException(
                requestGuid = "",
                code = codeResult.toString(),
                message = "Code: $codeResult, Message: Ошибка при выполнении операции"
            )
        waitForPrinting(this)
    }

После этого готовлю чек на закрытие

Set_Summ1(0) // сдача //TODO как нужно расчитывать
Set_Summ2(parameters.sumByCash) // Наличные
Set_Summ3(parameters.sumByCard) //Электронными
Set_Summ14(parameters.sumByPrepayment) // аванс
Set_Summ15(parameters.sumByPostpayment) // кредит
Set_Summ16(parameters.sumByConsiderations) // встречным предоставлением
Set_TaxType(TaxSystemEntity.getTaxType(parameters.taxSystem)) // Основная система налогообложения

    codeResult = executeCommand(Callable {
        FNCloseCheckEx()
    })
    if (codeResult != 0)
        throw CommonFiscalRegistrarException(
            requestGuid = "",
            code = codeResult.toString(),
            message = "Code: $codeResult, Message: Ошибка при закрытии чека"
        )

    waitForPrinting(this)

И вот тут у меня пачка больших проблем. Все отрабатывает, все печатает. НООО:

  1. При регистрации товаров я указываю налогооблажение и НДС.
    Set_TaxValueEnabled(true) // TODO должно высчитывать налоги
    Set_Tax1(getNDSType(position.vatRate))
    Например у меня один из товаров НДС 10%
    После этого я ожидаю что полученный результат от этого будет лежать в одном из TaxValue или вообще хоть где-то. Но почему то я не могу найти этого и ни где этих вычислений нет

  2. Так же возможно ли чтобы ядро само высчитывало сдачу?

  3. Возможно ли чтобы ядро автоматически сумировало и выполняло вычисления по налогам и суммам оплаты за все товары после того как прошла регистрация товаров? Или все это я должен сам руками высчитывать и перед закрытием чека передавать ядру?

@olefard

  1. Когда устанавливаете Set_TaxValueEnabled(true), это значит, что суммы налогов вы будете считать сами и посчитанную сумму передадите в TaxValue.
    Если считать сами не хотите, то задаете Set_TaxValueEnabled(false), указываете в Set_Tax1 номер налога, и ККТ сама расчитает суммы налогов.

  2. Значение свойств Summ1-Summ3 при закрытии чека немного другое:

  • Summ1 — наличные
  • Summ2 — Электронные
  • Summ3..Summ13 — тоже электронные.
    ККТ Summ2..Summ13 различает и ведет по ним отдельные счетчики, в ФН отправляется их сумма.
    После выполнения FNCloseCheckEx сумму сдачи можно получить Get_Change()

@ConsperSerj

Только на чеке почему то у меня пишется сдата и значение которое после закрытие ложится в Summ1

@ConsperSerj

И какое бы я значение не указывал в Summ1 — например 3000, то и на чеке напишет сдача — 3000

@ConsperSerj

Подскажите пожалуйста как получить дату и время открытия последней смены. Потому что если я пытаюсь дернуть Get_LastSessionDate() — то на выход я получаю 1970 год

@olefard

И какое бы я значение не указывал в Summ1 — например 3000, то и на чеке напишет сдача — 3000

Наверное все оплачиваете безналом, поэтому все наличные возвращаются в виде сдачи.

@ConsperSerj

тогда я еще пачку вопросов подготовлю:

  1. После того как чек закрылся и реаспечатался, мне для наших нужд нужно узнать сколько общая стоимость по чеку была. Методов типа totalSumm я так и не нашел. Не подскажете через что можно получить это?
  2. Я выставил Set_TaxValueEnabled(false) — Следовательно все должно расчитываться автоматом. Но почему такие параметры как Get_TaxValue1() — Get_TaxValue6() — Не заполняются в Соответствии с расчетами по налогам? Или чтобы они там рассчитывались нужно сперва прописывать для них Enable=true?
  3. Для заказчика в приложение мое должно от ядра приходить вот такой параметр
  • @param[machineNumber] Заводской номер автоматического устройства для расчетов. Должен входить в состав кассового чека
  • (БСО) при применении ККТ в автоматическом устройстве для расчетов. Должен быть включен в состав кассового
  • чека (БСО) при его передаче ОФД в электронной форме в случае, если указанный реквизит ранее не был передан
  • ОФД в составе отчета о регистрации или отчета об изменении параметров регистрации.
  • Тэг ФФД: 1036.
  • Номер автомата.
  • Форма: печатная, электронная.
  • Заголовок в печатной форме: «АВТОМАТ».

Но вот что-то я не могу его ни где достать. Не подскажете через что можно дернуть данное значение?
4) Как получить время и дату текущей смена? Я так понял этого нельзя ни как сделать?

@olefard

Возможно будет проще после закрытия чека получить из ФН документ методом FNGetDocumentAsString(выдаст документ в текстовом виде) или FNRequestFiscalDocumentTLV(в двоичном виде).
И из тегов получать все нужные данные.
1020 — итог чека
1102..1107 — суммы налогов
1036 опять же

  1. Как получить время и дату текущей смена? Я так понял этого нельзя ни как сделать?

Можно, но не просто. Проще вам запомнить где-то у себя, когда подали команду «Открыть смену».

@ConsperSerj

Хорошо буду сейчас пробовать. Спасибо

@ConsperSerj

А получить данный документ в формате Json не возможно у вас? Парсить строку разделенную через n очень больно)

@ConsperSerj

И в данном документе нету 1036 кода.

@ConsperSerj

Может быть все эти данные можно как то достать с таблиц в вашей БД?

@olefard

А получить данный документ в формате Json не возможно у вас?

Пока только в таком виде.

И в данном документе нету 1036 кода.

А тег 1001(признак автоматического режима) есть? Может ККТ не зарегистрирован для работы в автоматическом режиме?

Может быть все эти данные можно как то достать с таблиц в вашей БД?

Что имеется в виду под «нашей БД»?

@ConsperSerj

Когда за данными можно слазить вот так
Set_TableNumber(13)
Set_FieldNumber(4)
Set_RowNumber(1)
ReadTable().toLong()

@surfernsk

@olefard

В таблицах как правило настройки ККТ. Чек так точно не достанешь.

  1. Общую стоимость по чеку можно получить, сложив Summ1..Summ16, переданные в команду закрытия чека и вычтя сдачу, полученную после закрытия чека.

  2. Суммы налогов можно получить из денежных регистров командой GetCashRegEx, прочитав их перед закрытием чека. Список регистров можно найти в документации.
    Ориентировочно это регистры 104..119,4200..4207.

  3. Номер автомата можно получить из таблицы 24 поле 1. Но если тега 1036 нет в документе из ФН, не знаю насколько корректно его возвращать. Я бы проверил для каких режимов работы фискализировали ККТ.

@ConsperSerj

@ConsperSerj

Подскажите пожалуйста
Для того чтобы сделать чек коррекции, нужно ли отходить от логики обычного чека?

То есть:
Сперва открывать чек кореекции через FNOpenCheckCorrection()
После в цикле заполнять позиции и выполнять FNOperation():
for (position in parameters.positions) { //регистрируем операции
Set_CheckType(parameters.operationType.code)
Set_StringForPrinting(position.name) // название товара
Set_Quantity(position.quantity)
Set_Price(position.pricePerUnit)
Set_Summ1(position.totalPrice ?: -1)
Set_Summ1Enabled(position.totalPrice != -1L) //рассчитывает касса
Set_TaxValueEnabled(false) // налоги высчитываться буду на стороне ККТ
Set_Tax1(getNDSType(position.vatRate))
Set_Department(1) // номер отдела
Set_PaymentTypeSign(position.method?.code ?: 4) //способ расчета
Set_PaymentItemSign( // предмет расчета
getFESettlementSubjects(
position.subject ?: FESettlementSubjects.PRODUCT
)
)

        codeResult = executeCommand(Callable { FNOperation() })

А после этого выполнять
FNBuildCorrectionReceipt2()

@ConsperSerj

Или тут логика совсем будет другая?

@ConsperSerj

Так же еще вопрос. Как можно получить агента? И в каком виде он отдается?

@ConsperSerj

Так же еще один вопрос всплыл:

  • @param[asAgentTypeOf] Признак проведения расчетов (возможности проведения расчетов) пользователем, являющимся агентом.
  • См. примечание к [FTReceiptPosition].
  • Тэг ФФД: 1222.
  • Данные агента.
  • Форма: печатная, электронная.
  • @param[agentData] Дополнительные сведения о пользователе, являющемся агентом, и о его контрагентах. См. примечание
  • к [FTAgentData].
  • Тэг ФФД: 1223.
  • Данные агента.
  • Форма: печатная, электронная.

Есть вот такие вот поля.
Мне их нужно передавать при выполнении FNOperation. чтобы для каждой позиции можно было указать своего агента. Только в докуентации я про агентов вообще ничего не нашел

@olefard

Для того чтобы сделать чек коррекции, нужно ли отходить от логики обычного чека?

Да, сейчас нужно. Пример чека коррекции.

Агента передаете сами. Через соответсвующие теги, методами FNSendTag и FNSendTagOperation.

@ConsperSerj

Добрый день. Я столкнулся еще с одной проблемой

Мне нужно передавать в позицию 1223 тэг — Дополнительные сведения о пользователе, являющемся агентом, и о его контрагентах.

Они у меня представлюсь из себя вот такое

  • @param[transferOperatorName] Наименование оператора по переводу денежных средств.

  • Тэг ФФД: 1026.

  • Наименование оператора перевода.

  • Форма: печатная, электронная.

  • Заголовок в печатной форме: «ОПЕРАТОР ПЕРЕВОДА».

  • @param[transferOperatorPhones] Номера телефонов оператора по переводу денежных средств.

  • Тэг ФФД: 1075.

  • Телефон оператора перевода.

  • Форма: печатная, электронная.

  • Заголовок в печатной форме: «ТЛФ. ОП. ПЕРЕВОДА».

  • Макс. длина: 19.

  • @param[transferOperatorAddress] Место нахождения оператора по переводу денежных средств.

  • Тэг ФФД: 1005.

  • Адрес оператора перевода.

  • Форма: печатная, электронная.

  • Заголовок в печатной форме: «АДР. ОП. ПЕРЕВОДА».

  • @param[transferOperatorInn] Идентификационный номер налогоплательщика оператора по переводу денежных средств..

  • Если ИНН имеет длину меньше 12 цифр, то он дополняется справа пробелами.

  • Тэг ФФД: 1016.

  • ИНН оператора перевода.

  • Форма: печатная, электронная.

  • Заголовок в печатной форме: «ИНН ОП. ПЕРЕВОДА».

  • @param[payingAgentOperation] наименование операции банковского платежного агента, банковского платежного субагента,.

  • платежного агента или платежного субагента

  • Тэг ФФД: 1044.

  • Операция платежного агента.

  • Необязательный, кроме случаев, когда пользователь является банковским платежным агентом или банковским

  • платежным субагентом.

  • Форма: печатная, электронная.

  • Заголовок в печатной форме: «ОП. АГЕНТА».

  • @param[payingAgentPhones] Номера телефонов платежного агента, платежного субагента, банковского платежного агента,.

  • банковского платежного субагента

  • Тэг ФФД: 1073.

  • Телефон платежного агента.

  • Форма: печатная, электронная.

  • Заголовок в печатной форме: «ТЛФ. ПЛ. АГЕНТА».

  • Макс. длина: 19.

  • @param[paymentOperatorPhones] Номера контактных телефонов оператора по приему платежей.

  • Тэг ФФД: 1074.

  • Телефон оператора по приему платежей.

  • Форма: печатная, электронная.

  • Заголовок в печатной форме: «ТЛФ. ОП. ПР. ПЛАТЕЖА».

  • Макс. длина: 19.
    */
    class FTAgentData @JvmOverloads constructor(

    @SerializedName(«transfer_operator_name»)
    var transferOperatorName: String? = null,

    @SerializedName(«transfer_operator_phones»)
    var transferOperatorPhones: HashSet,

    @SerializedName(«transfer_operator_address»)
    var transferOperatorAddress: String? = null,

    @SerializedName(«transfer_operator_inn»)
    var transferOperatorInn: String? = null,

    @SerializedName(«paying_agent_operation»)
    var payingAgentOperation: String? = null,

    @SerializedName(«paying_agent_phones»)
    var payingAgentPhones: HashSet,

    @SerializedName(«payment_operator_phones»)
    var paymentOperatorPhones: HashSet

)

Если я пытаюсь добавить тег 1223 без значение — то ругается что команда не выполнена из-за отсутствия значения.
Если я как значение передаю строку в виде всех этих параметров через n тоже ошибка. Если я пытаюсь передать как значение json в виде строки тоже самое.
Я пытался передавать значения просто указывая тэги, но тогда они не приходят у меня в ответе

Подскажите пожалуйста как передаются у вас данные по агену?

@ConsperSerj

Еще один важный момент
Если при выполнении опирации FNBuildCorrectionReceipt2 падает ошибка -9
То после чтобы опять взаимодействовать с ядром мне приходится перезагружать кассу

А можно как то кодом опять получить доступ к ядру и чтобы все команды выполнялись

ибо если я просто пробую по получаю всегда код ошибка 97

@swex

тег данные агента(1223) передается как STLV тег. Смотрите справку на метод FNBeginSTLVTag

Если при выполнении опирации FNBuildCorrectionReceipt2 падает ошибка -9

Это странно, нужен лог.

@ConsperSerj

Лог предоставлю в понедельник. А подскажите пожалуйста дока которая на гите она актуальная? Или у вас есть какая то более расширеная документация и более подробная?

@swex

Самая актуальная дока это дока в формате doxygen внутри файла classic_interface.h внутри сборок.

@ConsperSerj

Добрый день. Подскажите пожалуйста

есть вот такой тег

  • @param[payingAgentPhones] Номера телефонов платежного агента, платежного субагента, банковского платежного агента,.
  • банковского платежного субагента
  • Тэг ФФД: 1073.

Это у меня HashSet

Данный тег лежит внутри 1223

Я выполняю следующий код
Set_TagNumber(1223)
var parentId = FNBeginSTLVTag()
Set_TagID(parentId)
Set_TagNumber(1073)
Set_TagType(7)
Set_TagValueBin(«8304057n»)
Set_TagValueLength(«8304057n».length)
FNAddTag()
FNSendSTLVTagOperation()

Но в ответ я получаю
Incorrect command parameters
D/fr_drv_ng: [2020-05-25 10:53:09.790] [8222] [ProtocolV2_0x969f2140 ] [D] commands total: 20, succeed: 19, failed: 1, avg. exec time: 31ms
D/fr_drv_ng: [2020-05-25 10:53:09.791] [8222] [TcpSocketIO_0x96a681b0 ] [D] -> 8F 04 00 15 00 6B 33 B3 7E
D/fr_drv_ng: [2020-05-25 10:53:09.792] [8222] [TcpSocketIO_0x96a681b0 ] [D] <- 8F
[2020-05-25 10:53:09.792] [8222] [TcpSocketIO_0x96a681b0 ] [D] <- 29 00 15 00 6B 00 CA CA D2 3A 20 CD E5 EA EE F0 F0 E5 EA F2 ED FB E5 20 EF E0 F0 E0 EC E5 F2 F0 FB 20 E2 20 EA EE EC E0 ED E4 E5 F4 C4
[2020-05-25 10:53:09.792] [8222] [ProtocolV2_0x969f2140 ] [D] command 6B return code: 0 execution took 0ms
[2020-05-25 10:53:09.792] [8222] [ProtocolV2_0x969f2140 ] [D] commands total: 21, succeed: 20, failed: 1, avg. exec time: 30ms
[2020-05-25 10:53:09.792] [8222] [classic_interface_0x976047c0 ] [D] FNSendSTLVTagOperation() fail
E/fr_drv_ng: [2020-05-25 10:53:09.792] [8222] [classic_interface_0x976047c0 ] [E] ККТ: Некорректные параметры в команде

Каким образом передавать список номеров?

@olefard

FNBeginSTLVTag возвращает код ошибки, как и все остальные методы. ID родительского тега возвращается в свойстве TagID.
Код должен выглядеть так:

Set_TagNumber(1223)
FNBeginSTLVTag()
var parentId = Get_TagID()
Set_TagID(parentId)
Set_TagNumber(1073)
...

@ConsperSerj

А массив номер передавать через Set_TagValueStr?

@olefard

Да, должно быть через Set_TagValueStr
По формату фискальных данных тип тега 1073 — строка(таблица 5) и может повторяться(таблица 19,22).
То есть массив надо передавать через несколько тегов 1073, а в тег 1073 передавать по одному телефону. Формат строки должен быть +{Ц}(таблица 5).

@ConsperSerj

@ConsperSerj

@swex

поле режим работы вообще передается в теле команды пере/регистрации поэтому в таблице поле и не редактируется.

@ConsperSerj

А вот эти тэги 1207,1193,1126,1221 тоже через метод передавать?

@swex

@ConsperSerj

@swex

общая последовательность такая:
запись таблиц,
FNBeginRegistrationReport
FNSendTLV
FNBuildRegistrationReport

@ConsperSerj

И эти теги передаются только через FNSendTLV?

@swex

есть реализации где их можно передать и через таблицы, но передача через теги работает на всех устройствах.

@ConsperSerj

Спасибо. Буду смотреть тогда парсеры которые перегоняют в TVL формат. У вас из под капота такого нет?

@swex

Перегоняют что?
См методы
FNSendTLV
FNSendTag
FNSendTagOperation

сделать STLV тег тоже можно.
см методы:
FNSendSTLVTag
FNSendSTLVTagOperation
FNBeginSTLVTag

@ConsperSerj

Смотрите. Через метод FNSendTLV я пытался передать тэги 1207,1193,1126,1221 — но ядро сказало что неверное значение. Я передавал как int

Как их тогда нужно передавать правильно чтобы ядро не ругалось?

@swex

@ConsperSerj

Ладно буду пробовать. Спасибо

@ConsperSerj

Тогда такой вопрос. Если это тип Byte — то использовать метод Set_TagValueBin() для того чтобы положить значение?

@swex

@ConsperSerj

@ConsperSerj

Подскажите тогда пожалуйста еще вот этот момент
ККТ: Ошибка в TLV (теге, длине или данных) <0x00B9002C: длина меньше допустимой для переданного тега>

Как мне понять какой это параметр?

@ConsperSerj

Еще пожалуйста поясните один момент:
Тег 1056 пытался передать через FNSend получил ошибку
ККТ: Некорректные параметры в команде <0x00330033: тег не может быть отправлен в текущий документ ФН или используйте табл. 13>

Значит я что-то делал не так и нужно юзять FNSendTVL — как вы сказали
Для этого метода нужно сгенерить TLVData в виде — F0h 03h 08h 00h 31h 32h 33h 34h 35h 36h 37h 38h ,где F0h 03h – код тэга, 08h 00h – длина сообщения.

А у вас не предусмотрено, чтобы я просто в TVLData передал значение 1 например и номер тега а он уже сам сгенерит эту последовательность байт?

Или все же нужно писать какой то конвертер?

Или я вообще все не верно делаю?

@swex

тег 1056 передается через саму команду регистрации(это битик в битовом поле режим работы), его не нужно передавать через передачу тегов.
PS: F0h 03h — это не 1056, а 1008.
1008 — это тег типа строка, его можно передать через FNSendTag, как и любой другой тег

@ConsperSerj

Я это скинул как пример формата просто, чтобы выяснить как в него мне конвертнутся из простого значения

Я наверное непонятно задаю вопросы.
1056,1002,1001,1109,1110,1108, 1207,1193,1126,1221 — это список тегов которые я не смогу пока что передать в перерегистрацию

  • Я их пытался передать через таблицу в бд — получил ошибку что поле не может быть релактировано, вы мне объяснили почему так произошло.
  • я пытался передать данные поля через мелом FNSendTag — но я получал по каждому тегу ответ от ядра что неверный параметр передается (хотя я пробовал передавать и как int, как string, byte. Все перепробовал но ошибка одна и та же.)

Вот к сути почему я пишу вам вопросы.
Суть проста. Через какой методы мне нужно передать перечисленные теги что ядро их приняло и не отругало меня??

@ConsperSerj

Может быть все эти теги нужно дожить сперва в какой то родительский тег и все отдавать? Я уже все варианты перебираю, но пока что не проходит. Вот по этой причине и обратился к вам за помощью

@ConsperSerj

Я понял о чем вы говорили. теги 1056, 1002, 1001, 1109, 1110, 1108 — передаются в методе WorkMode — с этим стало все понятно

А как передать теги 1057, 1207, 1193, 1126, 1221? Через WorkModeEx?

@swex

@ConsperSerj

@ConsperSerj

Ребят спасибо за помощь и терпение. Все завелось и я сам разобрался в остальных проблемах

@swex

закрываем, для последующих вопросов создавайте отдельные темы.

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.

Already on GitHub?
Sign in
to your account

Comments

@Commander4ek

при вызове метода печати чека в конечном итоге вылетает 94 ошибка Закрытие чека без позиций

ЛОГИ:

D [INPAS_PAX]: InpasPax::printPurchase start
D [INPAS_PAX]: InpasPax::readIsDocOpened start
D [INPAS_PAX]: InpasPax::readIsDocOpened ECR STATUS 8
D [INPAS_PAX]: InpasPax::cancelDoc start
D [INPAS_PAX]: InpasPax::checkResult checkResult error code: 0
D [INPAS_PAX]: InpasPax::cancelDoc success
D [INPAS_PAX]: InpasPax::printPurchase PURCHASE_TYPE_INPAS_SELL
D [INPAS_PAX]: InpasPax::checkResult checkResult error code: 0
D [INPAS_PAX]: InpasPax::printPurchase OpenCheck() CHECK OPENED
D [INPAS_PAX]: InpasPax::printPurchase Set_TaxType(): 1
D [INPAS_PAX]: InpasPax::printPurchase Is countable: yes ///штучный товар
D [INPAS_PAX]: InpasPax::printPurchase Set_Quantity : 1
D [INPAS_PAX]: InpasPax::printPurchase Set_CheckType : 0
D [INPAS_PAX]: InpasPax::printPurchase Set_Price : 10000
D [INPAS_PAX]: InpasPax::printPurchase Set_Tax1 0
D [INPAS_PAX]: InpasPax::printPurchase Set_MeasureUnit : 0
D [INPAS_PAX]: InpasPax::printPurchase Set_Department : 1
D [INPAS_PAX]: InpasPax::printPurchase Set_Summ1Enabled(false)
D [INPAS_PAX]: InpasPax::printPurchase Set_PaymentTypeSign(4)
D [INPAS_PAX]: InpasPax::printPurchase Set_PaymentItemSign(1)
D [INPAS_PAX]: InpasPax::printPurchase Set_StringForPrinting: Test
D [INPAS_PAX]: InpasPax::printPurchase Set_DivisionalQuantity(false)
D [INPAS_PAX]: InpasPax::checkResult checkResult error code: -9 ///тут вызов FNOperation()
D [INPAS_PAX]: InpasPax::printPurchase PAYMENT_CASH: 100
E [INPAS_PAX]: InpasPax::printPurchase TOTALE PRICE = 100 TOTALE CASH = 100 TOTALE CHANGE = 0
D [INPAS_PAX]: InpasPax::checkResult checkResult error code: 94
D [INPAS_PAX]: InpasPax::setLastErrMsg start
D [INPAS_PAX]: InpasPax::setLastErrMsg lastErrMsg: «Код ошибки 5Eh (94) от ККТ: Неверная операция <0x005E0033: закрытие чека без позиций>»

Можете подсказать что делаю не так?

@surfernsk

@Commander4ek «Код ошибки 5Eh (94) от ККТ: Неверная операция <0x005E0033: закрытие чека без позиций>»
Вроде все в описании ошибки написано.

По ошибке -9 не корректные параметры в команде. Проверьте какие параметры указываете для позиции.

@Commander4ek

я возможно не до конца понимаю как эту позицию добавить, я так понял, что это делает FNOperation(), предварительно заполнив все свойства, который использует данный метод или я ошибаюсь?

@swex

да, всё так. покажите полный лог от открытия чека до закрытия, можно лог драйвера или лог КЯ.

@surfernsk

@Commander4ek все верно, проверьте что именно передаете в параметрах,

@Commander4ek

разобрался, спасибо, проблема была в том что передаются разные значения в Set_CheckType в OpenCheck и ФН методы

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.

Already on GitHub?
Sign in
to your account

Comments

@Commander4ek

при вызове метода печати чека в конечном итоге вылетает 94 ошибка Закрытие чека без позиций

ЛОГИ:

D [INPAS_PAX]: InpasPax::printPurchase start
D [INPAS_PAX]: InpasPax::readIsDocOpened start
D [INPAS_PAX]: InpasPax::readIsDocOpened ECR STATUS 8
D [INPAS_PAX]: InpasPax::cancelDoc start
D [INPAS_PAX]: InpasPax::checkResult checkResult error code: 0
D [INPAS_PAX]: InpasPax::cancelDoc success
D [INPAS_PAX]: InpasPax::printPurchase PURCHASE_TYPE_INPAS_SELL
D [INPAS_PAX]: InpasPax::checkResult checkResult error code: 0
D [INPAS_PAX]: InpasPax::printPurchase OpenCheck() CHECK OPENED
D [INPAS_PAX]: InpasPax::printPurchase Set_TaxType(): 1
D [INPAS_PAX]: InpasPax::printPurchase Is countable: yes ///штучный товар
D [INPAS_PAX]: InpasPax::printPurchase Set_Quantity : 1
D [INPAS_PAX]: InpasPax::printPurchase Set_CheckType : 0
D [INPAS_PAX]: InpasPax::printPurchase Set_Price : 10000
D [INPAS_PAX]: InpasPax::printPurchase Set_Tax1 0
D [INPAS_PAX]: InpasPax::printPurchase Set_MeasureUnit : 0
D [INPAS_PAX]: InpasPax::printPurchase Set_Department : 1
D [INPAS_PAX]: InpasPax::printPurchase Set_Summ1Enabled(false)
D [INPAS_PAX]: InpasPax::printPurchase Set_PaymentTypeSign(4)
D [INPAS_PAX]: InpasPax::printPurchase Set_PaymentItemSign(1)
D [INPAS_PAX]: InpasPax::printPurchase Set_StringForPrinting: Test
D [INPAS_PAX]: InpasPax::printPurchase Set_DivisionalQuantity(false)
D [INPAS_PAX]: InpasPax::checkResult checkResult error code: -9 ///тут вызов FNOperation()
D [INPAS_PAX]: InpasPax::printPurchase PAYMENT_CASH: 100
E [INPAS_PAX]: InpasPax::printPurchase TOTALE PRICE = 100 TOTALE CASH = 100 TOTALE CHANGE = 0
D [INPAS_PAX]: InpasPax::checkResult checkResult error code: 94
D [INPAS_PAX]: InpasPax::setLastErrMsg start
D [INPAS_PAX]: InpasPax::setLastErrMsg lastErrMsg: «Код ошибки 5Eh (94) от ККТ: Неверная операция <0x005E0033: закрытие чека без позиций>»

Можете подсказать что делаю не так?

@surfernsk

@Commander4ek «Код ошибки 5Eh (94) от ККТ: Неверная операция <0x005E0033: закрытие чека без позиций>»
Вроде все в описании ошибки написано.

По ошибке -9 не корректные параметры в команде. Проверьте какие параметры указываете для позиции.

@Commander4ek

я возможно не до конца понимаю как эту позицию добавить, я так понял, что это делает FNOperation(), предварительно заполнив все свойства, который использует данный метод или я ошибаюсь?

@swex

да, всё так. покажите полный лог от открытия чека до закрытия, можно лог драйвера или лог КЯ.

@surfernsk

@Commander4ek все верно, проверьте что именно передаете в параметрах,

@Commander4ek

разобрался, спасибо, проблема была в том что передаются разные значения в Set_CheckType в OpenCheck и ФН методы

  

kupec

05.10.21 — 11:32

Доброго дня, кто то делал для ШТРИХа передачу маркировки по молочке?

Для табака у меня сделано вот так

            FR.Password=ПарольККМ(Кассир);

            //Тип маркировки товара.

            FR.MarkingType=17485;    

            //Код маркировки товара.

            FR.GTIN=Лев(ИДМаркировка,14);                                                                  

            FR.SerialNumber=Сред(СокрЛП(ИДМаркировка),15,7);                          

            FR.FNSendItemCodeData();                              

А для молочки как делать? Передавать все символы которые до символа с кодом 29, начиная с 17 символа?, так как первые 16 это GTIN и есть?

  

Злопчинский

1 — 05.10.21 — 12:20

гтин не 16. гтин 12/13/14

  

kupec

2 — 05.10.21 — 12:33

0104607004892936215yQnIO #29 93FXLQ #13

т.е. вот от этого ШК отделяю первые 2 символа — 01 и остальное как раз и получается 14 символьный GTIN?

  

Злопчинский

3 — 05.10.21 — 12:34

типа да

  

kupec

4 — 05.10.21 — 12:38

ну и получается тогда что после откидываем 21 и перед #29 первые символы (6 штук) это и есть серийник?

  

victuan1

5 — 05.10.21 — 17:22

(0) Я делал. Для какой версии ФФД нужно?

  

victuan1

6 — 05.10.21 — 17:24

ГТИН всегда 14 символов (для всех товарных групп), а Серийник у молочки всегда 6 символов:

«01 + GTIN (14 chars) + 21 + СерийныйНомер (6 chars) + 93 + КодПроверки (4 chars)»

  

victuan1

7 — 05.10.21 — 17:26

Пример 1:

Считанная бинарная последовательность: 010460043993125621JgXJ5.Tu001d8005112000u001d930001u001d923zbrLA==u001d24014276281.

Символ FNC1 по стандарту GS1 в примере обозначается как «u001d».

Выделенная последовательность для передачи в значение реквизита «код товара» (тег 1162): 04600439931256 & JgXJ5.T & 112000.

04600439931256 — представляется в виде 6-байтного hex: 04h 2Fh lFh 96h 81h 78h.

JgXJ5.T — кодируется в набор байт hex, интерпретируя символы согласно ASCII таблицы: 4Ah 67h 58h 4Ah 35h 2Eh 54h.

112000 — кодируется в набор байт hex, интерпретируя символы согласно ASCII таблицы: 31h 31h 32h 30h 30h 30h.

Значение реквизита «код товара» (тег 1162): 44h 4Dh 04h 2Fh 1Fh 96h 81h 78h 4Ah 67h 58h 4Ah 35h 2Eh 54h 31h 31h 32h 30h 30h 30h.

  

kupec

8 — 06.10.21 — 10:16

(5) сейчас все кассы 1.05 или 1.1, в течении дня сегодня будут менять на одной из касс на 1.2, так что на данный момент актально для двух вариантов.

  

NorthWind

9 — 06.10.21 — 10:22

(2) 0104607004892936215yQnIO #29 93FXLQ #13

дело в том, что если у вас AI фиксированного размера (а 01, если я верно помню, всегда 14, т.е. фиксированная), то FNC1 необязателен.

Так что в данном случае у вас

(01)04607004892936

(21)5yQnIO #29 93FXLQ #13

  

NorthWind

10 — 06.10.21 — 10:23

в молочке, наверно, еще дата изготовления как минимум должна быть. Тут только EAN13 и серийник от честного знака…

  

victuan1

11 — 07.10.21 — 06:33

(10) Нет, не будет даты изготовления в КМ. Отказались от нее в ЧЗ.

  

victuan1

12 — 07.10.21 — 07:07

(9) Не совсем так:

Если ФФД 1.05/1.1 то в ОФД должно уйти: 4607004892936 5yQnIO

Если ФФД 1.2, то в ОФД уходит: 01 04607004892936 215yQnIO #29 93FXLQ

Буквально в конце сентября я прошел проверочные испытания по молочке своего ПО в Честном ЗНАКе именно по этому сценарию (по другим сценариям мое ПО не аккредитовали бы).

  

kupec

13 — 08.10.21 — 10:05

(12) каким же образом мне используя 1.2 передать тэги? Сейчас сделано вот так

FR.Password=ПарольККМ(Кассир);

            //Тип маркировки товара.

            FR.MarkingType=17485;    

            //Код маркировки товара.

            FR.GTIN=Лев(ИДМаркировка,14);                                                                  

            FR.SerialNumber=Сред(СокрЛП(ИДМаркировка),15,7);                          

            FR.FNSendItemCodeData();        

Но почему то теперь это не проходит, ругается драйвер

Код ошибки 51 Некорректные параметры в команде

  

victuan1

14 — 08.10.21 — 11:40

(13) Эти методы для ФФД 1.05/1.1.

Для 1.2 всё по другому.

  

victuan1

15 — 08.10.21 — 11:45

Чтобы понять насколько всё сложно и заморочено в плане маркировки на ФФД 1.2, почитайте схемы интеграции:

http://fs.atol.ru/_layouts/15/atol.templates/Handlers/FileHandler.ashx?guid=59712437-d622-458c-a0e5-98e4e5e2cdfb&webUrl=

Это для Атола, но у Штрих-м аналогично (т.к ФН-М тот же самый).

  

kupec

16 — 08.10.21 — 11:48

Правильно ли я понимаю, что перед тем как продать маркированный товар необходимо его сначала проверить через драйвер. И после получения ответа только совершать передачу тэга?

  

victuan1

17 — 08.10.21 — 11:48

У меня несколько дней ушло только на переписку с техподдержкой Штрих-М, чтобы понять как всё это увязать в коде для их драйвера. Некоторые вещи не документированы в их документации.

Например, кто знает как пользоваться методом FNUserAttribute? Манулов по этому методу ноль.

  

victuan1

18 — 08.10.21 — 11:48

(16) Правильно.

  

kupec

19 — 08.10.21 — 11:50

(18) т.е. без проверки вообще никак не обойтись?

  

victuan1

20 — 08.10.21 — 11:54

(19) Никак, т.к. железно зашито на уровне ФН-М. Я пробовал.

  

kupec

21 — 08.10.21 — 12:27

ну вот допустим считанный код вот такой

0104601216012779215XIPBe<0x1D>931eil

FNCheckItemBarcode

Что передавать в BarCode ? Весь целиком или только GTIN?

  

kupec

22 — 08.10.21 — 12:31

я что не пробую проверять у меня на все один ответ

Статус локальной проверки    : 0

  «код маркировки не может быть проверен фискальным накопителем с использованием ключа проверки КП»

Результат локальной проверки : 1, КМ данного типа не подлежит проверке в ФН

Распознанный тип КМ          : 255, неизвестное значение

  

kupec

23 — 08.10.21 — 12:33

Статус локальной проверки    : 0

  «код маркировки не может быть проверен фискальным накопителем с использованием ключа проверки КП»

Результат локальной проверки : 1, КМ данного типа не подлежит проверке в ФН

Распознанный тип КМ          : 5, КМ со значением кода проверки длиной 4 символа, не подлежащим проверке в ФН

Код ответа ФН на команду онлайн-проверки: 0, Ошибок нет

Результат проверки КМ        : 15

  «код маркировки проверен»

  «результат проверки КП КМ положительный»

  «проверка статуса ОИСМ выполнена»

  «от ОИСМ получены сведения, что планируемый статус товара корректен»

  «результат проверки КП КМ и статуса товара сформирован ККТ, работающей в режиме передачи данных»

Реквизиты ответа сервера     : 42 08 04 00 4C 10 60 61 39 08 01 00 00 D5 07 01 00 0F 3D 08 01 00 01 34 08 01 00 05

Вот что удалось получить

  

victuan1

24 — 08.10.21 — 14:09

(21) Весь целиком, а последовательность <0x1D> нужно перед этим заменить на символ с кодом 29:

КМ = СтрЗаменить(КМ,»<0x1D>»,Симв(29));

(23) Результат проверки КМ        : 15

означает, что всё хорошо, [М+]

  

kupec

25 — 08.10.21 — 14:22

(24) каким образом читать данные в ПО? Какие там команды или атрибуты? Где про это можно почитать? Что то руководство программиста они давненько не обновляли

  

kupec

26 — 08.10.21 — 14:29

(25) а если у меня со сканера ШК не приходит такая последовательность? Это критично или нет?

  

victuan1

27 — 08.10.21 — 14:32

(25) https://exam.shtrih-m-partners.ru/base/ — Общее для ККТ — драйвера. Там же обновленная документация.

(26) Какая приходит?

  

kupec

28 — 08.10.21 — 15:05

Приходит например вот

0104601216012779215XIPBe<0x1D>931eil

  

kupec

29 — 08.10.21 — 15:07

(27) руководство прошлогоднее от 16 ноября 2020

  

victuan1

30 — 08.10.21 — 15:49

(29) Я по нему и работал. Новее нет.

(28) См. (24)

  

kupec

31 — 08.10.21 — 15:52

А как же теперь передавать данные о ШК ЕГАИС? У меня тоже вылезает ошибка 51, некорректные парамемтры в команде

  

victuan1

32 — 08.10.21 — 15:53

(31) ШК ЕГАИС не передаем в ОФД (и никогда не нужно было передавать в ОФД).

Их нужно передавать через УТМ запросом версии Cheque или ChequeV3.

  

victuan1

33 — 08.10.21 — 15:54

  

kupec

34 — 08.10.21 — 16:00

Драйвер есть последний, к нему описания нет или я слепой и не могу найти

  

victuan1

35 — 08.10.21 — 16:07

(34) Я не пользовался описанием к новому драйверу — не подскажу где искать.

  

brainguard

36 — 08.10.21 — 16:09

(34) К последнему драйверу подходит предыдущее описание. Там ничего не меняли, только ошибки фиксили

  

kupec

37 — 08.10.21 — 16:42

(36) Поделитесь пожалуйста мне на почту руководством, которое у вас есть. Заранее благодарю

  

victuan1

38 — 08.10.21 — 17:08

(37) Я вам дал ссылку в (27) — берите оттуда.

  

arian_

39 — 11.10.21 — 18:06

Кто-нибудь уже запустил для 1с 7.7 передачу маркированного товара для ФФД 1.2. Получилось у кого-нибудь?

  

Злопчинский

40 — 11.10.21 — 18:22

(39) а шо?

  

arian_

41 — 11.10.21 — 18:30

(40) Хотел узнать какую версию драйвера использовали 4.15 или 5.16? И куда теперь криптохвост добавлять в SerialNumber или какой то отдельный параметр?

  

victuan1

42 — 12.10.21 — 05:48

(39) Получилось.

(41) На обоих версиях драйверов работает.

«И куда теперь криптохвост добавлять в SerialNumber или какой то отдельный параметр?» У-у, как запущено… а текущую тему прочитать с начала, не судьба? В (27) ссылка откуда скачать документацию по Штрих-М.

  

arian_

43 — 12.10.21 — 06:34

(42) Ну так это было вчера. Я разобрался. Сначала проверяем марку с криптохвостом, а затем выводим вопрос пользователю от подтверждении пользователю пробития чека, если марка не прошла проверку.

Вот так:

меняем

……..

глФР.MarkingType=17485;

глФР.GTIN=ТЗначМарки.Джитин;

глФР.SerialNumber=ТЗначМарки.Серийник;

глФР.FNSendItemCodeData();

……..

на

qr=»010460702776893521000000013JBSF<0x1D>91FFD0<0x1D>92dGVzdGifC5FkjETjJhotf7m8rsjQHeoNyxcpaEIZfDQ=»;

qr=СтрЗаменить(qr,»<0x1D>»,Симв(29));

глФР.BarCode = qr;

глФР.ItemStatus = 1;

глФР.FNCheckItemBarcode();

//Дальше ККМ возвращает ряд тэгов с результатами проверки

глФР.FNAcceptMarkingCode();

глФР.Barcode = qr;

глФР.FNSendItemBarcode();

Правильно?

Я запутался какие тэги в ФФД 1.2 необходимо еще передать в ККМ или этого достаточно для того, чтобы чек пробился правильно? При условии что товар продается целыми шиуками.

  

victuan1

44 — 12.10.21 — 06:53

(43) Желательно еще учесть обработку ошибок и передачу меры кол-ва товара.

  

arian_

45 — 12.10.21 — 08:11

(44) я так понимаю передача меры количества товара имеет смысл при частичном выбытии товара. Например продаем 1 сигарету из пачки.

  

victuan1

46 — 12.10.21 — 09:45

(45) Я имел в виду тег 1197, он обязательный по ФФД 1.2 для любого типа товаров.

  

arian_

47 — 12.10.21 — 09:48

(46) Читаю изменения в ФФД 1.2 :Единица измерения предмета расчета (тег 1197) изменена на новый реквизит «мера количества предмета расчета» (тег 2108)

  

arian_

48 — 12.10.21 — 09:50

Тэг 1212, который для штриха PaymentItemSign. Раньше, если немаркированный товар, то просто ставили 1. а сейчас если товар не маркированный оставлять 1, а если маркированный, то 33 или он автоматом поставится, если у видит что есть КМ?

  

victuan1

49 — 12.10.21 — 10:08

(47) Верно, теперь это тег 2108.

  

victuan1

50 — 12.10.21 — 10:09

(48) Я ставлю 33 программно. Автоматом надо выбирать из двух значений 31 и 33, думаю автомат не сработает.

  

arian_

51 — 12.10.21 — 10:15

(49) Так вот я не пойму в документации написано: MeasureUnit Мера количества предмета расчета (ФФД 1.2):

0 – Применяется для предметов расчета, которые могут быть реализованы поштучно или единицами;

…….

255 – Применяется при использовании иных единиц измерения

Скажем продаем ботинки или одежду. Что в этот тэг записывать?

  

victuan1

52 — 12.10.21 — 10:18

(51) записывать 0.

  

arian_

53 — 12.10.21 — 10:20

(50) А если товар не маркируемый записываем 1? Потому что 31 и 33 это всё для маркируемого

  

arian_

54 — 12.10.21 — 10:21

(52) это также подходит и к немаркируемому товару?

  

arian_

55 — 12.10.21 — 10:24

Действительно написано, что не передача тэгов 1212 и 2108 рассматривается как административное правонарушение. Но если это немаркируемый товар. Тэги эти тоже обязательны для передачи или нет?

  

victuan1

56 — 12.10.21 — 10:26

(53) 1, если это не подакцизный товар. Здесь подробнее https://disk.yandex.ru/i/wx7PyIbo3U57Vh

  

victuan1

57 — 12.10.21 — 10:27

(55) Да, тоже.

  

victuan1

58 — 12.10.21 — 10:27

  

arian_

59 — 12.10.21 — 10:29

Разобрался. Спасибо!

  

kupec

60 — 12.10.21 — 16:53

глФР.BarCode = qr;

глФР.ItemStatus = 1;

глФР.FNCheckItemBarcode();

Если я вот так сделаю первый раз при подключении к ККМ, то повторно уже не получается, выдает ошибку что не верные реквизиты. Как сделать так, что бы при одном сеансе связи с ККМ данный способ проверки работал всегда, может надо какую то команду подать, что то типа очистки буфера проверки, вроде как то так она называется.

  

  

arian_

61 — 12.10.21 — 21:12

(60) После всего этого делаете вот это:

глФР.FNAcceptMarkingCode();

глФР.Barcode = qr;

глФР.FNSendItemBarcode();

глФР.FNCloseCheckEx();

  

arian_

62 — 12.10.21 — 21:14

То есть это в цикле перебора табличной части

глФР.FNAcceptMarkingCode();

глФР.Barcode = qr;

глФР.FNSendItemBarcode();

А в конце при пробития чека

глФР.FNCloseCheckEx();

  

arian_

63 — 12.10.21 — 22:55

(60) А разве при закрытии чека глФР.FNCloseCheckEx(); буфер ККМ не должен очищаться сам?

И для чего нужна такая команда: FNConfirmNotificationRead ФНПодтвердитьВыгрузкуУведомления

Подтверждение выгрузки уведомления (ФФД 1.2)

У меня пока не обновлена прошивка, поэтому не могу проверить. Возможно victuan1 поможет.

  

kupec

64 — 13.10.21 — 13:25

(61) (62) (63) в тесте драйвера все работает, смотрел лог файл, ничем вроде не отличается мой алгоритм работы и алгоритм тестдрайвера. И вот как раз таки в нем все работает, а в моем ПО не хочет. Тут тогда другой вопрос встает. Как в цикле перебирать FNCheckItemBarcode() если после первой проверки у меня вылетает ошибка на втором. Что то мне вот этот момент не понятен

  

arian_

65 — 13.10.21 — 15:30

(64) Покажите код формирования чека.

  

kupec

66 — 14.10.21 — 16:24

(65) я чек не формирую, я сначала в программе просто пытаюсь получить результат проверки марки

    FR.Password=30;

    FR.ItemStatus=1;

    FR.CheckItemMode=0;

    FR.Barcode=СокрЛП(ДанныеДляПроверки);

    FR.FNCheckItemBarcode();

    Если ОтветДрайвера(,»Проверка КМ»)<>0 Тогда

        Возврат;

    КонецЕсли;

Естественно сначала подключаюсь к ККМ. Так вот…первый раз код проходит, второй раз уже выдает ошибку не верные реквизиты. Если переподключиться к ККМ, то проверка первый раз опять проходит, ну а на второй опять ошибка

  

arian_

67 — 15.10.21 — 13:56

Попробуйте для штучного товара:

        FR.Password=30;

    Если ВидОперации=Перечисление.ВидыОперацийЧекККМ.Чек Тогда

        FR.CheckType=0;

    ИначеЕсли ВидОперации=Перечисление.ВидыОперацийЧекККМ.ЧекНаВозврат Тогда

        FR.CheckType=2;

    КонецЕсли;

    

    ВыбратьСтроки();

    Пока ПолучитьСтроку()>0 Цикл     

            FR.BarCode = СтрЗаменить(КМ,»<0x1D>»,Симв(29));; // реквизит табличной части;

        FR.ItemStatus = 1; // Планируемый статус — штучный товар, Реализован

        FR.CheckItemMode = 0; //полная проверка (локальная проверка ФН и проверка через ОФД

        FR.FNCheckItemBarcode(); //Проверка штрих кода GS1

        

        //Выводим данные проверки для контроля. Здесь же можно указать проверку условия принятия или не принятия кассиром решения об пробитии каждой позиции чека

        Сообщить(«Статус локальной проверки: «+FR.CheckItemLocalResult);

        Сообщить(«Причина, по которой не была проведена локальная проверка: «+FR.CheckItemLocalError);

        Сообщить(«Распознанный тип КМ, (Тег 2100 ФФД): «+FR.MarkingType2);

        Сообщить(«Код ответа ФН на команду онлайн-проверки: «+FR.KMServerErrorCode);

        Сообщить(«Результат проверки КМ. (Тег 2106 ФФД): » + FR.KMServerCheckingStatus);

        FR.FNAcceptMarkingCode(); //принять введеный код марки

        

        FR.StringForPrinting=печнаим;

        FR.Quantity=1;

        FR.Tax1=0;

        FR.Price=Окр(Сумма/Количество, 2);

        FR.PaymentTypeSign=4;

        FR.PaymentItemSign=31; //1-если не маркируемый и 33, если маркируемый и акцизный, 31 — маркируем безакцизный

        FR.MeasureUnit = 0;

        

        // Передаем Номер ГТД согласно формату ФФД 1.1

        FR.TagNumber = 1231;

        FR.TagType = 7;

        FR.TagValueStr = СокрЛП(Строка(Номенклатура.НомерГТД.Наименование));

        FR.FNSendTagOperation();

        

        // Передаем Код страны происхождения согласно формату ФФД 1.1

        FR.TagNumber = 1230;

        FR.TagType = 7;

        FR.TagValueStr = СокрЛП(Строка(Номенклатура.СтранаПроисхождения.Код));

        FR.FNSendTagOperation();    

        FR.FNOperation();

        

        FR.BarCode = СтрЗаменить(КМ,»<0x1D>»,Симв(29));; // реквизит табличной части;

                  FR.FNSendItemBarcode(); //привязываем марку к позиции

    КонецЦикла;

    

    //Отправляем чек на электронную почту

    Если СокрЛП(ТелПочта)<>»» Тогда  

        FR.CustomerEmail=СокрЛП(ТелПочта);

        FR.FNSendCustomerEmail();

    КонецЕсли;

    //    Закрытие чека

    FR.Password=30;

    FR.StringForPrinting=»================================================»;

    FR.FNCloseCheckEx();

    ОтветДрайвера();

    Сообщить(«Результат: «+Строка(Result));

    Сообщить(«Ошибка параметра: «+Строка(ОшибкаПараметра));

  

arian_

68 — 15.10.21 — 13:58

печнаим — это наименование Номенклатуры

  

NikeArz

69 — 15.10.21 — 15:11

У меня все работает для штучного товара

пробовал на сигаретах и автошинах, до обуви руки не дошли

Конфигураци 1С самописная

Функция ОперацияПроверитьКодМаркировки(Объект, НомерЛУ, Пароль, СтруктураКМ)

    
    Результат = «»;

    

    Если Объект = Неопределено Тогда

        Результат = «- Торговое оборудование не подключено.»;

        СтруктураКМ.КодПроверен = 3;

        СтруктураКМ.ОтветПроверки = «- Проверка КМ не выполнена.»;

        Возврат Результат;

    КонецЕсли;

    

    Объект.LDNumber = НомерЛУ;

    Объект.SetActiveLD();

    Если Объект.ResultCode <> 0 Тогда

        Результат = Объект.ResultCodeDescription;

        СтруктураКМ.КодПроверен = 3;

        СтруктураКМ.ОтветПроверки = «- Проверка КМ не выполнена.»;

        Возврат Результат;

    КонецЕсли;

    

    Объект.Password = Пароль;

    Объект.Connect();

    Если Объект.ResultCode <> 0 Тогда

        Результат = Объект.ResultCodeDescription;

        СтруктураКМ.КодПроверен = 3;

        СтруктураКМ.ОтветПроверки = «- Проверка КМ не выполнена.»;

        Возврат Результат;

    КонецЕсли;

    

    Объект.GetDeviceMetrics();

    Если Объект.ResultCode <> 0 Тогда

        Результат = Объект.ResultCodeDescription;

        Объект.Disconnect();

        СтруктураКМ.КодПроверен = 3;

        СтруктураКМ.ОтветПроверки = «- Проверка КМ не выполнена.»;

        Возврат Результат;

    КонецЕсли;

    
    Модель = Объект.UModel; //Объект.УМодельУстройства

    

    мРезультатПроверкиСервером     = Неопределено;

    мСтатусПроверкиСервером     = Неопределено;

    

    //************************************************************

    Объект.Password         = Пароль;

    Объект.BarCode             = СтруктураКМ.КодМаркировки; //Код записывается как читается со сканера с символом разделителем символ(29)

    Объект.ItemStatus         = СтруктураКМ.СтатусОперации; // 1 продажа, 3 — возврат

    Объект.CheckItemMode     = 0;

    Объект.TLVDataHEX         = «»;

    Объект.FNCheckItemBarcode();

    Если Объект.ResultCode <> 0 Тогда

        Результат = Объект.ResultCodeDescription;

        Объект.FNDeclineMarkingCode(); //отвергнуть код маркировки

        СтруктураКМ.КодПроверен = 3;

        СтруктураКМ.ОтветПроверки = «- Проверка КМ не выполнена. Код отвергнут.»;

        Объект.Disconnect();

        Возврат Результат;

    КонецЕсли;

    

    мСтатусПроверкиСервером     = Объект.KMServerErrorCode;

    мРезультатПроверкиСервером     = Объект.KMServerCheckingStatus;

    Если мРезультатПроверкиСервером = 15 Тогда

        СтруктураКМ.КодПроверен = 0; // 0- М+ 1- М 2- М-

        СтруктураКМ.ОтветПроверки = «»;

        Объект.FNAcceptMarkingCode(); //принять код маркировки

    ИначеЕсли мРезультатПроверкиСервером = 7 Тогда

        СтруктураКМ.КодПроверен = 2;

        СтруктураКМ.ОтветПроверки = «Проверка КП КМ выполнена с положительным результатом, статус товара у ОИСМ некорректен»;

        Объект.FNAcceptMarkingCode(); //принять код маркировки

    ИначеЕсли мРезультатПроверкиСервером = 5 Тогда

        СтруктураКМ.КодПроверен = 2;

        СтруктураКМ.ОтветПроверки = «Проверка КП КМ выполнена с отрицательным результатом, статус товара у ОИСМ некорректен»;

        Объект.FNAcceptMarkingCode(); //принять код маркировки

    ИначеЕсли мРезультатПроверкиСервером = 19 Тогда

        СтруктураКМ.КодПроверен = 1;

        СтруктураКМ.ОтветПроверки = «Проверка КП КМ выполнена в ФН с положительным результатом, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)»;

        Объект.FNAcceptMarkingCode(); //принять код маркировки

    ИначеЕсли мРезультатПроверкиСервером = 17 Тогда

        СтруктураКМ.КодПроверен = 2;

        СтруктураКМ.ОтветПроверки = «Проверка КП КМ выполнена в ФН с отрицательным результатом, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)»;

        Объект.FNAcceptMarkingCode(); //принять код маркировки

    ИначеЕсли мРезультатПроверкиСервером = 16 Тогда

        СтруктураКМ.КодПроверен = 1;

        СтруктураКМ.ОтветПроверки = «Проверка КП КМ не выполнена, статус товара ОИСМ не проверен (ККТ функционирует в автономном режиме)»;

        Объект.FNAcceptMarkingCode(); //принять код маркировки

    ИначеЕсли мРезультатПроверкиСервером = 3 Тогда

        СтруктураКМ.КодПроверен = 1;

        СтруктураКМ.ОтветПроверки = «Проверка КП КМ выполнена с положительным результатом, статус товара ОИСМ не проверен»;

        Объект.FNAcceptMarkingCode(); //принять код маркировки

    ИначеЕсли мРезультатПроверкиСервером = 1 Тогда

        СтруктураКМ.КодПроверен = 2;

        СтруктураКМ.ОтветПроверки = «Проверка КП КМ выполнена в ФН с отрицательным результатом, статус товара ОИСМ не проверен»;

        Объект.FNAcceptMarkingCode(); //принять код маркировки

    ИначеЕсли мРезультатПроверкиСервером = 0 Тогда

        СтруктураКМ.КодПроверен = 1;

        СтруктураКМ.ОтветПроверки = «Проверка КП КМ выполнена в ФН с отрицательным результатом, статус товара ОИСМ не проверен»;

        Объект.FNAcceptMarkingCode(); //принять код маркировки

    Иначе

        СтруктураКМ.КодПроверен = 3;

        СтруктураКМ.ОтветПроверки = «- Проверка не выполнена. Код отвергнут.»;

        Объект.FNDeclineMarkingCode(); //отвергнуть код маркировки

    КонецЕсли;    

    

    Если Объект.ResultCode <> 0 Тогда

        Результат = Объект.ResultCodeDescription;

        СтруктураКМ.ОтветПроверки = «- Проверка не выполнена. Код отвергнут.»;

        СтруктураКМ.КодПроверен = 3;

        Объект.Disconnect();

        Возврат Результат;

    КонецЕсли;

    

    
    Объект.Password = Пароль;

    Объект.GetECRStatus();

    Если Объект.ResultCode <> 0 Тогда

        Результат = Объект.ResultCodeDescription;

    КонецЕсли;

    

    Объект.Disconnect();

    Возврат Результат;

    
КонецФункции

  

kupec

70 — 15.10.21 — 15:39

Всем большое спасибо, в выходные поиграюсь.

  

arian_

71 — 15.10.21 — 15:43

(69) Подскажите а зачем вы после проверки каждого кода освобождвете ком порт

Объект.Disconnect();

  

arian_

72 — 15.10.21 — 15:43

(70) Напишите что получилось. На следующей неделе тоже ожидает после перепрошивки…

  

NikeArz

73 — 15.10.21 — 16:55

(71) Если честно то лет 15 так работает и не знаю.

  

NikeArz

74 — 15.10.21 — 16:57

(71) У нас с 2007 года Штрихи стоят поэтому по многим моментам внимание не заострял. Работает и ладно.

  

kupec

75 — 15.10.21 — 18:10

(71) Есть 2 варианта работы с ККМ, ну это как по мне….

1 — При запуске кассового ПО подключаемся к ККМ и не отключаемся до завершения работы кассового ПО

2 — При попытке пробить чек из кассового ПО подключаемся к кассе и после завершения чека отключаемся от неё. Соответственно тоже самое для Z X отчетов и всяких там манипуляций с кассой.

Тут сам каждый для себя выбирает, как ему лучше работать. Например если в магазине, где поток народа практически всегда, соответственно лучше соединиться с кассой и занять порт на все время работы программы, а если у тебя дай бог раз в пол часа клиент, то тут наверно лучше и освобождать порт. На сколько мне известно, в 1С Розница как раз таки используется второй вариант по умолчанию. Т.е. после манипуляций с кассой порт освобождается

  

anton-x

76 — 20.10.21 — 20:57

(60) Подскажи, пожалуйста, удалось побороть ошибку «Неразрешенные реквизиты»? Такая же ситуация, для следующей проверки.

  

kupec

77 — 21.10.21 — 15:27

(76) Я приболел, нет возможности поковырять кассу, надеюсь на следующей неделе доберусь.

  

anton-x

78 — 21.10.21 — 16:36

Скорейшего выздоровления! Коллеги, возможно у кого-то есть мысли по этому поводу? Суть в том, что последовательный вызов FNCheckItemBarcode() для второй марки выдаёт ошибку «Неразрешенные реквизиты». На сколько я понял, эту ошибку возвращает ФН. Как и писали коллеги выше, если переподключиться к драйверу, пропускает. По общей логике, я планирую пройтись по списку марок и принять или отвергнуть, и только затем перейти к регистрации позиций и закрытия чека.

  

kupec

79 — 22.10.21 — 14:34

(78) Какая версия драйвера используется? У меня 874? но уже есть 883, может там уже это исправлено, посмотреть можно там http://doc.shtrih-m.ru/, кстати там есть и примеры для маркировки ФФД 1.2, но они мне не помогли, либо я что то не углядел.

  

kupec

80 — 22.10.21 — 14:41

Почитал сейчас список изменений, то что стоит у меня 874 и текущая 883 как раз есть изменения и исправления при работе с КМ. Так что можно попробовать обновить драйвер до последней версии. Если будет возможность, отпишитесь про результат

  

arian_

81 — 22.10.21 — 15:08

(78) На текущий момент стало поступать достаточно много вопросов связанных с причинами возникновения ошибки 11: «Неразрешенные реквизиты» в ответ на команду проверки кода маркировки (метод FNCheckItemBarcode, реализующий команду FF61h). Не смотря на то, что данная ошибки не декларирована в протоколе ФН под ФФД1.2, но она возникает. Причина ошибки в том, что при заполнении реквизитов, необходимых для проверки кода маркировки, пользователь (разработчик ПО) не заполняет все необходимые поля, а именно свойство TLVDataHex. Если не реализуется дробное кол-во предмета расчета, то в данное свойство нужно в явном виде передавать «пустую строку». Если этого не сделать, то в него будет внесен ответ от сервера ОИСМ от предыдущей проверки кода маркировки.

  

arian_

82 — 22.10.21 — 15:09

(78) Если вы брали за основу мой код, то если у вас не дробное количество, то перед FR.FNCheckItemBarcode(); необходимо FR.TLVDataHEX = «»;

  

kupec

83 — 22.10.21 — 19:01

(82) сделал предварительную обработку, помогло FR.TLVDataHEX = «», спасибо )))

  

kupec

84 — 22.10.21 — 19:38

а есть ли у кого-нибудь описание CheckItemLocalError для ККМ?

  

arian_

85 — 22.10.21 — 20:36

(84)

CheckItemLocalError ОшибкаЛокальнойПроверки

Тип: Integer / Целое

Причина, по которой не была проведена локальная проверка

Возможные значения:

0 – КМ проверен в ФН 1 – КМ данного типа не подлежит проверки в ФН 2 – ФН не содержит ключ проверки кода проверки этого КМ 3 – Проверка невозможна, так как отсутствуют идентификаторы применения GS1 91 и / или 92 или их формат неверный 4 –Внутренняя ошибка в ФН при проверке этого КМ

Список возвращаемых ошибок

https://docs.google.com/spreadsheets/d/19Mn5syH70XwFdg6Pe2fhYM17SNHGuOJDvQEQXHxSz54/edit#gid=0

  

kupec

86 — 22.10.21 — 21:10

(85) я почему то у себя в руководстве программиста не могу найти данное описание, может есть ссылка, от куда взята данная информация, у меня наверно старая версия…хотя скачивал «типа» последнюю с сайта штриха

  

arian_

87 — 22.10.21 — 21:37

(85) где-то на сайте штриха скачивал уже не помню: документация Руководство программиста от 02.03.2021

  

kupec

88 — 22.10.21 — 22:09

у меня почему то от июня 2020 и новее не могу найти

Можно мне на почту скинуть документацию? В профиле адрес есть

  

kupec

89 — 22.10.21 — 22:38

  

kupec

90 — 22.10.21 — 22:39

  

victuan1

91 — 23.10.21 — 06:46

(90) Но методов нового драйвера (5.16) в ней так и нет, например, метода очистки буфера КМ — FNMarkingClearBuffer.

  

anton-x

92 — 25.10.21 — 09:50

(80) Версия тоже 874. Помогло TLVDataHEX = «». На новой сборке драйвера пока не пробовал. Но постараюсь проверить позже.

  

kupec

93 — 25.10.21 — 16:05

Совершил тестовую продажу, вроде все удачно, на чеке написалось М+, только не понятно…..напротив данной буквы еще какие то 4 цифры,что это такое?

  

kupec

94 — 25.10.21 — 16:18

+(93) пробовал несколько позиций маркированных в одном чеке, все сработало. Проверял на молочке и на табаке. Немного не понятно как с алкоголем быть? Надо ли посылать данные по нему, или он не считается маркированным?

  

arian_

95 — 25.10.21 — 18:36

(94) Тем, кто продает шубы, изделия из натурального меха и алкоголь — на эти группы товаров ФФД 1.2 не распространяется. Вроде так.

  

victuan1

96 — 26.10.21 — 07:10

  

victuan1

97 — 26.10.21 — 07:11

(94) Алкоголь не считается маркированным СИ (средствами идентификации), поэтому его передаем только в УТМ.

  

victuan1

98 — 26.10.21 — 07:12

(95) Также как в ФФД 1.05 и 1.1, их выбытие отражают не через чек ККТ.

  

SmallAngryCat

99 — 26.10.21 — 11:33

(93) Подскажите как добиться появления этой волшебной буквы [М+] на чеке? У меня марка проходит проверку, в ОФД отправляется, в ЦРПТ выбывает из оборота, а буквы на чеке все равно нет. Может в таблицах ФР что-то нужно настроить?

  

kupec

100 — 26.10.21 — 11:43

таблица 17 поле 25 вроде как, печать тэгов

1

Код ошибки в десятичной форме
Код ошибки в шестнадтатиричной форме
Источник ошибки
Расшифровка
Пояснения
Пути решения
Старая расшифровка ошибки (2005 год)

2

Обновление ключей не выполнено
При продаже маркированной продукции с кодом проверки длиной 88 символов (сейчас это ТОЛЬКО обувь и ТОЛЬКО для продажи обуви нужны эти ключи), нужны ключи проверки, которые скачиваются с сайта ключей проверки, который принадлежит производителю ФН
Решение

3

-8

Тест Драйвера
Connect timed out.
ККТ не обнаружен по TCP на указонном IP и порту
Установка связи с ККТ

4

-7

Тест Драйвера
Неверная длина ответа
От аппарата вв ответ на команды приходяит какой-то мусор, который Тест Драйвера не может разобрать.
Снимите галочку «Настройка свойств» — «Использовать простой режим обмена»

5

-3

Тест Драйвера
СOM порт занят другим приложением
ККТ использует другая программа
Как узнать какой процесс занимает СОМ-порт

6

-2

Тест Драйвера
СOM порт недоступен

7

-1

Тест Драйвера
Нет связи
ККТ не обнаружен на COM-порту и скорости указанных в настройках
Установка связи с ККТ
Если настройки связи Теста Драйвера всё время слетают

8

0
00h
ККТ
Ошибок нет
Команда успешно выполнена
Действий не требуется
Ошибок нет

9

1
01h
ФН
Неизвестная команда, неверный формат посылки или неизвестные параметры
Неверно сформирована команда.
Обратитесь в техническую поддержку Вашей кассовой программы.
Пути решения ошибки
Неисправен накопитель ФП 1, ФП 2 или часы

10

2
02h
ФН
Неверное состояние ФН
ФН не в том состоянии чтобы выполнить операцию. Например смена открыта в ККТ, а в ФН закрыта. Или идет попытка выполнить операцию на нефискализированном ФН. Иногда помогает просто выключить и включить аппарат.
Расхождение смен.
Отсутствует ФП 1

11

3
03h
ФН
Ошибка ФН

Отсутствует ФП 2

12

4
04h
ФН
Ошибка КС

Некорректные параметры в команде обращения к ФП

13

5
05h
ФН
Закончен срок эксплуатации ФН
При регистрации в данном режиме срок действия ФН режется на количество дней, превышающее оставшийся срок действия ФН

Нет запрошенных данных

14

6
06h
ФН
Архив ФН переполнен

ФП в режиме вывода данных

15

7
07h
ФН
Неверные дата и/или время
Дата и время последнего документа ФН больше чем текущее время.
Решение
Некорректные параметры в команде для данной реализации ФП

16

8
08h
ФН
Нет запрошенных данных
Идет запрос документа в ФН, который прочитать нельзя, так как он еще не сформирован или с момента его отправки в ОФД прошло 30 дней.

Команда не поддерживается в данной реализации ФП

17

9
09h
ФН
Некорректное значение параметров команды
ФН не может записать данные из-за законодательных ограничений по своей модели ФН
Пояснения и решение
Некорректная длина команды

18

10
10h
ФН
Некорректная команда
ФН получил некорректную команду
ФН зарегистрирован на ФФД 1.2, а идет попытка перерегистрировать на ФФД 1.05

19

11
0Bh
ФН
Неразрешенные реквизиты
Нюансы при пробитии маркированного товара
Пояснения
Не введена лицензия

20

13
0Dh
ФН
Отсутствуют данные, необходимые для корректного учета в ФН
ФН зафискализирован на ФФД 1.2, а прошивка для ФФД 1.05

21

14
0Eh
ФН
Количество позиций, подлежащих учету в

документе, превысило разрешенный лимит
В автономном режиме количество позиций с маркировкой не может превышать 10
Примечание 22 к таблице 96

22

16
10h
ФН
Превышение размеров TLV данных
ФН не может записать в себя данных больше, чем ограничено законом
Ограничения ФН
Комментарии ФНС о том, что размером больше Фискальные документы не будут. (2 последних абзаца)

23

17
11h
ФН
Нет транспортного соединения

Не введена лицензия

24

18
12h
ФН
Исчерпан ресурс КС (криптографического сопроцессора)
У ФН истек срок действия
Как закрыть архив ФН

Заводской номер уже введен

25

20
14h
ФН
Исчерпан ресурс хранения
По закону данные в ОФД должны передаться не позже 30 дней. По истечению срока онлайн-касса блокируется и никакие фискальные операции недоступны. Отправьте все данные в ОФД.
Установка связи с ОФД

Область сменных итогов ФП переполнена

26

21
15h
ФН
Исчерпан ресурс Ожидания передачи сообщения

Смена уже открыта

27

22
16h
ФН
Продолжительность смены более 24 часов
По Трудовому кодексу запрещено работать в смене более 24 часов
Закройте и откройте смену

Смена не открыта

28

23
17h
ФН
Неверная разница во времени между 2 операциями

Номер первой смены больше номера последней смены

29

24
18h
ФН
Ошибка закрытия чека: Некорректный реквизит, переданный ККТ в ФН

30

25
19h
ФН
Реквизит не соответствует установкам при регистрации
1) При добавлении позиции. Идет попытка добавить товар с признаком предмета расчета «2. подакцизный товар», в то время, как в последнем отчете о (пере)регистрации нет признака «торговля подакцизными товарами»
2) При закрытии чека. На новых ФН идет попытка закрыть чек по Систему Налогообложения, на которую ФН не зарегистрирован
Выполните перерегистрацию без замены ФН с признаком «Подакцизный товар» и справильно СНО
Не продавайте подакцизные товары.
Нет данных в ФП

31

32
20h
ФН
Сообщение от ОФД не может быть принято

Переполнение денежного регистра при добавлении

32

37
25h

Нет активизации кассы с запрашиваемым номером

33

47
2Fh
ККТ
Таймаут обмена с ФН

34

48
30h
ККТ
ФН не отвечает
ФН не установлен, либо шлейф или ФН неисправен.
Для Элвес-ФР-Ф

ККТ заблокирован, ждет ввода пароля налогового инспектора

35

51
33h
ККТ
Некорректные параметры в команде
Команды на формирование фискального документа правильные, а вот их значения неправильные — не проходят по контрольной сумме, или по заложенному алгоритму, или формату, который должен быть в значении тега.
Пути решения ошибки

Некорректные параметры в команде

36

52
34h
ККТ
Нет данных

37

53
35h
ККТ
Некорректный параметр при данных настройках

Пути решения

Некорректный параметр при данных настройках

38

54
36h
ККТ
Некорректные параметры в команде для данной реализации ККТ

Пути решения

Некорректные параметры в команде для данной реализации ФР

39

55
37h
ККТ
Команда не поддерживается в данной реализации ККТ

Если ошибка постоянная, то установите Тест Драйвера 5.17 или настройте русский язык системы Windows

Команда не поддерживается в данной реализации ФР

40

56
38h
ККТ
Ошибка в ПЗУ

Ошибка в ПЗУ

41

57
39h
ККТ
Внутренняя ошибка ПО ККТ

42

60
3Ch
ККТ
Смена открыта операция невозможна

43

61
3Dh
ККТ
Смена открыта операция невозможна

44

62
3Eh
ККТ
Переполнение накопления по секциям в смене

45

63
3Fh
ККТ
Переполнение накопления по скидкам в смене

46

64
40h
ККТ
Переполнение диапазона скидок

47

65
41h
ККТ
Переполнение диапазона оплаты наличными

48

66
42h
ККТ
Переполнение диапазона оплаты типом 2

49

67
43h
ККТ
Переполнение диапазона оплаты типом 3

50

68
44h
ККТ
Переполнение диапазона оплаты типом 4

51

69
45h
ККТ
Cумма всех типов оплаты меньше итога чека

52

70
46h
ККТ
Не хватает наличности в кассе
Показание нефискального счетчика «Нал. в кассе» меньше чем Сумма по налу в чеке при типе чека «Возврат прихода» или «Расход»
Выполните операцию внесения

53

71
47h
ККТ
Переполнение накопления по налогам всмене

54

72
48h
ККТ
Переполнение итога чека

55

73
49h
ККТ
Операция невозможна в открытом чеке данного типа

56

74
4Ah
ККТ
Открыт чек – операция невозможна

57

75
4Bh
ККТ
Буфер чека переполнен
Буфер чека или динамической памяти переполнен. Уменьшите количество позиций в чеке. Перезагрузите онлайн-кассу.
Ограничения ФН

58

76
4Ch
ККТ
Переполнение накопления по оборотуналогов в смене

59

77
4Dh
ККТ
Вносимая безналичной оплатой суммабольше суммы чека
Сумма всех цен товаров в чеке не совпадает с суммой всех типов оплаты в чеке. Отмените чек и попробуйте снова

60

78
4Eh
ККТ
Смена превысила 24 часа

61

79
4Fh
ККТ
Неверный пароль

62

80
50h
ККТ
Идет печать результатов выполненияпредыдущей команды

63

81
51h
ККТ
Переполнение накоплений наличными всмене

64

82
52h
ККТ
Переполнение накоплений по типуоплаты 2 в смене

65

83
53h
ККТ
Переполнение накоплений по типуоплаты 3 в смене

66

84
54h
ККТ
Переполнение накоплений по типуоплаты 4 в смене

67

85
55h
ККТ
Чек закрыт – операция невозможна

68

86
56h
ККТ
Нет документа для повтора

69

88
58h
ККТ
Ожидание команды продолжения печати
Документ не был допечатан, так как сработал один из датчиков отсутствия чековой ленты. ККТ не даст дальше работать пока он не будет допечатан.
В Тесте Драйвера 04.Печать текста — Операции — Продолжить печать
Если проблема озникает часто на пустом месте

70

89
59h
ККТ
Документ открыт другим оператором

71

91
5Bh
ККТ
Переполнение диапазона надбавок

72

92
5Ch
ККТ
Понижено напряжение 24В

73

93
5Dh
ККТ
Таблица не определена

74

94
5Eh
ККТ
Некорректная операция
Онлайн-касса не может выполнить данную команду
Пути решения

75

95
5Fh
ККТ
Отрицательный итог чека

76

96
60h
ККТ
Переполнение при умножении

77

97
61h
ККТ
Переполнение диапазона цены

78

98
62h
ККТ
Переполнение диапазона количества

79

99
63h
ККТ
Переполнение диапазона отдела

80

100
64h
ККТ
ФП Отсутствует
Данная ошибка появляется на онлайн-кассах только у Штрих-Мобайла. Следуйте инструкциям
Решение ошибки

81

101
65h
ККТ
Не хватает денег в секции

82

102
66h
ККТ
Переполнение денег в секции

83

104
68h
ККТ
Не хватает денег по обороту налогов

84

105
69h
ККТ
Переполнение денег по обороту налогов

85

106
6Ah
ККТ
Ошибка питания в момент ответа по I2C

86

107
6Bh
ККТ
Нет чековой ленты

87

109
6Dh
ККТ
Не хватает денег по налогу

88

110
6Eh
ККТ
Переполнение денег по налогу

89

111
6Fh
ККТ
Переполнение по выплате в смене

90

113
71h
ККТ
Ошибка отрезчика
Заел отрезчик и не совершил полный цикл отрезки.
Либо разобрать и смазать отрезчик либо заменить.
Отключить отрезчик в Таблице 1 Поле 5

91

114
72h
ККТ
Команда не поддерживается в данном подрежиме

92

115
73h
ККТ
Команда не поддерживается в данном режиме
ККТ не может проделать операцию, не выполнив перед этим другую операцию, которая позволит ее сделать.
Пути решения

93

116
74h
ККТ
Ошибка ОЗУ
Либо на оперативную память не подавалось 3V когда ККТ был выключен, либо было выполнено обновление прошивки.
Выполните Техобнуление в Тесте Драйвера с этого места в инструкции
Если ошибка постоянная

94

117
75h
ККТ
Ошибка питания

95

119
77h
ККТ
Ошибка Лицензии
Отсутствует лицнзия для работы команды

96

120
78h
ККТ
Замена ПО

Выполните Техобнуление в Тесте Драйвера с этого места в инструкции

97

121
79h
ККТ
Ошибка часов
Сбились часы. Такое бывает от плохой батарейки 3v, плохой связи с батарейкой 3v, неисправностью кварца, отмеряющего время. Выполните техобнуление через Тест Драйвера и установите дату и время.
Выполните Техобнуление в Тесте Драйвера с этого места в инструкции
Если ошибка постоянная

98

122
7Ah
ККТ
Поле не редактируется
Данное поле в ККТ не редактируется
Пути решения

99

123
7Bh
ККТ
Ошибка оборудования
Прошивка для ФФД 1.2 не работает с ФН-1.1 и МГМ ФН-1.1. Прошивка для ФФД 1.2 не работает с ФН-1.1М, зафискаленным под ФФД 1.0.
Подайте команду нижнего уровня feed00000000 (17.Прочее — команды — команда, hex) и в течение 30 секунд запустите файл 1.bat.
Скачайте архив doc.shtrih-m.ru/Files/1.zip . Распакуйте в корень диска С: и запустите С:/1/1.bat в течение 30 секунд после подачи команды.

100

124
7Ch
ККТ
Не совпадает дата

[0х3100]

 Группа аппаратных ошибок

0х3131

Ошибка выделения памяти

0х3132

Ошибка проверки микросхемы

0х3133

Ошибка обмена с микросхемой

0х3134

Ошибка чтения микросхемы

0х3135

Ошибка записи/стирания микросхемы

0х3136

Ошибка часов

0х3137

Ошибка OTP памяти

0х3138

Ошибка логики (выделенный буфер переполнен)

0х3139

Ошибка работы микросхемы NVRAM

0х313A

Для выполнения заданной операции отсутствует аппаратная поддержка

[0х3200]

Группа ошибок принтера

0х3231

Нет бумаги

0х3232

Открыта крышка

0х3233

Температура ТПГ превышает рабочий диапазон

0х3234

Напряжение питания превышает рабочий диапазон

0х3235

Ошибка отрезчика

0х3236

Аппаратная ошибка принтера

[0х3300]

Группа ошибок машины загружаемых шаблонов

0х33XX

Ошибка виртуальной машины Pawn, где ХХ – младший байт, который принимает значения от 00 до 7F

0х3380

Неверный тип (номер) шаблона

0х3381

Загруженные шаблоны повреждены или отсутствуют

0х3382

Несовместимая версия загруженных шаблонов

[0х3400]

Группа ошибок фискального накопителя (ФН)

Ошибки формируемые ФН

0х3431

Некорректный формат или параметры команды

0х3432

Неверное состояние ФН

0х3433

Ошибка ФН (запросить расширенные сведения об ошибке)

0х3434

Ошибка КС (запросить расширенные сведения об ошибке)

0х3435

Закончен срок эксплуатации ФН

0х3436

Архив ФН переполнен

0х3437

Неверные дата и/или время

0х3438

Нет запрошенных данных

0х3439

Некорректное значение параметров команды

0х343A

Неверная команда

0х343B

Неразрешенные реквизиты

0х343C

Дублирование данных

0х343D

Отсутствуют данные, необходимые для корректного учета в ФН

0х343E

Количество позиций в документе подлежащих учету превысило разрешенный лимит

0х343F

Отсутствуют данные в команде

0х3440

Превышение размеров TLV данных

0х3441

Транспортное соединение отсутствует

0х3442

Исчерпан ресурс криптопроцессора

0х3444

Исчерпан ресурс хранения

0х3445

Исчерпан ресурс ожидания передачи сообщения

0х3446

Смена превысила 24 часа

0х3447

Неверная разница во времени между двумя операциями

0х3448

Параметры реквизита не соответствуют форматам данных

0х3449

Признак «продажа подакцизного товара» не установлен

0х3450

Неустановленный реквизит в товарной позиции (в товарной позиции присутствует реквизит, не определенный в документе ФФД)

0х3451

Сообщение от ОФД не может быть принято

0х3453

Ошибка сервиса обновления ключей проверки КМ

0х3454

Неизвестный ответ сервиса обновления ключей проверки кодов проверки

0х3460

Требуется повтор процедуры обновления ключей проверки КМ

0х3462

Запрещена работа с маркированным товарами

0х3463

Неверная последовательность команд группы Bxh

0х3464

Работа с маркированными товарами временно заблокирована

0х3465

Переполнена таблица проверки кодов маркировки

0х346C

В блоке TLV отсутствуют необходимые реквизиты

0х346E

В реквизите 2007 содержится КМ, который ранее не проверялся в ФН

Ошибки ФН формируемые ККТ

0х3491

Неверный размер возвращаемых данных

0х3492

Ошибка интерфейса ФН

0х3493

Ошибка интерфейса ФН при посылке команды

0х3494

Превышен объем числовых данных для передачи в ФН

0х3495

Ошибка чтения документа из ФН при допечати

0х3496

В ФН есть неотправленные документы

0х3497

Исчерпан лимит перерегистраций

0х3498

Ожидание перезагрузки ФН

0х3499

Получение документа из ФН прервано

[0х3500]

Группа ошибок обмена с ОФД (ошибки не возвращаются в ответе, но могут быть запрошены)

0х3531

Отсутствует физический канал связи

0х3532

Ошибка сетевых настроек (есть канал соединения, но соединение не устанавливается)

0х3533

Разрыв соединения сервером при передаче документа

0х3534

Ошибка заголовка сессионного пакета (при приеме квитанции)

0х3535

Истек таймаут ожидания квитанции

0х3536

Разрыв соединения при приеме квитанции

0х3537

Превышен таймаут передачи документа на сервер

0х3538

ОФД-процесс не инициализирован

[0х3600]

Группа ошибок при работе с маркированным товаром

0х3631

Процедура проверки уже запущена

0х3632

Ошибка соединения с сервером ИСМ

0х3633

Процедура проверки прервана

0х3634

Попытка передать данные о маркированном товаре до начала внесения товарной позиции

0х3635

Неверное состояние процесса проверки КМ

[0х4100]

Группа ошибок транспортного протокола (нижний уровень)

0х4131

Неизвестная версия протокола

0х4132

Переполнение буфера физического уровня

0х4133

Переполнение буфера транспорта

0х4134

Ошибка CRC пакета

0х4135

Неверный идентификатор получателя

0х4136

Недостаточно места в буфере получателя

0х4138

Неверный идентификатор пакета транспорта

[0х4200]

Группа общих ошибок протокола (верхний уровень)

0х4231

Неверная длина пакета

0х4232

Недоступный символ в числовом параметре

0х4233

Неверная команда

0х4234

Длина параметра не равна заданной

0х4235

Отсутствует обязательный параметр

0х4236

Переполнение кольцевого буфера

0х4237

Переполнение буфера команд

0х4238

Буфер последнего ответа на команду пустой 

[0Х4300]

Группа ошибок транспортного протокола (верхний уровень)

0х4331

Неверный ID получателя (в параметре команды)

0х4332

Получатель уже занят другим отправителем

[0х4400]

Группа ошибок при передаче параметров (неверное значение параметра)

0х4451

Неверный тип документа

0х4452

Неверный номер пользовательской ячейки

0х4453

Превышение длины реквизита

0х4454

Неверный итог чека

0х4455

Неверная сумма товарной позиции

0х4456

Неверные дата и/или время

0х4457

Синтаксическая ошибка в параметре с фиксированной точкой

0х4458

Несуществующее поле

0х4459

Неверное значение параметра

0х445A

Несуществующий реквизит

0х445B

Недопустимый реквизит для данного типа документа

0х445C

Некорректный РНМ или ИНН

0х445D

Недопустимое сочетание реквизитов 1002 и 1056

0х445E

Недопустимое сочетание реквизитов 1002 и 1017

0х445F

Невозможно записать реквизит платежного агента (реквизит 1057 не был установлен при регистрации / перерегистрации)

0х4460

Невозможен повтор реквизита

0х4461

Общая ошибка в параметрах

0х4462

Общая ошибка длины параметра

0х4464

Передана некорректная сумма налога

0х4465

Переданная дата/время меньше даты/время последнего фискального документа

0х4466

Количество позиций с реквизитом 1162 в автономном режиме превысило разрешенный лимит

0х4467

В этом ФФД операция неразрешена

0х4468

Операция невозможна, не был установлен признак ТМТ при фискализации

[0х4500]

Группа ошибок получения реквизитов

0х4531

Слишком большой индекс массива

0х4532

Запрошенный локальный реквизит недоступен

0х4533

Запрошенный переменный реквизит недоступен

0х4534

Запрошенный постоянный реквизит недоступен

[0х4600]

Группа ошибок электронного журнала

0х4631

Копия отсутствует

0х4632

Данные в ЭЖ повреждены

0х4633

Превышение максимального размера документа (128 Кб)

0х4641

Нет данных в хранилище

0х4642

Функции планировщика не доступны

0х4643

Неизвестный тип задания

[0х4700]

Группа ошибок команд работы с внешними устройствами

0х4731

Общая ошибка

0х4732

Переполнение буфера внешнего устройства

[0х4800]

Группа пользовательских ошибок, возвращаемых из шаблонов

[0х5000]

Группа ошибок штрих-кодов

0х5031 

Критическое утверждение не прошло проверкуОбщие ошибки

0х5032

Недопустимый входной параметр

0х5033

Указатель ссылается в недопустимое место памяти

0х5034

Ресурс занят

0х5035

Недостаточно памяти

0х5036

Переполнение

0х5037

Запрашиваемый штрихкод недоступен

Ошибки, специфичные для QR-кода

0х5040

Недопустимая версия

0х5041

Неподдерживаемый или неверный режим

0х5042

Недопустимый уровень коррекции ошибок

Ошибки, специфичные для линейных кодов

0х5061

Неверный тип линейного штрих-кода

0х5062

Передан неверный размер/длина для данной операции

[0х6100]

Группа ошибок состояния ККТ

0х6131

Фатальная ошибка, расшифровка в бите статуса фатальных ошибок

0х6132

Не выполнена идентификация кассира

0х6133

Документ открыт

0х6134

Документ закрыт

0х6135

Смена превысила 24 часа

0х6136

Смена закрыта

0х6137

Смена открыта

0х6138

Нефискальный режим

0х6139

Архив ФН закрыт

0х613A

Нужно выполнить регистрацию/перерегистрацию

0х613B

Данная операция по документу запрещена (см. биты разрешенных операций по чеку)

0х613C

Данная операция разрешена только при включенном переключателе MODE

0х613D

В ФН есть неотправленные документы. Операция невозможна

0х613E

ФН не обнаружен. Операция невозможна

0х6141

Произошла критичная ошибка, документ необходимо отменить

0х6142

Регистры ККТ еще не инициализированы

0х6143

Команда недоступна в текущем состоянии инициализации

0х6144

Нет данных на отправку

0х6145

Нет маркированных позиций в чеке

0х6146

Необходимо отправить все уведомления

[0х6200]

Группа ошибок операций ККТ

0х6231

Ошибка переполнения

0х6232

Отрицательный результат (не достаточно наличных в ДЯ)

0х6233

Оплата безналичными превышает сумму чека

0х6241

Ошибка цифровой подписи

0х6242

Ошибка проверки файла с ПО контейнера 

[0х6300]

Группа ошибок настроек

0х6331

Данный канал сети Интернет отсутствует в ККТ

[0х6400]

Группа ошибок коммуникационных интерфейсов

0х6431

Данный аппаратный канал отсутствует, выключен и еще не проинициализирован

0х6432

Данный сетевой интерфейс не подключен, или на нём не получен IPадрес

0х6433

Данный сетевой интерфейс занят, или запрошенная операция уже выполняется

[0x6500]

Группа ошибок лицензирования

0x6531

Нет подходящей лицензии

0x6532

Нет свободного места для сохранения лицензии

0x6533

Аппаратная ошибка при сохранении лицензии

0x6534

Попытка ввода лицензии с некорректной подписью

0x6535

Попытка ввода лицензии с некорректным ЗН ККТ

0x6536

Попытка ввода истекшей лицензии

[0х7000]

Группа ошибок ввода реквизитов

0х70ХХ

Номер реквизита, на котором возникла ошибка, где ХХ – младший байт, равный значению: <Тег реквизита> – 1000 Например, если возникла ошибка в реквизите 1226 (ИНН поставщика), то младший байт будет содержать значение 1226–1000=226

[0х7100]

Резерв

[0х7200]

Группа ошибок работы с универсальными счетчиками

0х7231

Неверный тег для универсальных счетчиков

0х7232

Неверный индекс для универсальных счетчиков

0х7233

Неверный размер универсального счетчика

0х7234

Неверная конфигурация универсальных счетчиков

[0х7300]

Группа ошибок работы с базой товаров

0х7331

Общая ошибка базы товаров

0х7332

Некорректный тег

0х7333

Некорректный размер тега

0х7334

Недопустимый номер позиция

0х7335

Произошла аппаратная ошибка

0х7336

Нет данных запрошенных по тегу

0х7337

Перебор окончен без найденных данных

0х7338

Нет места в динамической области

[0х7400]

Группа ввода реквизитов маркировка

0х74ХХ

Номер реквизита, на котором возникла ошибка, где ХХ – младший байт, равный значению: <Тег реквизита> – 2000 Например, если возникла ошибка в реквизите 2106 (результат проверки сведений о товаре), то младший байт будет содержать значение 2106–2000=106

[0х7500]

Группа ошибок уровня minipos

0х7531

Отсутствие позиции оплаты

0х7532

Таймаут выполнения команды истек

0х7533

Неверный режим работы 

Понравилась статья? Поделить с друзьями:
  • 1a2904 ошибка бмв
  • 1a2804 ошибка бмв
  • 199182 ошибка touareg
  • 199 ошибки передачи данных через dma что это
  • 199 ошибка атол