Разрешительный режим УТ 11.5 не проходит проверка кода маркировки

1. Junior1C 20.11.24 20:26 Сейчас в теме
Приветствую. Коллеги профи подскажите кто сталкивался с такой ощибкой ( пробитие чека маркированного товара) как исправить? Спасибо

Преобразование значения к типу Число не может быть выполнено
{ОбщийМодуль.ОбщегоНазначенияИСКлиентСервер.Модуль(802)}:Значение = '19700101' + Цел(Значение / Делитель);
{ОбщийМодуль.ШтрихкодированиеОбщегоНазначенияИСМПКлиент.Модуль(1347)}:ДатаПолученияИдентификатораРазрешительногоРежима = ?(ЗначениеЗаполнено(ЭлементПроверки.РазрешительныйРежимДатаЗапросаГИСМТ),
{ОбщийМодуль.ШтрихкодированиеОбщегоНазначенияИСМПКлиент.Модуль(304)}:ПроверкаИдентификатораГИСМТПоКодуМаркировки(ПараметрыПроверки);
{ОбщаяФорма.ОжиданиеПроверкиКодовМаркировкиИСМП.Форма(177)}:ШтрихкодированиеОбщегоНазначенияИСМПКлиент.ВыполнениеШагаПроверкиСредствамиККТ(ЭтотОбъект, ПараметрыПроверкиСредствамиККТ);

[ОшибкаВоВремяВыполненияВстроенногоЯзыка, ОшибкаИспользованияВстроенногоЯзыка]
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. MissionOnly 8 21.11.24 09:39 Сейчас в теме
(1)
Значение = '19700101' + Цел(Значение / Делитель);
Вот этот код, это просто беда. Что должно получиться ЧИСЛО или СТРОКА или ДАТА?

1) Если СТРОКА: Значение = "19700101" + Строка(Цел(Число(Значение) / Число(Делитель)));

2) Если ЧИСЛО: Значение = Число("19700101") + Цел(Число(Значение) / Число(Делитель));

3) Если ДАТА: Значение = Дата("19700101000000") + Цел(Число(Значение) / Число(Делитель));

Обязательно проверить делитель на ноль.
3. user2107191 21.11.24 09:44 Сейчас в теме
(2)
Что должно получиться ЧИСЛО или СТРОКА или ДАТА?
Первое слагаемое определяет результирующий тип. Остальные слагаемые автоматически приводятся к типу первого слагаемого посредством неявной типизации.
В данном случае - результатом ожидается Строка.
starik-2005; +1 Ответить
8. starik-2005 3098 21.11.24 11:06 Сейчас в теме
(3)
В данном случае - результатом ожидается Строка.
Ну ежели у нас '19700101' - это дата (1 января 1970-го), то к дате секунды добавив дату получим. Сам же пишешь, что по первому аргументу...
Или что ты имел под "ожидается Строка"?
4. MissionOnly 8 21.11.24 09:46 Сейчас в теме
Вот все так думают, и по этому такие ошибки и возникают. Скорее всего должна быть дата, а процедура Цел() отрабатывает с ошибкой.
5. user2107184 21.11.24 09:49 Сейчас в теме
(4) В данном случае ошибка в том, что Числитель ИЛИ Знаменатель не являются числами. Результатом все равно ЯВНО ожидается строка.
starik-2005; +1 Ответить
6. MissionOnly 8 21.11.24 09:53 Сейчас в теме
(5) "Делимое ИЛИ Делитель не являются числами" ИЛИ "Делитель = ноль".
7. Junior1C 21.11.24 10:22 Сейчас в теме
Этот код полностью типового механизма. Смотрел отладчиком почему та в значение передаться пустая дата ("01.01.0001") виде строки. Чек пробиваться через реализацию полная оплата.
9. Junior1C 21.11.24 12:55 Сейчас в теме
Нет идеи как надо можно это исправить?
10. user1475536 03.12.24 10:36 Сейчас в теме
Как исправили ошибку подскажите пожалуйста, у нас возникла такая же релиз Управление торговлей, редакция 11, версия 11.5.20.58
11. user1039608 23.12.24 20:38 Сейчас в теме
Попробуйте в ОбщийМодуль.ШтрихкодированиеОбщегоНазначенияИСМПКлиент.Модуль вместо:

ДатаПолученияИдентификатораРазрешительногоРежима = ?(ЗначениеЗаполнено(ЭлементПроверки.РазрешительныйРежимДатаЗапросаГИСМТ),

// ОбщегоНазначенияИСКлиентСервер.ДатаИзСтрокиUNIX(ЭлементПроверки.РазрешительныйРежимДатаЗапросаГИСМТ),

// Дата(1, 1, 1))

подставить просто

ДатаПолученияИдентификатораРазрешительногоРежима =ОбщегоНазначенияИСКлиентСервер.ДатаИзСтрокиUNIX(Строка(1734324670));
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот