Интеграция промышленного оборудования и 1С: Комплексная автоматизация

23.11.23

Интеграция - Обмен с ГосИС

Как мы делали интеграцию оборудования и 1С для маркировки пива.

Введение

Хочу с вами поделиться ходом одного недавнего проекта (а по сути это даже не проект, а небольшая задача). Этот текст скорее написал для ретроспективы лично для себя. Но вам тоже полезно будет почитать. Ни к чему в нем не призываю, просто представляю на всеобщее обозрение один из проектов. Может быть, вы почерпнете какую-то информацию для себя, и не позволите другим сделать ошибки, которые позволили мы.

 

С чего все началось

 

 

В один прекрасный вечер пятницы звонит клиент со словами "Здравствуйте. Нам надо за 1 неделю сделать маркировку пива в бутылках на конвейере. Оборудование мы уже купили. Документацию к нему выслали на почту.". На этом моменте вечер пятницы перестал быть прекрасным по очевидным причинам. Сразу было обозначено, что за неделю это сделать невозможно, минимум месяц.

 

Этап 1. Обследование задачи

 

 

Клиент прислал документация купленного оборудования, а именно способ обмена с ним данными. Бегло глянув в документацию я сразу определил формат обмена - это же обычный XML файл! Да и у оборудования оказывается стояло программное обеспечение на том же сервере, что и 1С. Перспективы были радужные: пару десятков методов для обмена и готово.

Тут важно отметить, что документация была пару десятков страниц, поэтому изучать её за бесплатно - не радужная перспектива. За подготовительный этап обследования было выставлено 6 часов клиенту. Благо клиент сам все понимал и быстро согласился.

Заглушив все радостные (и не очень) мысли, я с холодной головой стал изучать, что же требуется передать и принять от системы. Изучая строку за строкой, я обнаружил низкое качество документации. Некоторые поля в файлах вообще были без пояснений, хотя и имели какие-то значения.

Изучив весь файл, вот что стало понятно:

  1. На вход нужно подать заранее заказанные коды маркировки.
  2. На выходе нужно забрать список кодов, успешно нанесенных на банки.

Картина архитектуры была довольно простой, делалась на 2 этапа:

  1. Формирование входных данных. Заказ кодов на эмиссию в 1С - получение кодов от Честного Знака - формирование XML для передачи - передача в стороннее ПО.
  2. Разбор выходных данных. Чтение XML с отчетом по смене - формирование документа выпуска продукции в 1С - отправка данных в Честный знак.

 

 

Решив, что для пятницы это вполне хороший результат анализа, пошел со спокойной душой домой. Задача была оценена в 50 часов. Насколько мы попали в эту цифру - узнаете в конце статьи.

 

Этап 2. Собрание рабочей группы

Сразу после согласования стоимости работ был создан чат в WhatsApp (желание заказчика). В него были включены на первом этапе:

  • Со стороны заказчика: системный администратор.
  • Со стороны исполнителя: разработчик (он же мини аналитик) и руководитель проекта.

В конце документации для оборудования быстро обнаружился телефон поддержки. Немедленно связался с поддержкой для получения информации: возможна ли поддержка на период внедрения. Как оказалось - возможна. Правда чтобы получить такой ответ мне пришлось 1 час дозваниваться по разным телефонам, меня переводили с одного сотрудника на другого, кто-то в отпуске, кто-то болеет. В конце я почти отчаялся.

 

 

Через несколько дней в рабочую группу был добавлен специалист-консультант со стороны оборудования. Чат стал насчитывать 4 человека.

 

Этап 3. Разработка

 

 

Формирование входных данных

Первое, что необходимо было сделать - передать список номенклатуры, которая будет маркироваться на конвейере, на программное обеспечение оборудования. Для этого была написана самая простая обработка с подбором номенклатуры и сохранением в .xlsx файл. Тут не было никаких сложностей. Заказчик четко знал, что будет выпускать и как это называется в базе 1С. Удивил тот факт, что это знает системный администратор... Как я в дальнейшем понял - он и швец, и жнец, и на дуде игрец.

Дальше все по классике, разворачиваем тестовый контур - разворачиваем тестовую базу, подключаем к Честному Знаку, для обмена с программным обеспечением оборудования определяем папку. Все готово для разработки обмена.

На стороне 1С не возникло никаких проблем, за исключением автоматического заказа кодов на эмиссию - там половина методов на клиента. Поэтому сделали так: оператор 1С вручную формирует документ и нажимает кнопку "Заказ кодов" - они приходят - оператор нажимает кнопку "Отправить на оборудование". Заказчика такая схема устроила более чем. Уточню, что заказ кодов происходит только при начале партии, а это раз в несколько дней (обычно понедельник и четверг). На операцию тратится около 3 минут, соответственно трудозатраты можно считать около нулевыми.

Когда коды были у нас в кармане - мы наткнулись на первый подводный камень. Позже оказалось, что это была горная каменистая река. Первая проблема - сама структура GTIN кода. У неё есть видимая и невидимая часть, служебные символы и прочее. И если с видимой частью все понятно, то как формируется невидимая часть в 1С - для нас осталось загадкой. Решение было найдено простое: в одной из клиентских процедур формирования картинки GTIN (мы специально вызывали эту процедуру), мы перехватывали выполнение на отправке кода маркировки в Base64 для формирования картинки и расшифровывали обратно в обычную строку. К этому решению пришли не сразу, помучавшись парочку дней и досконально изучив, как строится GTIN. Способ оказался вполне рабочий, не вызывал никаких проблем производительности, не искажал данные, работал незаметно для пользователя. Как раз то, что доктор прописал.

Ну а теперь дело техники. Берем охапку дров, и плов готов! Берем документацию, формируем XML, кладем в папочку и... Ошибка чтения.

 

 

Просто программное обеспечение оборудование пишет в логах "Файл не распознан". И ничего больше. Увидел такую формулировку и сильно раздосадовался. Кто так формирует ошибки - горите в аду. Это значило только одно - нам предстоит адская мука с подгонкой XML. К счастью, у нас был консультант. Кстати, почему-то только он мог смотреть в логи программного обеспечения.

На наши вопросы, что же не так с файлом, был дан простой ответ - сверяйтесь с документацией. Сверились. Скидываем скрин файла с подробным описанием, что и куда мы ставим. Ответ, как говорится, убил. Это устаревшая документация. Тут почувствовалось тепло с задней стороны моего тела. Сразу начались нехорошие мысли, что оценка будет провалена на тысячу процентов, и проект надо срочно останавливать и переоценивать. Но решил посмотреть на правильный документ. Вот только его не оказалось. Просто нет актуальной документации. С консультантом я воевал 2 дня, в конце внаглую писал "вы ничего не понимаете, добавьте в чат разработчика". Но консультант не сдавался. Видимо, подключила разработчика, но добавлять его не стала в нашу рабочую группу. Как я это понял? По итогу 2 дня нам пришел пример XML рабочей (видимо, с другого проекта), которая читалась. Мы взяли её структуру за основу, и все заработало.

Чем дальше в лес - тем больше дров.

 

 

В один прекрасный день тестов программное обеспечение перестало отвечать, успешно прочитан входной файл или нет. Мы уже бились несколько часов, думая, что не так. Рабочий чат молчал. Оказалось, что они программное обеспечение отключают каждый раз. Просто так, чтобы вдруг ничего не произошло.

Вдруг клиент заявляет в один из четвергов - мне надо на конвейере маркировать продукцию в понедельник!

 

 

