1с ошибка 36р при пробитии чека

Ошибка при выводе чека ККМ в 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)

Я
   ligaSS

15.08.18 — 09:15

Ошибка:

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

Чек не напечатан на фискальном устройстве.

Дополнительное описание:

При выполнении операции произошла ошибка: 36h, Некорректные параметры в команде для данной реализации

Скриншоты:

https://yadi.sk/i/m_bq2lYr3aEpur

https://yadi.sk/i/Vx8oqijW3aEpvc

https://yadi.sk/i/qS-D3k7Y3aEpw8

Обновили 1с до последней версии обновили прошивку на Штрих Лайт 02Ф

ошибка не устранилась.

Эта ошибка не всегда, только в этом документе.

Решении найти не можем просим помощи.

Тема уже есть но решении нет. Поэтому хочу поднять этот вопрос повторно

   Время

1 — 15.08.18 — 09:19

(0) Если нет скидки — нет ошибки?

   yzimin

2 — 15.08.18 — 09:37

Настройте, чтобы строки бились на 2 при не точном округлении цены. В 1С в настройках оборудования есть такая опция: поставить 0 и разделять строки

   ligaSS

3 — 15.08.18 — 09:38

«Время

     Если нет скидки — нет ошибки?

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

   Время

4 — 15.08.18 — 09:39

(3) Чек бьется из реализации? На скринах — именно реализация.

   ligaSS

5 — 15.08.18 — 09:41

(4) Да через Реализацию

   ligaSS

6 — 15.08.18 — 09:41

(2) Буду иметь введу, попробую настроить

   Время

7 — 15.08.18 — 09:43

(5) Без скидки ошибки нет? Ошибка только при наличии скидок?

(уточняю).

   ligaSS

8 — 15.08.18 — 10:12

(7) Без скидки именно эту реализацию не пробивали так как клиент заплатил уже со скидкой. Соответственно без скидки уже будет другая сумма. Повторюсь на других приходниках нет ошибки, что со скидкой, что без скидки

   zippygrill

9 — 15.08.18 — 10:13

Версия драйвера обновите тоже с оф.сайта Штриха

   Pro1001C

10 — 15.08.18 — 10:44

Такую ошибку встречал в рознице, тоже после обновления релиза. Помогло изменение форматно-логического контроля на «разделять строки»

   Asmody

Модератор

11 — 15.08.18 — 11:11

(0) А вот ник «лига СС» — это случайность или принципиальная позиция?

   ligaSS

12 — 15.08.18 — 11:12

(9) Версия 4.14 с официального сайта

   ligaSS

13 — 15.08.18 — 11:14

(11) LInar GAlimov LIGA. SS от Soft-Servis

   Время

14 — 15.08.18 — 11:17

У меня такая ошибка была в УТ 10.2, когда сумма оплаты была не равна сумме чека. Там и округление, и скидки, и ручки зверя (шаловливые)…

   ligaSS

15 — 15.08.18 — 12:00

(2) Спасибо помогло :)

В подключаемых оборудованиях ККТ а точнее в параметрах изменил настройки.

Было:

https://yadi.sk/i/lGRI_-6M3aFAA8

После изменение:

https://yadi.sk/i/gJJ0xTN23aFAFQ

Всем спасибо за оперативность.

  

ligaSS

16 — 15.08.18 — 12:13

Было:

https://yadi.sk/i/mMUqmjZ23aFBaq

После изменении:

https://yadi.sk/i/xSoTjvRC3aFBb4

TurboConf — расширение возможностей Конфигуратора 1С

ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.

Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.


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

Было подобное письмо нам на почту, изучив лог я пришел к такому ответу:

