Столкнулись тут с проблемой при подключении сканера 2d и использовании его для "Честного знака". При сканировании выдаётся такое вот окошко с сообщением
Текст XML содержит недопустимый символ в позиции 31 :
010290000044725721agM%ssr<KkWNd91003A92wCLW0MHStmVDBEr6UQCj/ArKhJeMauq8N8AnGScx9l+WsENooD3GAXDhxkEe1X2Lia3GHG8nzmgJsswgYB0gog==;;
{ОбщийМодуль.ШтрихкодированиеИСКлиент.Модуль(87)}: РезультатОбработкиШтрихкода = ШтрихкодированиеИСВызовСервера.ОбработатьШтрихкод(
{ОбщийМодуль.СобытияФормИСКлиент.Модуль(435)}: ШтрихкодированиеИСКлиент.ОбработатьДанныеШтрихкода(
{Обработка.ПроверкаИПодборПродукцииИСМП.Форма.ПроверкаИПодбор.Форма(168)}: Данные, ПараметрыСканированияКодовМаркировки());
по причине:
Ошибка при вызове серверного метода.
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства 'ret':
форма: Элемент
имя: {http://v8.1c.ru/8.2/managed-application/modules}ret
по причине:
Ошибка преобразования данных XDTO:
Запись значения свойства 'Value':
форма: Элемент
имя: {http://v8.1c.ru/8.1/data/core}Value
по причине:
Ошибка при записи XDTO
по причине:
Текст XML содержит недопустимый символ в позиции 31 :
010290000044725721agM%ssr<KkWNd91003A92wCLW0MHStmV
Правда иногда он всё же сканирует нормально, а потом снова не может сканировать те же коды. Может кто-нибудь сталкивался?
(2) Считывает в 1С:УТ 11.4.12.81 в режиме COM-порта. Подключение не RDP.
Переместился домой. С той же базой, но дома всё работает нормально. Странно. Настройки те же.
(5) А что за модель сканера?
И какие коды не считываются, когда полученные?
Недавно тут один форумчанин поместил видео, как ЧЗ накосячил с выдачей некоторых кодов.
< - вот этот символ нужно заменять при формировании XML. 1с не может сериализовать строку для передачи на сервер.
Скорей всего есть недочет в конфигурации и, в вашем случае, модель сканера не имеет значения
Если это типовая и есть шанс, что используется штатная БПО, то можно попробовать поставить в настройках сканера BASE64, вместо строки.
Данная проблема так же возникает когда сканер подключен через разветвитель USB (хаб). Воткните напрямую в системник. И проверьте еще в блокноте он всегда считывает одно и тоже. Бывает даже, что несколько раз подряд считанный один и тот же QR код отображает разные символы.
У меня проблема решилась путем уменьшения скорости считывания в настройках подключаемого оборудования в 1С КА2. По умолчанию было 9600, я поставил 4800 - и все заработало.
(9) Думаю решилась проблема тем, что в строку перестали попадать различные символы (стрелочки, треугольнички, смайлики т.п.). При выводе строки (преобразование данных XDTO) не может такие символы распознать и выдает ошибку. Решение, очищать строку от таких символов. Как пример:
Можно проще(также она может присутствовать в общем модуле ОбщегоНазначенияКлиентСервер.ЗаменитьНедопустимыеСимволыXML()):
Функция УдалитьНедопустимыеСимволыXML(СтрокаХМЛ)
Позиция = НайтиНедопустимыеСимволыXML(СтрокаХМЛ);
Пока Позиция <> 0 Цикл
НедопустимыйСимвол = Сред(СтрокаХМЛ, Позиция,1);
СтрокаХМЛ = СтрЗаменить(СтрокаХМЛ, НедопустимыйСимвол, "");
Позиция = НайтиНедопустимыеСимволыXML(СтрокаХМЛ);
КонецЦикла;
Возврат СтрокаХМЛ;
КонецФункции
(11)Здраствуйте, подскажите, пожалуйста, как получили СтрокаХМЛ при сканировании ? Не могу найти, базы нет, сканера нет, ошибка есть) Функцию нашел, а вот строку хмл найти не могу( спасибо.
Аналогичная ошибка, при сканировании марки из честного знака, проблема в том, что базы нет, есть копия, но нет сканера, у меня все ок, брал сканер на час, у человека ошибка при сканировании. На 31 символе, как в заголовке темы. Разница в том, что я в локальной базе работаю, они сидят через веб. Ошибка возникла спонтанно, до этого все хорошо, тут не обновлений, не смены железа. Думал расширение написать, но не могу понять откуда строку взять для функции сменить или удалить недопустимые символы. Подскажите, кто сталкивался с подобным, спасибо.
при подключении в виде эмуляции СОМ порта возникает ошибка "Текст XML содержит недопустимый символ в позиции 31" решение в сканировании специального служебного кода из инструкции.
актуально для АТОЛ sb2109 BT 2023****