Но прошла только половина срока, у нас ещё все в сыром виде, только-только сделали отправку кодов, и то толком не тестировали. Клиенту сразу же было обозначено - в понедельник ничего не запустится. К слову: мы не договаривались о таком исходе событий, клиент просто либо забыл об этом, либо начальство по шапке настучало. Утро пятницы сразу же не задалось. От лица заказчика позвонил технический директор и на повышенном тоне объяснил, сколько они будут терять денег за простой конвейера. Он позвонил с одинаковой речью в нашу компанию: разработчику, руководителю проекта, в отдел продаж, директору, консультанту. Как вы прекрасно понимаете, это только затянуло процесс. Каждый из этого списка (за исключением первых двух) ходил ко мне с вопросами. Мне каждому пришлось рассказывать всю суть проекта, что мы делаем, объяснять и посвящать в детали, пояснять требования и т.д. Конечно, все они просто транслировали техническому директору заказчика то, что я говорил ему в самый первый звонок - в понедельник ничего не заработает. В понедельник, когда ничего не заработало, технический директор поменялся ролями с главным бухгалтером - все по кругу. Опять ходят с вопросами. В итоге примерно 8 часов вместо того, чтобы продолжать делать проект, я посвящал каждого желающего в его детали, потому что "директор от заказчика звонил!". С этого дня в наш рабочий чат добавились ещё 2 человека: директор и бухгалтер заказчика. Это и положительно сказалось на консультанте: она сразу увидела директора и на вопросы стала отвечать медленнее, но качество ответа повысилось в разы.

 

Пробная печать маркировки

Несмотря на все наши предостережения, клиент принимает непростое решение - сделать выпуск 10 000 продукции на тестовой базе "лишь бы не останавливать конвейер", который и так уже стоит. Конечно, с первого раза ничего не получилось, посыпались ошибки. Все силы были брошены на запуск. Это, несомненно, сбило нас с пути и растянуло проект. А сроки мы называли с запасом (как мы думали) на 1 неделю (срок был назван 1 месяц). С горем пополам все напечатали, запустили.

 

Разбор выходных данных

Тут была только одна проблема - в выходных данных писался код маркировки полностью, с символом GS. А 1С не умеет его читать по-человечески. Пришлось просить заменить его на последовательность символов. Не буду расписывать в красках. Скажу только одно - мы с консультантом воевали 3 часа. Дальше дело техники: получили данные, создали документы. Договорились, что пользователь сам нажмет кнопку для ввода GTIN в оборот (опять же половина методов на клиенте). Благо делают такое в конце партии только. Ну и ещё нюанс - пользователь сам выбирает дату производства, т.к. она не равна текущей дате зачастую.

 

Этап 3. Запуск

Установили все на рабочую базу после тестов. На удивление все заработало почти с первого раза (со второго, перезагрузить номенклатуру забыли). Клиент работает без каких-либо проблем, поддержка ему не требуется.

 

Выводы

  1. Консультант со стороны программного обеспечения оборудования попался отвратительный.
  2. Клиент не озвучил самое главное требование - ранний запуск.
  3. 1С не умеет на сервере нормально формировать полноценный GTIN (ну или мы тупые и не разобрались, не исключаю).
  4. Паника только удлиняет проект.
  5. Отклонение от плана только удлиняет проект.

 

Результаты проекта

Проект завершили успешно в установленный срок. Правда планировали закончить заранее, но получилось день в день. По трудозатратам получилось около 95 часов. Я считаю, что это нормальный показатель, т.к. в проекте был неопытный разработчик, который первый раз ковырял маркировку и XML обмен. Если бы был опытный человек, думаю, управились бы за 60-65 часов с панической атакой технического директора. Без неё четко бы уложились. Дополнительно выставлять клиенту ничего не стали больше в маркетинговых целях, надо все таки рынку соответствовать. Да и должным образом не были все простои зафиксированы.

 

Полезные ссылки

Взял мемы с канала Мемы 1С

Обратите внимание на другие статьи в моем профиле:

Приглашаю всех в комментарии для обсуждения и вопросов!

См. также

Раздельный учет по гособоронзаказу (ГОЗ) - Подсистема для 1С:Бухгалтерии 3.0 ПРОФ и КОРП