/*
Видимо проблема в передаваемой сумме операций:

[17.01.2018 18:23:05.420] [00000780] [ INFO] TFiscalPrinter ————————————————————
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TFiscalPrinter Команда: FF46h,
[17.01.2018 18:23:05.420] [00000780] [ INFO] TFiscalPrinter ————————————————————
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TTCPSocketDriver.OpenPort :7778 3000
[17.01.2018 18:23:05.420] [00000780] [DEBUG] Check for socket opened
[17.01.2018 18:23:05.420] [00000780] [DEBUG] Purge
[17.01.2018 18:23:05.420] [00000780] [DEBUG] ioctl bytes to read = 0
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol SetCmdTimeout: 3000
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> 05
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol ReadAckChar try
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol <- FF
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol ReadAckChar try
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol <- 15
[17.01.2018 18:23:05.420] [00000780] [DEBUG] Purge
[17.01.2018 18:23:05.420] [00000780] [DEBUG] ioctl bytes to read = 0
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> 02 5F FF 46 1E 00 00 00 01 00 3F AB 01 00 00 A8 01 00 00 00
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> 6A 2E 00 00 00 FF FF FF FF FF 08 00 07 0A 2F 2F C2 EE E7 EC
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> E5 F9 E5 ED E8 E5 20 EE E1 F1 EB F3 E6 E8 E2 E0 ED E8 FF 20
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> E2 E5 ED F2 E8 EB FF F6 E8 EE ED ED FB F5 20 F1 E8 F1 F2 E5
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> EC 20 E7 E0 20 ED EE FF E1 F0 FC 20 32 30 31 37 E3 AD
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol ReadAckChar try
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol <- 06
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol SetCmdTimeout: 30000
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol <- 02
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol <- 03
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol SetCmdTimeout: 3000
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol <- FF 46 36 8C
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> 06
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TDrvFR FNOperation: 54
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TDrvFR Get_ResultCodeDescription
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TDrvFR Get_ResultCodeDescription: Некорректные параметры в команде для данной реализации
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TDevice1C Cancelling check
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TDrvFR GetShortECRStatus
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TFiscalPrinter CommandCode=0010

Из описания протокола:
* если сумма операции 0xffffffffff то сумма операции рассчитывается кассой как цена х количество,
в противном случае сумма операции берётся из команды и не должна отличаться более чем на +-1 коп от рассчитанной кассой.

У Вас кол-во 6 байт (6 нулей после запятой) это байты 00 3F AB 01 00 00, т.е. 1AB3F00h = 28000000 или, если отбросим 6 нулей после запятой, 28.
Цена A8 01 00 00 00 , т.е. 1A8h = 4,24.
Сумма операции, которую Вы передаете —  6A 2E 00 00 00, т.е. 2E6Ah = 118,82 (см. выше — эта сумма не должна отличаться более чем на +-1 коп от рассчитанной кассой),
а по ККТ получается 28 * 4,24 = 118.72, что больше чем на копейку отличается от того, что передаете Вы (118,82).
*/

Не так давно был довольно интересный случай по подключению и настройке периферийного оборудования к 1С Управление Торговлей 11. Ошибка “Некорректное значение параметров команды ФН” при печати чека с онлайн кассы.

Описание проблемы

После обновления версии платформы и конфигурации 1С онлайн-касса Атол 30Ф перестала пробивать чеки ККМ. При пробитии чека генерируется ошибка "При выполнении операции произошла ошибка: Некорректное значение параметров команды ФН".

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

До обновления версии платформы и конфигурации чеки ККМ пробивались успешно.

Версии ПО на момент начала диагностики

Версия платформы 1С: 8.3.17.1851

Версия конфигурации 1С: Управление торговлей, редакция 11 (11.4.13.103). Конфигурация без доработок.

Версия драйвера торгового оборудования АТОЛ: 10.2.0.0

Версия внутреннего ПО ККМ Атол 30Ф: 7942

СНО: общая.

Выполненные шаги на первом этапе диагностики

Теорий было много, но краткой опишу основные шаги.

Первым шагом я провел проверку корректности всех настроек подключения торгового оборудования, как это приведено в инструкции на сайте 1С. Все было настроено верно.

Второе, что я выполнил – это обновление драйверов торгового оборудования АТОЛ до последней актуальной версии (10.8.0.0). Не помогло.

После этого проанализировал логи кассы, который формируются. Более детального и расширенного описания ошибки там не было. Все так же. JSON-задание на печать, отправляемое со стороны 1С на кассу немного отличалось от предыдущего, но при обновлении конфигурации 1С это вполне обычное дело. Забегаю на перед скажу – что именно тут и следовало заострить внимание более подробно.

Затем было выполнено обновление внутреннего ПО кассы да последней актуальной версии – 8541. Не спасло.

Наступил этап глубокой мысли и печали 🙂

Кульминация

Решил более пристально рассмотреть логи, которые пишет касса. Особенно JSON-задания, которые 1С отправляет на печать.

Логи лежит вот тут:

"C:Users<username>AppDataRoamingATOLdrivers9logsfptr1c_log.txt"

Глаз зацепился за параметр paymentobject. До обновления он выглядел вот так (10 = платеж):

paymentobject=10

