Форум OlegON > Программы и оборудование для автоматизации торговли > Кассовые программы > УКМ-4

Шестнадцатеричное значение 0x1D, является недопустимым знаком : УКМ-4

04.12.2024 12:04


09.06.2023 09:21
SM 1.50 sp2 УКМ 4 100 sp3. Сканеры ШК mindeo mp 720
Периодически на кассах всплывает ошибка:
Код:
2023.06.09 (пятница) 08:45:21 1.50.0.0 sp2 [10] ERROR Sm.Cash.Server
----- Прерывание работы программы -----
сообщение: """, шестнадцатеричное значение 0x1D, является недопустимым знаком., строка 5206, позиция 33."
исключение: System.Xml.XmlException
источник: System.Xml
метод: Void Throw(System.Exception)
   в System.Xml.XmlTextReaderImpl.Throw(Exception e)
   в System.Xml.XmlTextReaderImpl.Throw(String res, String[] args)
   в System.Xml.XmlTextReaderImpl.ParseText(Int32& startPos, Int32& endPos, Int32& outOrChars)
   в System.Xml.XmlTextReaderImpl.ParseText()
   в System.Xml.XmlTextReaderImpl.ParseElementContent()
   в System.Xml.XmlTextReaderImpl.Read()
   в System.Xml.XmlTextReader.Read()
   в Sm.UKM4XMLDesk.ConvertXMLFromUKM.GetReceiptPos(String& article, String& barcode, Decimal& quantity, Decimal& total, Decimal& price, Int32& stockId, String& propertyId, String& propertyValue, Int32& enterType, Int32& sellerId, String& sellerName, Int32[]& discProgramId, String[]& discProgramName, Int32[]& discProgramType, Decimal[]& discAmount, String[]& discCardNumber, Int32& discCount, String& PDF417, String& NOPDF, String& KIZ)

--------------------------------------------------------
2023.06.09 (пятница) 08:45:21 1.50.0.0 sp2 [10] ERROR Sm.Cash.Server
Файл "shift_[2]_[23]_[1157]_[1].xml" перемещен в папку "Error".

--------------------------------------------------------
2023.06.09 (пятница) 08:45:21 1.50.0.0 sp2 [10] ERROR Sm.Cash.Server
Файл "shift_[2]_[21]_[1168]_[1].xml" перемещен в папку "Error".
Ошибка считывания файла
--------------------------------------------------------
2023.06.09 (пятница) 08:45:21 1.50.0.0 sp2 [10] WARN Sm.Cash.Server
источник: SmCashServerLib
Ошибка драйвера кассы при загрузке данных для МХ Магазин Козерог в базе данных PLEMZ1. Условный номер кассы 14. Дополнительную информацию см. в следующем сообщении.
--------------------------------------------------------
2023.06.09 (пятница) 08:45:21 1.50.0.0 sp2 [10] ERROR Sm.Cash.Server
----- Прерывание работы программы -----
сообщение: "ORA-02291: integrity constraint (SUPERMAG.SMCCASHCHECKZ) violated - parent key not found"
исключение: Sm.Core.InteropException
hResult: 80040E14h; доп. код: 2291
источник: OraOLEDB
----- Причина исключения, уровень вложения 1 -----
сообщение: "INSERT INTO Supermag.SMCashChecks(LocID, DeskNum, ZNum, CheckNum, PrintTime,Cashier,TotalSum, OpCode, DepID )  VALUES (2,23,1157,72,TO_DATE('20230608 132736','YYYYMMDD HH24MISS'),21,TO_NUMBER('315','999','NLS_NUMERIC_CHARACTERS='', '''),1,-1)"
исключение: Sm.Core.InteropException
hResult: 80004005h; доп. код: 0
источник: SmLibaryBase trace
В поле serialNumber появляется символ GS 0x1D из марки. После того, как удаляю его, СМ+ позволяет создать кассовые документы.


(0.1Мб)
Проблема плавающая, может появиться пару раз в месяц. Заменить сканеры пока нечем.
Миниатюры
Нажмите на изображение для увеличения
Название: error.JPG
Просмотров: 17
Размер:	100.3 Кб
ID:	12040  
09.06.2023 09:24
06.09 (пятница) 08:45:21 1.50.0.0 sp2 [10] EФайл "sh".

Ошибка связана с тем, что в строке 5206, позиция 33 встретился недопустимый знак с шестнадцатеричным значением 0x1D. Вероятнее всего, это произошло из-за ошибки в программе кассового устройства или вводе некорректных данных оператором. Необходимо исправить ошибку и повторить операцию.
09.06.2023 12:18
Возможно сканер тут не виноват.
Посмотрите, как эти марки лежат в базе УКМ в trm_out_receipt_item_kiz_marks
Если там serial_num с кодом GS, скорее всего сам УКМ неверно разобрал марку на части - проверьте шаблоны.
09.06.2023 13:19
Как то странно выглядит в таблице. Не всегда разбирает корректно
Код:
| cash_id | id      | receipt_header | mark_type | var   			   | barcode       | serial_num | max_price | version | deleted |
| 2001004 |  781282 |         174262 |         3 | 0104607168782340215%h8Gw↔93cFYT | 4607168782340 | 5%h8Gw     |      NULL |   59030 |       0 |
| 2001004 |  781283 |         174262 |         3 | 0104607168782340215EY%'_↔93932j | 4607168782340 | 5EY%'_↔9   |      NULL |   59030 |       0 |
| 2001005 | 2285484 |         425654 |         3 | 0104607168782340215wL0rh↔93c/46 | 4607168782340 | 5wL0rh     |      NULL |   94472 |       0 |
19.06.2023 11:07
это недопустимый символ ↔ (Alt+29) в поле serialNumber

Также столкнулись с этой проблемой на 100 версии УКМ. после обновления УКМ до 108 версии проблема ушла
Поэтому делаю вывод, что оборудование ни при чем, а вот ПО разбирает марку некорректно
Часовой пояс GMT +3, время: 12:04.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.