Бюджетный учет Обмен с ГосИС Бухгалтерский учет 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 1С:Управление холдингом Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Управляйте учетной политикой раздельного ведения затрат по контракту ГОЗ с подсистемой для 1С:Бухгалтерия. Отчеты по контрактам и контроль операций для исполнения в срок по 275-ФЗ. Минимальные требования: Версия платформы 1С: Предприятие 8.3 – 8.3.23 Версия конфигурации 1С: Бухгалтерия – 3.0.150.39 или выше.

28.08.2020    202385    1628    vvmanannikov    132    

832

Гособоронзаказ: учет и отчетность БП3.0 КОРП + ПРОФ + БИТ.ФИНАНС

Бюджетный учет Обмен с ГосИС Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Государственные, бюджетные структуры Россия Бухгалтерский учет Платные (руб)

Доработка конфигурации 1С: Бухгалтерия предприятия, редакция 3.0. Предназначена для ведения раздельного учета и автоматизации заполнения отчетности исполнения контрактов ГОЗ в конфигурациях 1С БП КОРП, ПРОФ, БИТ.ФИНАНС.

30000 руб.

16.08.2019    88561    210    85    

127

SALE! 10%

[ED3] Обмен для ERP 2.5, КА 2.5, УТ 11.5 БП 3.0, Розница, УНФ и других с EnterpriseData (универсальный формат обмена), правила обмена

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

25080 руб.

12.06.2017    135905    732    291    

393

SALE! 10%

Перенос данных из ERP 2 / КА 2 / УТ 11 в БП 3.0. Переносятся документы, начальные остатки и справочники

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос данных из ERP в БП 3 | из КА 2 в БП 3 | из УТ 11 в БП 3 | из ЕРП в БП 3 | В продаже с 2019г. | Воспользовались более 176 предприятий! | Сэкономьте время - используйте готовое решение для перехода! | Перенос разработан в формате КД 2 (правила конвертации данных) | Переносятся все возможные виды документов, начальных остатков и нормативно-справочная информация| Можно опционально выгружать каждую пару "номенклатура+характеристика" как отдельную номенклатуру | Есть выгрузка настроек счетов учета и зарплатных данных из ERP / КА 2 | Можно проверить на вашем сервере перед покупкой, обращайтесь!

38500 34650 руб.

15.04.2019    69084    181    139    

111

ЕГАИС++. Опт, производство, импорт

Оптовая торговля Розничная торговля Обмен с ГосИС Платформа 1С v8.3 1С:Управление торговлей 10 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Россия Бухгалтерский учет Управленческий учет Акцизы Платные (руб)

Полнофункциональное расширение (ранее известное как Модуль 1С-ЕГАИС) для взаимодействия типовых конфигураций 1С и ЕГАИС, предоставляющее максимум возможностей по работе с УТМ. Получение и отправка ТТН, отправка акта о постановке на баланс и акта о списании. Получение остатков. Загрузка и сопоставление номенклатуры и контрагентов. Оправка в ЕГАИС отчетов о производстве и импорте.

8970 руб.

15.12.2015    166888    706    362    

391

Обмен 1С с Честным Знаком для УТ11, УНФ, КА2, ERP, Розница: Расширение для работы с СУЗ, ГИС МТ, ЦРПТ

Обмен с ГосИС Платформа 1С v8.3 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Полноценное интеграционное решение которое манипулирует сотнями задач по ведению учета в системе мониторинга честный знак, особенности: такие как полная поддержка учета карточек в национальном каталоге (модерация, редактирование, подписание, получение информации), получение кодов маркировок в станции управления заказами "СУЗ Облако", удобная отправка и получение "УПД" через систему "ЭДОЛайт" из документов реализации или корректировки, так же существует механизм приема через ЭДОЛайт, отправка и получения таких документов как перемаркировка , списание, отгрузка и еще более 40 типов документов в ГИСМТ которые описаны ниже, моментальное сопоставление и внедрение в типовую конфигурацию которое обеспечивает ракетную мега скорость ...

18000 руб.

28.03.2023    10483    38    9    

41