После обновления он выглядел вот так (1 = товар):

paymentobject=1

Paymentobject – это признак предмета расчета, который сохраняется на фискальном накопителе (ФН) кассы для каждого чека.

В документации указаны следующие возможные значения.

т.е. казалось бы, все верно – такие значения имеют место быть. Кстати, если кому-то нужна документация от АТОЛ, то её можно загрузить из архива ниже.

Решили посмотреть в сторону ФН. Создали тестовую номенклатуру с типом “услуга” и попробовали пробить её – чек пробился…

Осталось понять, что не так с ФН. На кассе был установлен ФН на 36 месяцев (уже года 1,5 назад) и вот тут-то и была причина всей ошибки.

Как оказалось не все ФН одинаково полезны. Некоторые ФН на 36 месяцев не умеют работать с общей системой налогообложения и признаком предмета расчета “товар”. Первоисточник.

И хотя ссылку выше я видел на первых шагах диагностики, но не придал ей значения ссылаясь на то, что до обновления касса пробивала чеки ККМ с основной системой налогообложения 🙁

Итог

После замены исходного ФН с исполнением на 36 месяцев на ФН с исполнением на 15 месяцев чеки ККМ пробивались успешно и ошибки “Некорректное значение параметров команды ФН” более не было.

   ligaSS

15.08.18 — 09:15

Ошибка:

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

Чек не напечатан на фискальном устройстве.

Дополнительное описание:

При выполнении операции произошла ошибка: 36h, Некорректные параметры в команде для данной реализации

Скриншоты:

https://yadi.sk/i/m_bq2lYr3aEpur

https://yadi.sk/i/Vx8oqijW3aEpvc

https://yadi.sk/i/qS-D3k7Y3aEpw8

Обновили 1с до последней версии обновили прошивку на Штрих Лайт 02Ф

ошибка не устранилась.

Эта ошибка не всегда, только в этом документе.

Решении найти не можем просим помощи.

Тема уже есть но решении нет. Поэтому хочу поднять этот вопрос повторно

   Время

1 — 15.08.18 — 09:19

(0) Если нет скидки — нет ошибки?

   yzimin

2 — 15.08.18 — 09:37

Настройте, чтобы строки бились на 2 при не точном округлении цены. В 1С в настройках оборудования есть такая опция: поставить 0 и разделять строки

   ligaSS

3 — 15.08.18 — 09:38

«Время

     Если нет скидки — нет ошибки?



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

   Время

4 — 15.08.18 — 09:39

(3) Чек бьется из реализации? На скринах — именно реализация.

   ligaSS

5 — 15.08.18 — 09:41

(4) Да через Реализацию

   ligaSS

6 — 15.08.18 — 09:41

(2) Буду иметь введу, попробую настроить

   Время

7 — 15.08.18 — 09:43

(5) Без скидки ошибки нет? Ошибка только при наличии скидок?

(уточняю).

   ligaSS

8 — 15.08.18 — 10:12

(7) Без скидки именно эту реализацию не пробивали так как клиент заплатил уже со скидкой. Соответственно без скидки уже будет другая сумма. Повторюсь на других приходниках нет ошибки, что со скидкой, что без скидки

   zippygrill

9 — 15.08.18 — 10:13

Версия драйвера обновите тоже с оф.сайта Штриха

   Pro1001C

10 — 15.08.18 — 10:44

Такую ошибку встречал в рознице, тоже после обновления релиза. Помогло изменение форматно-логического контроля на «разделять строки»

   Asmody

Модератор

11 — 15.08.18 — 11:11

(0) А вот ник «лига СС» — это случайность или принципиальная позиция?

   ligaSS

12 — 15.08.18 — 11:12

(9) Версия 4.14 с официального сайта

   ligaSS

13 — 15.08.18 — 11:14

(11) LInar GAlimov LIGA. SS от Soft-Servis

   Время

14 — 15.08.18 — 11:17

У меня такая ошибка была в УТ 10.2, когда сумма оплаты была не равна сумме чека. Там и округление, и скидки, и ручки зверя (шаловливые)…

   ligaSS

15 — 15.08.18 — 12:00

(2) Спасибо помогло :)

В подключаемых оборудованиях ККТ а точнее в параметрах изменил настройки.

Было:

https://yadi.sk/i/lGRI_-6M3aFAA8

После изменение:

https://yadi.sk/i/gJJ0xTN23aFAFQ

Всем спасибо за оперативность.

  

ligaSS

