"Разделитель" при формировании штрихкода GS-1
День добрый!
Столкнулся в описании правил формирования штрихкода формата GS-1 с "если длина номера партии меньше 20 символов, то должен присутствовать разделитель длиной 2 символа (визуально отображаться не будет).
Что это вообще такое? :)
Например, я формирую штрихкод [01]012381283[3103]000504... И после определенного идентификатора [XX] применения должен идти этот разделитель.
Столкнулся в описании правил формирования штрихкода формата GS-1 с "если длина номера партии меньше 20 символов, то должен присутствовать разделитель длиной 2 символа (визуально отображаться не будет).
Что это вообще такое? :)
Например, я формирую штрихкод [01]012381283[3103]000504... И после определенного идентификатора [XX] применения должен идти этот разделитель.
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(7) первый раз слышу о запрете на передачу между клиентом и сервером непечатаемого символа. Можно меня ткнуть носом в документацию?
(8) не знаю причины топик-стартера, но стандартная библиотека на данный момент якобы не поддерживает gs1-128 (на самом деле поддерживает, но выбирать приходится EAN-128) и не поддерживает человеческое отображение цифр ШК при использовании спецсимвола. Также - если используется устаревшая версия стандартной библиотеки, то она и EAN-128 в спецификации GS1-128 не поддерживает; плюс QR-коды там отсутствуют как класс, плюс... да много этих плюсовых минусов. Да и из коробки цифры ШК выглядят просто преотвратно. Лечится это установкой незадокументированного свойства, но оно на то и недокументировано...
(8) не знаю причины топик-стартера, но стандартная библиотека на данный момент якобы не поддерживает gs1-128 (на самом деле поддерживает, но выбирать приходится EAN-128) и не поддерживает человеческое отображение цифр ШК при использовании спецсимвола. Также - если используется устаревшая версия стандартной библиотеки, то она и EAN-128 в спецификации GS1-128 не поддерживает; плюс QR-коды там отсутствуют как класс, плюс... да много этих плюсовых минусов. Да и из коробки цифры ШК выглядят просто преотвратно. Лечится это установкой незадокументированного свойства, но оно на то и недокументировано...
(14) можно начать со справочника ШаблоныЭтикетокИЦенников.
В функции ШтрихкодыУпаковокКлиентСервер.ШтрихкодGS1 формируется штрихкод GS1.
В функции МенеджерОборудованияВызовСервера.ПолучитьКартинкуШтрихкода соответственно формируется рисунок штрихкода.
Внешняя компонента должна быть соответствующая. Можно взять из конфигурации: ОбщиеМакеты.КомпонентаПечатиШтрихкодов
Функция УстановитьКартинкуШтрихкода(РисунокШтрихкода)
...
ЗначениеШтрихкодаДляКомпоненты = Штрихкод;
Если ТипКода = 2 ИЛИ ТипКода = 17 Тогда
ЧтениеШтрихкода = ШтрихкодыУпаковокКлиентСервер.ПараметрыШтрихкода(СокрЛП(Штрихкод));
Если НЕ ЧтениеШтрихкода.Результат = Неопределено Тогда
Если ЧтениеШтрихкода.ТипШтрихкода = Перечисления.ТипыШтрихкодов.GS1_128
ИЛИ ЧтениеШтрихкода.ТипШтрихкода = Перечисления.ТипыШтрихкодов.GS1_DataBarExpandedStacked Тогда
ЗначениеШтрихкодаДляКомпоненты = ШтрихкодыУпаковокКлиентСервер.ШтрихкодGS1(ЧтениеШтрихкода.Результат,
Истина, ШтрихкодыУпаковокКлиентСервер.СимволОкончанияСтрокиПеременнойДлины());
КонецЕсли;
КонецЕсли;
КонецЕсли;
ПараметрыШтрихкода = Новый Структура;
ПараметрыШтрихкода.Вставить("Ширина", Окр(РисунокШтрихкода.Ширина / КоличествоМиллиметровВПикселе));
ПараметрыШтрихкода.Вставить("Высота", Окр(РисунокШтрихкода.Высота / КоличествоМиллиметровВПикселе));
ПараметрыШтрихкода.Вставить("Штрихкод", ЗначениеШтрихкодаДляКомпоненты);
ПараметрыШтрихкода.Вставить("ТипКода", ТипКода);
ПараметрыШтрихкода.Вставить("GS1DatabarКоличествоСтрок", GS1DatabarКоличествоСтрок);
ПараметрыШтрихкода.Вставить("МонохромныйШрифт", МонохромныйШрифт);
ПараметрыШтрихкода.Вставить("УголПоворота", УголПоворота);
ПараметрыШтрихкода.Вставить("ОтображатьТекст", ОтображатьТекст);
ПараметрыШтрихкода.Вставить("РазмерШрифта", РазмерШрифта);
ПараметрыШтрихкода.Вставить("Масштабировать", Масштабировать);
ПараметрыШтрихкода.Вставить("СохранятьПропорции", СохранятьПропорции);
ПараметрыШтрихкода.Вставить("ВертикальноеВыравнивание", ВертикальноеВыравнивание);
РисунокШтрихкода.Картинка = МенеджерОборудованияВызовСервера.ПолучитьКартинкуШтрихкода(ПараметрыШтрихкода);
КонецФункции
ПоказатьВ функции ШтрихкодыУпаковокКлиентСервер.ШтрихкодGS1 формируется штрихкод GS1.
В функции МенеджерОборудованияВызовСервера.ПолучитьКартинкуШтрихкода соответственно формируется рисунок штрихкода.
Внешняя компонента должна быть соответствующая. Можно взять из конфигурации: ОбщиеМакеты.КомпонентаПечатиШтрихкодов
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот