Доброго дня всем
Добавляю КИЗ сканированием в табличную часть документа
Дело происходит в методе &НаКлиенте
При передаче из процедуры ПолученыШтрихкоды () кодирую / декодирую его в Base64 :
&НаКлиенте
Функция ЗаполнитьПоДаннымШтрихкодов(ДанныеШтрихкодов)
Для каждого ТекШтрихкод Из…
НоваяСтрока = Объект.Запасы.Добавить();
НоваяСтрока .КИЗ = ПреобразоватьBase64ВСтроку(ТекШтрихкод.СканированныйШтрихкод);
Строчка добавляется, сканированный код отображается, но при сканировании следующего кода возникает ошибка : «Текст XML содержит недопустимый символ в позиции 31»
Если тот же код ввести в поле методом ручного ввода (копированием), то ошибки при последующем сканировании не происходит.
Дело именно в XML – если НЕ преобразовывать из Base64ВСтрокуXML , а добавлять просто строку Base64, все работает нормально.
В чем загвоздка ?
Помогите пожалуйста.
ЗЫ :
Как я понимаю данные из контекста формы нужно принудительно передать на сервер
Используй эксранированный символ GS1
// Функция возвращает разделитель GS1.
//
Функция РазделительGS1() Экспорт;
Возврат Символ(29); // Dec 29
КонецФункции
// Функция возвращает экранированный символ GS1.
//
Функция ЭкранированныйСимволGS1() Экспорт;
Возврат "\x1d"; // Используется для экранирования символа GS1.
КонецФункции