Перенос данных из УПП 1.3 в БП 3.0. Переносятся документы (обороты за период), справочная информация и остатки

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.226.x) и БП 3.0 (3.0.151.x). Правила подходят для версии ПРОФ и КОРП.

28000 руб.

15.12.2021    20740    136    38    

95

Перенос данных из УТ 10.3 в УТ 11.5. Переносятся документы (обороты за период), справочная информация и остатки

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 1С:Управление торговлей 11 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.87.x) и УТ 11.5 (11.5.16.x).

28000 руб.

23.07.2020    46973    201    64    

162
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. RocKeR_13 1325 23.11.23 17:52 Сейчас в теме
в выходных данных писался код маркировки полностью, с символом GS. А 1С не умеет его читать по-человечески

В смысле не умеет? Символ(29)

1С не умеет на сервере нормально формировать полноценный GTIN

GTIN (он же Global Trade Item Number) - это только часть кода маркировки. Возможно, вы имели в виду формат GS1-DataMatrix? Да и почему не умеет - еще как умеет! В комплексной автоматизации есть же заказы на эмиссию кодов маркировки с последующей печатью по фэн-шую со всеми символами GS и спецсимволом FNC1.

Вся суть-то в том, что Символ(29) не сериализуется, поэтому в явном виде передавать полный коод маркировки с клиента на сервер и обратно нельзя. Поэтому 1С использует кодирование строки значения кода маркировки в Base64. Полные коды с разделителями хранятся в регистре сведений "Пул кодов маркировки СУЗ" в реквизите "ПолныйКодМаркировки" в виде Base64-строки, если они были заказаны из самой 1С документом "Заказ на эмиссию кодов маркировки СУЗ"
TigerS74; +1 Ответить
2. Lemmonbri 120 24.11.23 09:20 Сейчас в теме
(1)
В смысле не умеет? Символ(29)
ЧИТАТЬ, а не вставить в строку. При чтении XML с символом GS он не распознает XML и выдает ошибку, что некорректная структура.

(1)
GTIN (он же Global Trade Item Number) - это только часть кода маркировки. Возможно, вы имели в виду формат GS1-DataMatrix? Да и почему не умеет - еще как умеет! В комплексной автоматизации есть же заказы на эмиссию кодов маркировки с последующей печатью по фэн-шую со всеми символами GS и спецсимволом FNC1.

Вся суть-то в том, что Символ(29) не сериализуется, поэтому в явном виде передавать полный коод маркировки с клиента на сервер и обратно нельзя. Поэтому 1С использует кодирование строки значения кода маркировки в Base64. Полные коды с разделителями хранятся в регистре сведений "Пул кодов маркировки СУЗ" в реквизите "ПолныйКодМаркировки" в виде Base64-строки, если они были заказаны из самой 1С документом "Заказ на эмиссию кодов маркировки СУЗ"
Да, имел ввиду GS1-DataMatrix. Вы сами говорите в начале что 1С умеет, а потом говорите что из-за сериализации нельзя полностью передавать, сами себе противоречите. Как я и написал, мы и декодировали из base64.
3. RocKeR_13 1325 24.11.23 09:50 Сейчас в теме
(2)
ЧИТАТЬ, а не вставить в строку. При чтении XML с символом GS он не распознает XML и выдает ошибку, что некорректная структура.

Он в XML выгружался как есть, без экранирования? Тогда понятно. Обычно всё-таки при интеграциях символ GS заменяют, так как многие системы не могут корректно прочитать такие XML-файлы. Яндекс, например, в своем API требует заменять символ GS на последовательность "\u001d"

(2)
сами себе противоречите

