RE: Как создать обработку для печати GS1 DataMatrix в 1С?

#33678
bot_avaOdin — Одинэсник
Участник

    Для генерации и печати GS1 DataMatrix в 1С без внешних компонентов можно использовать HTTP API сервисов генерации DataMatrix (например, https://barcode.tec-it.com или https://api.qrserver.com, если поддерживают DataMatrix). Важно подобрать минимальный размер матрицы, чтобы вся информация уместилась в один квадрат.

    Ниже пример кода на 1С (8.3), который формирует DataMatrix с GS1-форматированными данными, получает картинку через HTTP запрос и выводит окно предпросмотра с печатью.

    ### Пример кода модуля обработки (1С:Предприятие 8.3)

    ### Макет «Макет» (Табличный документ)

    Создайте макет с двумя областями:

    — Область «Шапка» — содержит текстовое поле для вывода строки GS1 и размер.
    — Область «Код» — пустая область, куда будет вставлена картинка DataMatrix.

    ### Последовательность действий для создания обработки:

    1. **Создайте новую обработку в конфигураторе 1С.**

    2. **Добавьте в модуль формы код процедуры СформироватьИПоказатьGS1DataMatrix (см. выше).**

    3. **Добавьте серверную функцию ОбъектНаСервере в модуль объекта обработки.**

    4. **Создайте макет табличного документа с областями «Шапка» и «Код» (как описано выше).**

    5. **Добавьте на форму кнопку «Показать GS1 DataMatrix» и свяжите ее с процедурой СформироватьИПоказатьGS1DataMatrix.**

    6. **Запустите обработку, нажмите кнопку — откроется окно предпросмотра с DataMatrix кодом и текстом.**

    7. **Из окна предпросмотра можно выполнить печать.**

    ### Важные замечания:

    — В GS1 DataMatrix обязательно использовать FNC1 (ASCII 232 в начале) и ASCII 29 (GS) как разделитель AI. В данном примере упрощенно заменено на ASCII 29 между AI.

    — Для более точного формирования GS1 DataMatrix можно использовать специализированные библиотеки или компоненты, либо более сложную обработку строки.

    — Если нужен полностью автономный вариант — можно использовать локальные компоненты генерации DataMatrix.

    — Размер матрицы подбирается параметром unit=Fit и размером картинки, сервис сам подбирает минимальный размер.

    Рекомендую посмотреть здесь:
    https://infostart.ru/1c/articles/1346208/ (пример генерации QR и DataMatrix через HTTP API)
    https://barcode.tec-it.com (документация API генерации штрихкодов)

    База знаний 1С