16 — 15.08.18 — 12:13

Ошибка при выводе чека ККМ в 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)


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

Было подобное письмо нам на почту, изучив лог я пришел к такому ответу:

/*
Видимо проблема в передаваемой сумме операций:

[17.01.2018 18:23:05.420] [00000780] [ INFO] TFiscalPrinter ————————————————————
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TFiscalPrinter Команда: FF46h,
[17.01.2018 18:23:05.420] [00000780] [ INFO] TFiscalPrinter ————————————————————
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TTCPSocketDriver.OpenPort :7778 3000
[17.01.2018 18:23:05.420] [00000780] [DEBUG] Check for socket opened
[17.01.2018 18:23:05.420] [00000780] [DEBUG] Purge
[17.01.2018 18:23:05.420] [00000780] [DEBUG] ioctl bytes to read = 0
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol SetCmdTimeout: 3000
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> 05
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol ReadAckChar try
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol <- FF
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol ReadAckChar try
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol <- 15
[17.01.2018 18:23:05.420] [00000780] [DEBUG] Purge
[17.01.2018 18:23:05.420] [00000780] [DEBUG] ioctl bytes to read = 0
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> 02 5F FF 46 1E 00 00 00 01 00 3F AB 01 00 00 A8 01 00 00 00
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> 6A 2E 00 00 00 FF FF FF FF FF 08 00 07 0A 2F 2F C2 EE E7 EC
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> E5 F9 E5 ED E8 E5 20 EE E1 F1 EB F3 E6 E8 E2 E0 ED E8 FF 20
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> E2 E5 ED F2 E8 EB FF F6 E8 EE ED ED FB F5 20 F1 E8 F1 F2 E5
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> EC 20 E7 E0 20 ED EE FF E1 F0 FC 20 32 30 31 37 E3 AD
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol ReadAckChar try
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol <- 06
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol SetCmdTimeout: 30000
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol <- 02
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol <- 03
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol SetCmdTimeout: 3000
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol <- FF 46 36 8C
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TPrinterProtocol -> 06
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TDrvFR FNOperation: 54
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TDrvFR Get_ResultCodeDescription
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TDrvFR Get_ResultCodeDescription: Некорректные параметры в команде для данной реализации
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TDevice1C Cancelling check
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TDrvFR GetShortECRStatus
[17.01.2018 18:23:05.420] [00000780] [DEBUG] TFiscalPrinter CommandCode=0010

Из описания протокола:
* если сумма операции 0xffffffffff то сумма операции рассчитывается кассой как цена х количество,
в противном случае сумма операции берётся из команды и не должна отличаться более чем на +-1 коп от рассчитанной кассой.

У Вас кол-во 6 байт (6 нулей после запятой) это байты 00 3F AB 01 00 00, т.е. 1AB3F00h = 28000000 или, если отбросим 6 нулей после запятой, 28.
Цена A8 01 00 00 00 , т.е. 1A8h = 4,24.
Сумма операции, которую Вы передаете —  6A 2E 00 00 00, т.е. 2E6Ah = 118,82 (см. выше — эта сумма не должна отличаться более чем на +-1 коп от рассчитанной кассой),
а по ККТ получается 28 * 4,24 = 118.72, что больше чем на копейку отличается от того, что передаете Вы (118,82).
*/

Решение вопроса:

Нужно включить в настройках ККТ (Подключаемое оборудование) форматно логический контроль с одним из способов:
1. Разделять строки — если с учётом скидки не получатся с точностью до «Допустимое расхождение форматно-логический контроля» напечатать сумму товара — делается вторая строка с этим товаром с меньшей ценой. То есть по товар делится на 2 строки с разным количеством.
2. Зачитывать суммы — значит при невозможности посчитать сумму (с точностью до «Допустимое расхождение форматно-логический контроля») и если в чеке есть несколько товаров, то какой-то из них сумма округляется вниз, а где-то вверх.
При любом раскладе итоговая сумма чека будет одинаковая, но суммы отдельных товаров (и количество строк с товарами) может быть разное (при условии наличия скидок или например дробного количества товаров).

Понравилась статья? Поделить с друзьями:
  • 1с ошибка 0x00002af9 как исправить
  • 1с ошибка 0000274c
  • 1с отчетность ошибка распаковки пакета
  • 1с отчетность ошибка не удалось расшифровать файл
  • 1с отчетность ошибка криптографии невозможно расшифровать файл обновлений