Вы же писали, что "1С не умеет на сервере нормально формировать полноценный GTIN" - 1С же умеет. В чем противоречие? Непонятно тогда, что имели вы в виду, говоря, что "1С не умеет". С символом GS в строковых параметрах можно спокойно работать как на клиенте, так и на сервере. Исключение - только передача значения полного кода маркировки между контекстами в явном виде, так как при этом происходит XML-сериализация параметра, а, как выяснили выше, 1С считает символ GS недопустимым в XML. Если формировать картинку для печати кода маркировки на сервере, то по сути никакого Base64-кодирования и не нужно, так как на клиент пойдет уже готовый табличный документ с картинками, а не со значениями полных кодов с GS-символами.
4. Lemmonbri 120 24.11.23 09:58 Сейчас в теме
(3)
Он в XML выгружался как есть, без экранирования?
да, экранирование потом добавили, все норм стало
(3)
Вы же писали, что "1С не умеет на сервере нормально формировать полноценный GTIN" - 1С же умеет.
Тут как вы выше писали под GTIN я имел ввиду GS1-DataMatrix полностью, с FNC1 и GS. А такая сущность как вы сказали существуем только на клиенте либо на сервере в зашифрованном виде.
5. RocKeR_13 1325 24.11.23 11:21 Сейчас в теме
(4)
Тут как вы выше писали под GTIN я имел ввиду GS1-DataMatrix полностью, с FNC1 и GS. А такая сущность как вы сказали существуем только на клиенте либо на сервере в зашифрованном виде.

Нет, не так. На сервере вы спокойно можете декодировать Base64-строку и работать с символами GS на сервере. Кодирование в Base64 необходимо, если нужно передать значение кода маркировки с символами GS между клиентом и сервером. Работать с символом GS вы можете как на клиенте, так и на сервере.
6. Lemmonbri 120 24.11.23 11:25 Сейчас в теме
(5) Вы видели схему взаимодействия? Заказ кодов маркировки идет на клиенте. Инициация обмена с ЧЗ идет на клиенте. Поэтому чтобы передать коды с клиента на сервер надо их кодировать что и делает 1С в base64. А в XML надо положить раскодированный код. Поэтому я вам и говорю, что 1С НЕ МОЖЕТ на клиенте заказать коды и положить их на сервере в XML. А вы мне твердите про работу с символами GS на сервере. В отрыве от задачи - да, работает. Но в рамках задачи ваш комментарий бесполезен.
7. RocKeR_13 1325 24.11.23 11:49 Сейчас в теме
(6) Еще раз, вы заявили, что
1С не умеет на сервере нормально формировать полноценный GTIN GS1-DataMatrix

Это утверждение некорректное. При чем тут формирование GS1-DataMatrix и запись символа в XML? Комплексная автоматизация и другие типовые конфигурации "из коробки" без проблем умеют заказывать полные коды в ЧЗ и выводить их на печать, при этом формирование картинки с кодом маркировки в формате GS1-DataMatrix производится на сервере.
8. Lemmonbri 120 24.11.23 13:17 Сейчас в теме
(7) Он в зашифрованом base64 везде, а не в сыром виде. Т.е. он оперирует не GS1-DataMatrix, а зашифрованным кодом. А я уже сказал, что требуется положить в сыром виде. А 1С оперирует в зашифрованном. А надо в сыром.
9. RocKeR_13 1325 24.11.23 14:05 Сейчас в теме
(8) Какая-то путаница получилась. Так бы и написали в выводах, что "из-за ограничений использования символа GS в XML на стороне платформы 1С, разработчики приняли решение хранить полные коды в виде Base64 строки; также из-за данного ограничения было принято решение - при выгрузке в XML данный символ экранировать". За годы работы с маркированной продукцией в типовых конфигурациях я ни разу не столкнулся с какими-то проблемами при работе с полными кодами, в том числе на сервере и в том числе при интеграциях со сторонними сервисами или маркетплейсами. В принципе в подсистеме ГосИС есть масса полезных и облегчающих жизнь процедур и функций.
10. andrew.ab 220 05.12.23 15:09 Сейчас в теме
Плохо копали. Типовая 1С хранит как GS1-DataMatrix так и его base64. И в подсистеме ГосИС куча функций по конвертации как в base64, так и обратно в зависимости от вида продукции (молоко, шины, табак, алкоголь, и.т.п.).
Оставьте свое сообщение