Онлайн-генератор применяет стандарт GS1-128 для кодирования данных в одномерный линейный штрихкод на основе введенных пользователем значений и выбранных идентификаторов применения AI. Инструмент преобразует разрозненные атрибуты груза в единую последовательность штрихов и пробелов, сопровождаемую человекочитаемой строкой. Сформированное изображение готово к размещению на логистических этикетках для автоматизированного учета складских и транспортных операций. На выходе получается графический символ, полностью соответствующий спецификациям глобальной системы стандартов.
Стандарт GS1-128 (ранее известный под обозначениями UCC/EAN-128 и EAN-128) не является самостоятельной графической символикой, а представляет собой строгий прикладной профиль на базе алгоритма Code-128. Он регламентирует логическую структуру передаваемой строки в цепях поставок.
Главное назначение такого штрихкода заключается в объединении нескольких параметров товарной партии или паллеты внутри одного линейного носителя. При генерации пользователь задает входной набор реквизитов, где каждому значению предшествует свой префикс AI, определяющий назначение и формат поля. Сканирующее оборудование считывает этот профиль и безошибочно распознает, где в общей строке записан код контейнера SSCC, номер предмета торговли GTIN, дата истечения срока годности или номер партии. За счет стандартизированного синтаксиса один сгенерированный символ заменяет собой несколько отдельных штрихкодов на групповой или транспортной упаковке.
Архитектура стандарта GS1-128 и отличия от базовой символики Code-128
Техническая база GS1-128 полностью регламентируется документом GS1 General Specifications Standard. Для физического построения штрихов и пробелов используется алфавитно-цифровая символика Code-128, обеспечивающая высокую плотность записи информации. Чтобы уместить длинную строку реквизитов в компактный графический блок, стандарт задействует три кодовых набора: A, B и C, которые активируются соответствующими стартовыми знаками START-A, START-B или START-C.
Выбор конкретного набора зависит от типа записываемых символов на каждом участке строки:
- Кодовый набор A включает цифры, прописные латинские буквы, знаки пунктуации и управляющие символы.
- Кодовый набор B содержит цифры, прописные и строчные латинские буквы, а также стандартные печатные знаки.
- Кодовый набор C кодирует исключительно пары цифр от 00 до 99 в один графический знак, что вдвое сокращает физическую длину штрихкода при записи чисто числовых последовательностей.
Во время формирования штрихкода наборы могут чередоваться внутри одной полосы. Числовые идентификаторы записываются через сжатый набор C, а при переходе к буквенно-цифровому номеру серии или партии происходит переключение на набор A или B.
Роль стартового символа FNC1 и структура кода
Визуально обычный линейный код Code-128 и логистический GS1-128 выглядят одинаково, однако на программном уровне декодирования между ними лежит принципиальная разница. Ключевое отличие GS1-128 от базового Code-128 заключается в обязательном присутствии специального функционального символа FNC1 непосредственно на второй позиции - сразу после стартового знака START-A, START-B или START-C.
Эта комбинация стартового знака и FNC1 служит аппаратным маркером. При считывании такой последовательности сканер и декодер распознают принадлежность строки к формату GS1, активируют правила разбора префиксов AI и передают в учетную систему специальный идентификатор символики. Если символ FNC1 после старта отсутствует, оборудование воспримет полосу как обычный текст в формате Code-128 без логической разбивки на атрибуты груза.
Внутренняя архитектура сформированного штрихкода подчиняется строгой линейной последовательности элементов (слева направо):
- Стартовый символ (START-A, START-B или START-C), задающий начальный кодовый набор.
- Служебный знак FNC1, указывающий на соответствие спецификациям GS1.
- Информационные блоки в формате «AI + данные», где за каждым префиксом следует привязанное к нему значение.
- Контрольный символ символики, обеспечивающий целостность считывания графических элементов.
- Стоп-символ (STOP), завершающий штриховую последовательность.
В следующей таблице представлены основные архитектурные различия между базовой символикой и специализированным логистическим профилем:
| Критерий сравнения | Базовый Code-128 | Стандарт GS1-128 |
|---|---|---|
| Нормативная база | Стандарт символики общего назначения | Регламент GS1 General Specifications Standard |
| Наличие FNC1 после старта | Не используется | Обязательно сразу после стартового символа |
| Структура информационного поля | Произвольный набор символов без жесткой схемы | Строгие блоки «AI + данные» |
| Интерпретация сканером | Считывание сплошной текстовой или числовой строки | Распознавание формата GS1 и выделение отдельных атрибутов товара |
Глобальный префикс компании GCP при формировании идентификаторов
Архитектура стандарта требует, чтобы коды товаров и логистических единиц внутри штрихкода были уникальными в мировом масштабе и не пересекались у разных производителей. Для этого при генерации базовых идентификаторов используется GCP. Этот уникальный числовой префикс присваивается предприятию национальными организациями при вступлении в систему (на территории России функции национального представительства выполняет ассоциация ГС1 РУС / Юнискан).
Полученный номер GCP выступает неизменной корневой частью для построения ключевых номеров в системе: на его основе предприятие формирует собственные идентификаторы GTIN для продукции и серийные коды SSCC для транспортных паллет или коробов. За счет включения GCP в структуру данных любой участник цепи поставок при сканировании штрихкода однозначно идентифицирует владельца торговой марки или отправителя груза в едином международном реестре.
Идентификаторы применения (AI) и синтаксис входных данных
Стандартизированная передача нескольких разнородных атрибутов в одном штрихкоде строится на использовании идентификаторов применения AI. Технически AI представляет собой числовой префикс из двух, трех или четырех цифр, который ставится непосредственно перед информационным полем. Этот префикс однозначно определяет семантику (смысловое назначение), допустимый формат символов (только цифры или алфавитно-цифровой набор) и длину следующего за ним блока данных.
При считывании штрихкода учетная система распознает префикс AI и направляет следующие за ним символы в соответствующее поле базы данных: номер партии записывается в графу партионного учета, а дата - в карточку контроля сроков годности. Без таких префиксов сканер передал бы сплошную строку символов, которую невозможно автоматически разделить на отдельные параметры груза.
Основные идентификаторы применения при генерации кода
Стандарт включает более сотни различных префиксов, однако в складской и транспортной логистике при формировании штрихкодов регулярно используется базовый набор идентификаторов. Ниже приведены ключевые коды AI и требования к синтаксису их полей данных:
| Код AI | Назначение информационного поля | Формат и структура данных |
|---|---|---|
| 00 | Серийный код транспортной упаковки SSCC (или SSCC-18) | Строго 18 цифр. Начинается с цифры расширения (1 символ), за которой следуют базовый номер на основе префикса компании, серийный номер контейнера и контрольное число. |
| 01 | Глобальный номер предмета торговли GTIN (или GTIN-14) | Строго 14 цифр. Первый символ выступает цифрой-индикатором (логистическим вариантом упаковки), при кодировании обычного GTIN-13 перед ним добавляется ведущий ноль. |
| 02 | Идентификатор GTIN товаров, содержащихся внутри логистической единицы | Строго 14 цифр. Указывает номенклатуру вложенной продукции для сборной или однородной паллеты. По правилам стандарта применяется исключительно в связке с кодом 37. |
| 10 | Номер партии, производственной серии или лота | До 20 алфавитно-цифровых символов. Позволяет отслеживать конкретную смену или цикл выпуска продукции. |
| 15 | Минимальный срок годности (дата категории «Употребить до» / Best before) | Строго 6 цифр в формате ГГММДД (год, месяц, день). |
| 17 | Окончательный срок годности или дата истечения срока хранения (Expiration date) | Строго 6 цифр в формате ГГММДД. Если точный день не регламентирован и срок ограничен только месяцем, в позицию дня «ДД» записываются два нуля (00). |
| 21 | Индивидуальный серийный номер экземпляра товара | До 20 алфавитно-цифровых символов. Используется для поштучной прослеживаемости отдельных единиц продукции. |
| 30 | Переменное количество единиц в упаковке | До 8 цифр. Применяется для нестандартных отгрузочных мест, где объем вложения меняется от партии к партии. |
| 37 | Количество единиц товара, содержащихся в логистической единице | До 8 цифр. Обязательное дополнение к префиксу 02, указывающее точное число вложенных упаковок с заявленным GTIN. |
| 400 | Номер заказа покупателя | До 30 алфавитно-цифровых символов. Обеспечивает прямую привязку грузового места к конкретной заявке клиента при приемке. |
| 421 | Код страны доставки с почтовым индексом | Трехзначный числовой код страны по стандарту ISO, за которым следует до 9 алфавитно-цифровых символов индекса назначения. |
Помимо перечисленных базовых атрибутов, при маркировке весовых грузов и адресной доставке задействуются специализированные группы префиксов:
- Идентификаторы веса нетто для товаров переменного размера (серия префиксов 310n). Четвертая цифра префикса (n) выступает указателем положения десятичной запятой в шестизначном числовом поле. Например, при указании веса в килограммах этот индекс показывает, сколько знаков с конца числа нужно отделить для получения дробной части (граммов), поэтому сам символ точки или запятой в штрихкод не записывается.
- Идентификаторы глобального номера местоположения GLN (серия префиксов 410-414). Поле всегда состоит из 13 цифр и служит для точной адресации: код 410 указывает пункт конечной доставки («Отгрузить в»), 411 определяет плательщика, а 414 идентифицирует конкретную физическую локацию (складской терминал, цех или зону хранения).
Правило отображения круглых скобок в HRI и штрихах
При подготовке входной строки для генерации штрихкода важно строго разделять визуальное представление данных для человека и внутреннюю структуру данных для сканера. В текстовой подписи под штрихкодом HRI идентификаторы применения всегда заключаются в круглые скобки - например,
(01)04601234567891(17)261231(10)AB123
. Это делается исключительно для удобства складского персонала: скобки позволяют визуально отделить служебный префикс от самого значения при ручном вводе или проверке этикетки глазами.
В самих графических штрихах и пробелах кода символы круглых скобок строго запрещены к кодированию. Сканер распознает границы префиксов за счет внутренней логики стандарта и заранее известных таблиц длин AI. Если при формировании штрихкода принудительно закодировать символы
(
и
)
как обычные знаки из таблицы ASCII, структура данных нарушится. Оборудование на складе считает скобки как часть информационного поля, что приведет к сбою парсинга в товароучетной системе и отказу в приемке груза.
Конкатенация полей и роль разделителя FNC1 при кодировании
Последовательное объединение нескольких блоков данных в один линейный штрихкод GS1-128 называется конкатенацией. Поскольку круглые скобки вокруг префиксов не кодируются в графических штрихах, считывающее оборудование получает на входе сплошной поток символов. Чтобы декодер безошибочно определил, где заканчивается значение одного параметра и начинается следующий AI, стандарт разделяет все идентификаторы на две категории: поля фиксированной и переменной длины.
Поля фиксированной и переменной длины
Логика разбора сплошной строки при сканировании напрямую зависит от того, имеет ли конкретный информационный блок строго заданное количество знаков или его размер может меняться от партии к партии.
Идентификаторы из первой группы всегда содержат неизменное число символов, закрепленное в спецификации. Считыватель определяет первые цифры AI, обращается к встроенной таблице стандарта, отсчитывает нужное количество знаков и сразу переходит к чтению следующего префикса. Никаких дополнительных маркеров окончания для таких блоков не требуется.
Идентификаторы второй группы допускают произвольное количество символов в пределах установленного максимума. Если номер партии состоит из пяти знаков при допустимых двадцати, сканер без специальной подсказки не сможет понять, где заканчивается этот номер: он продолжит считывать последующие цифры очередного AI как продолжение текущего текстового поля.
В таблице приведено распределение основных идентификаторов по типу длины и необходимости использования закрывающего маркера при сшивке нескольких параметров:
| Код AI | Назначение поля | Тип длины поля | Количество символов данных | Требование к разделителю в середине строки |
|---|---|---|---|---|
| 00 | Код транспортной упаковки SSCC | Фиксированная | Строго 18 цифр | Не требуется |
| 01, 02 | Идентификатор товара GTIN | Фиксированная | Строго 14 цифр | Не требуется |
| 15, 17 | Даты годности | Фиксированная | Строго 6 цифр | Не требуется |
| 10 | Номер партии или лота | Переменная | До 20 символов | Обязателен перед следующим AI |
| 21 | Серийный номер | Переменная | До 20 символов | Обязателен перед следующим AI |
| 30, 37 | Количество единиц в упаковке | Переменная | До 8 цифр | Обязателен перед следующим AI |
| 400 | Номер заказа покупателя | Переменная | До 30 символов | Обязателен перед следующим AI |
Механизм работы управляющего символа FNC1
Для принудительного закрытия поля переменной длины применяется служебный символ
<FNC1>
. Если он расположен сразу после стартового знака, он указывает на сам стандарт GS1-128, но при повторном появлении внутри информационной строки этот же символ меняет свою роль и работает как разделитель групп данных.
Когда сканер считывает такой внутренний
<FNC1>
, он прерывает запись текущего переменного параметра и интерпретирует следующие за ним два, три или четыре знака как новый AI. При передаче декодированной строки от сканера в учетную систему непечатаемый
<FNC1>
преобразуется в стандартный управляющий символ Group Separator. В таблице ASCII ему соответствует десятичный код 29, который в технической документации и настройках оборудования часто обозначается как
CHR(29)
или
<GS>
.
Вставка разделителя подчиняется строгим правилам синтаксиса:
- Управляющий знак обязательно ставится сразу после значения переменной длины, если за ним в этом же штрихкоде идет еще один AI.
-
Даже если поле переменной длины заполнено до своего максимального предела (например, в AI 10 записано ровно 20 знаков, а следом идет еще один блок), символ
<FNC1>все равно должен присутствовать между ними. - После параметров фиксированной длины разделитель не ставится ни при каких условиях - его наличие там считается ошибкой формирования кода и приводит к сбою чтения.
Оптимизация последовательности AI при подготовке строки
Последовательность размещения блоков данных внутри штрихкода напрямую влияет на физическую длину итогового графического символа и надежность его считывания. Если поставить поле переменной длины в начало или середину строки, после него придется принудительно внедрять управляющий символ
<FNC1>
, который занимает дополнительное место в штрихах.
Чтобы сократить размер штрихкода и исключить ошибки с расстановкой непечатаемых знаков, при подготовке данных используют правило оптимизации порядка полей: сначала последовательно записывают все AI фиксированной длины, а параметр переменной длины выносят в самый конец строки. Когда переменное поле стоит последним, сразу за ним следует контрольный и стоп-символ. Окончание всего штрихкода естественным образом сигнализирует сканеру о завершении последнего параметра, поэтому дополнительный разделитель
<FNC1>
перед стоп-символом не ставится.
Разницу в структуре кодируемого потока можно проследить на примере сшивки трех параметров: GTIN товара
04601234567891
(AI 01, фиксированная длина), даты истечения срока годности
261231
(AI 17, фиксированная длина) и номера партии
AB123
(AI 10, переменная длина).
-
Неоптимизированная последовательность (переменное поле в середине):
010460123456789110AB123<FNC1>17261231. Здесь после номера партииAB123обязателен разделитель, иначе цифры17261231будут прочитаны как продолжение номера лота. -
Оптимизированная последовательность (переменное поле в конце):
01046012345678911726123110AB123. Сканер отсчитывает 14 цифр после префикса 01, затем ровно 6 цифр после префикса 17, а все оставшиеся до конца кода символы после префикса 10 относит к номеру партии без участия промежуточных разделителей.
Если в один штрихкод необходимо объединить сразу два или более параметров переменной длины - например, номер партии (AI 10) и серийный номер единицы товара (AI 21) - полностью избежать использования разделителя не получится. В такой ситуации все фиксированные блоки также группируют в начале, а переменные размещают в конце строки, разделяя их между собой знаком
<FNC1>
, но оставляя самое последнее поле без закрывающего управляющего символа:
01046012345678911726123110AB123<FNC1>21SN98765
.
Алгоритмы расчета контрольных чисел: Modulo-10 и Modulo-103
Самоконтролирующийся штрихкод GS1-128 использует двухуровневую защиту целостности информации. Такая архитектура предотвращает ошибки как при ручном формировании числовых идентификаторов человеком, так и при оптическом считывании готового графического изображения сканером.
Сравнение двух уровней контроля показывает их разную роль в структуре кода:
| Параметр сравнения | Первый уровень (уровень данных) | Второй уровень (уровень символики) |
|---|---|---|
| Применяемый алгоритм | GS1 Mod 10 (Modulo-10 Checksum) | Modulo 103 (по модулю 103) |
| Объект проверки | Отдельные числовые идентификаторы: GTIN-14 (AI 01, 02), SSCC-18 (AI 00), GLN | Вся закодированная строка целиком (включая служебные знаки) |
| Расположение в коде | Последняя цифра внутри соответствующего поля данных | Служебный символ непосредственно перед стоп-символом |
| Отображение в HRI | Печатается в открытом виде как часть номера | Скрыт, в текстовой строке под штрихкодом не отображается |
Уровень данных: алгоритм GS1 Mod 10
Первый контур проверки действует внутри числовых ключей системы GS1. В идентификаторах GTIN-14 (AI 01 и AI 02), SSCC-18 (AI 00) и GLN самый правый разряд всегда является контрольной цифрой, вычисляемой по алгоритму GS1 Mod 10. Если при подготовке данных указать неверное контрольное число, учетная система на складе получателя отклонит код даже при безошибочном сканировании самих штрихов.
Пошаговая формула расчета контрольной цифры по алгоритму Modulo-10 основана на чередовании весовых коэффициентов 3 и 1, которые присваиваются разрядам справа налево (без учета самой контрольной позиции):
- Запишите все цифры идентификатора, кроме последней контрольной (для GTIN-14 это первые 13 цифр, для SSCC-18 - первые 17 цифр).
- Двигаясь строго справа налево, умножьте каждую цифру на ее весовой коэффициент: крайняя правая позиция умножается на 3, следующая левее - на 1, третья справа - снова на 3, и так далее до начала строки.
- Сложите все полученные произведения, чтобы получить общую взвешенную сумму.
- Найдите остаток от деления этой суммы на 10 (операция по модулю 10) и вычтите его из 10. Если остаток равен 0, контрольная цифра также равна 0 (иначе говоря, нужно определить число, которое следует прибавить к взвешенной сумме до ближайшего большего или равного значения, кратного 10).
Разберем порядок вычислений на примере первых 13 цифр номера GTIN-14
0460123456789
, где требуется найти 14-й разряд:
| Параметр | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Цифра кода | 0 | 4 | 6 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| Вес (справа налево) | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 | 1 | 3 |
| Произведение | 0 | 4 | 18 | 0 | 3 | 2 | 9 | 4 | 15 | 6 | 21 | 8 | 27 |
Суммируем результаты умножения:
0 + 4 + 18 + 0 + 3 + 2 + 9 + 4 + 15 + 6 + 21 + 8 + 27 = 117
. Ближайшее сверху число, кратное десяти -
120
. Разница составляет
120 - 117 = 3
(или через остаток от деления:
117 mod 10 = 7
, затем
10 - 7 = 3
). Итоговый валидный номер GTIN-14 принимает вид
04601234567893
.
Уровень символики: внутренний контроль Modulo 103
Второй уровень защиты работает на физическом уровне штрихкода и проверяет отсутствие искажений при печати или считывании всей графической последовательности. Перед закрывающим стоп-символом в структуру GS1-128 обязательно встраивается внутренний контрольный символ, рассчитанный по модулю 103 (Modulo 103). При наведении луча декодер сканера заново пересчитывает контрольную сумму считанных штрихов и сверяет ее со значением этого символа. Если числа не совпадают, устройство блокирует передачу строки в компьютер, исключая попадание искаженных данных в базу.
В отличие от Mod 10, алгоритм Modulo 103 оперирует не десятичными цифрами, а внутренними числовыми индексами таблицы знаков Code-128 (от 0 до 102) и учитывает управляющие элементы. В каждом кодовом наборе знаку присвоено свое значение, а в наиболее плотном цифровом наборе C пары цифр от
00
до
99
совпадают со своими индексами от
0
до
99
.
Вычисление контрольного знака символики проходит в четыре этапа:
-
Определяется числовое значение стартового символа (например, для
START-Cоно равно105). В итоговой формуле стартовый символ всегда идет с весом1. -
Каждому последующему закодированному символу в цепочке - начиная с обязательного
FNC1(значение102в наборе C), продолжая всеми парами цифр, буквами, командами смены набора и промежуточными разделителями - присваивается порядковый весовой коэффициент по его позиции слева направо:1, 2, 3, 4 ... n. - Индекс каждого символа умножается на его порядковый вес, после чего все произведения складываются со значением стартового символа.
-
Полученная общая сумма делится на
103, а остаток от деления указывает на индекс искомого контрольного символа в таблице Code-128, штриховой паттерн которого размещается перед знаком Stop.
Проследим работу формулы Modulo 103 на примере кодирования одиночного идентификатора GTIN-14
04601234567893
с префиксом AI 01. Поскольку вся строка
0104601234567893
состоит из четного числа цифр (16 знаков), запись целиком выполняется в кодовом наборе C с разбивкой на 8 цифровых пар:
| Элемент структуры | Значение в таблице Code-128 (V) | Позиционный вес (W) | Взвешенное значение (V × W) |
|---|---|---|---|
| START-C | 105 | 1 (фиксированный) | 105 |
| FNC1 (признак GS1) | 102 | 1 | 102 |
| Пара «01» (AI) | 1 | 2 | 2 |
| Пара «04» | 4 | 3 | 12 |
| Пара «60» | 60 | 4 | 240 |
| Пара «12» | 12 | 5 | 60 |
| Пара «34» | 34 | 6 | 204 |
| Пара «56» | 56 | 7 | 392 |
| Пара «78» | 78 | 8 | 624 |
| Пара «93» | 93 | 9 | 837 |
Складываем все взвешенные значения:
105 + 102 + 2 + 12 + 240 + 60 + 204 + 392 + 624 + 837 = 2578
. Делим полученную сумму на 103:
2578 / 103 = 25
(целая часть, так как
25 × 103 = 2575
) и остаток
2578 - 2575 = 3
. Остаток
3
означает, что перед стоп-символом должен быть напечатан графический паттерн знака с индексом
03
из таблицы Code-128.
Геометрические требования стандарта и читаемость штрихкода
Точность формирования контрольных символов гарантирует синтаксическую корректность строки, однако успешное оптическое декодирование на практике зависит от соблюдения физических и визуальных характеристик графического изображения. Чтобы линейные 1D-сканеры и ТСД считывали символ с первой попытки, печатный оттиск должен соответствовать геометрическим пропорциям, оптическому контрасту и правилам компоновки элементов.
Базовый модуль и линейные габариты символа
Ключевым геометрическим параметром любого линейного штрихкода выступает X-измерение - ширина самого узкого элемента (единичного модуля штриха или пробела), которая выражается в миллиметрах или милах (тысячных долях дюйма). Все остальные штрихи и пробелы внутри каждого знака символики строятся путем кратного увеличения этого базового модуля в 2, 3 или 4 раза.
Выбор величины X-измерения напрямую определяет итоговую длину штрихкода по горизонтали. При объединении нескольких полей с большим числом знаков общее количество модулей в строке возрастает. В таких ситуациях возникает необходимость балансировать между двумя факторами:
- Увеличение X-измерения делает штрихи шире и заметнее для считывающей оптики с большого расстояния, но пропорционально растягивает символ в длину, из-за чего он может выйти за физические границы этикетки.
- Уменьшение X-измерения позволяет компактно разместить длинную строку с несколькими AI на ограниченной площади, однако требует высокой разрешающей способности печатающего устройства; при слишком малом размере модуля возможно слияние соседних темных линий при термопечати.
Высота штрихов и риски вертикального усечения
Высота графического символа обеспечивает надежный захват всей последовательности модулей при ручном или автоматическом сканировании. Когда оператор наводит луч 1D-сканера или ТСД на упаковку под небольшим углом к горизонту, линия сканирования пересекает штрихкод по диагонали. Достаточная высота полос позволяет лучу пройти через все знаки от начала до конца за один проход.
Искусственное уменьшение высоты полос относительно стандартных пропорций ради экономии места на макете называется усечением. Чрезмерное усечение по вертикали приводит к тому, что сканирующая линия выходит за верхнюю или нижнюю границу штрихов до того, как пересечет стартовый и стоповый знаки одновременно. В результате лазерные и фотосканеры не могут собрать полную кодовую фразу, что вынуждает оператора подносить устройство вплотную и тщательно выравнивать угол наклона.
Зоны молчания и визуальное оформление макета
Для безошибочного выделения графического символа на фоне упаковки и текстовых блоков вокруг штрихкода формируется специальное окружение. Основные конструктивные и оптические элементы макета включают следующие параметры:
| Характеристика изображения | Техническое описание и расположение | Влияние на работу считывающих устройств |
|---|---|---|
| Зоны молчания (тихие зоны) | Свободные светлые поля слева перед стартовым знаком и справа после стоп-символа, ширина которых задается кратно величине X-измерения (не менее 10X с каждой стороны) | Позволяют декодеру зафиксировать чистый уровень фона перед началом чтения первого штриха и после завершения последнего; попадание рамок, текста или края этикетки в свободные поля блокирует распознавание старт- и стоп-символов |
| Контраст штрихов и пробелов | Оптическая разница в коэффициентах отражения света между темными полосами и светлым основанием | Обеспечивает четкое разделение сигналов при прохождении луча; для стабильного чтения необходимы однородные темные штрихи на матовом светлом фоне без бликов и прозрачных участков |
| Ограничительные полосы | Горизонтальные линии сверху и снизу графического символа, примыкающие к торцам вертикальных штрихов | Предотвращают искажение геометрии печатных элементов при сильном прижиме печатающей головки или клише на гибких материалах, но не должны перекрывать боковые свободные поля |
| Человекочитаемый текст (HRI) | Текстовая строка с круглыми скобками вокруг идентификаторов AI, размещаемая непосредственно под штриховым полем | Служит для визуального контроля и ручного ввода данных персоналом в случае механического повреждения, истирания или загрязнения самих графических штрихов |
При подготовке макета для печати важно следить, чтобы буквы и цифры в подписи под кодом не сливались с нижними краями вертикальных штрихов. Между графической частью и строкой с текстом оставляют небольшой просвет, предотвращающий ложные срабатывания при смещении сканирующего луча к нижнему краю символа.
Практические сценарии использования штрихкодов GS1-128 в логистике
Соблюдение геометрических пропорций и контрастности макета обеспечивает безошибочное считывание этикетки на конвейерах и в складских зонах экспедиции. Сгенерированный штрихкод GS1-128 наносят на групповую и транспортную тару - гофрокороба, термоусадочные блоки, паллеты и контейнеры - для автоматизации складского учета без вскрытия упаковки.
Формирование логистической этикетки GS1 Logistic Label
При оформлении паллет и групповых коробов по стандарту GS1 Logistic Label данные часто разделяют на два или три отдельных линейных символа, располагаемых друг над другом. Такое разделение предотвращает чрезмерное растягивание одиночного штрихкода по горизонтали и позволяет сканировать нужные параметры выборочно в зависимости от этапа логистической цепи.
Верхние ярусы штрихового блока отводят под характеристики номенклатуры. Для товаров с ограниченным сроком хранения и строгим контролем серий выпуска применяется типовая связка «AI 01 + AI 17 + AI 10». В этой строке последовательно объединяются два поля фиксированной длины и одно поле переменной длины в самом конце, что избавляет от необходимости вставлять внутренний разделитель перед стоп-символом. Нижний ярус этикетки занимает отдельный штрихкод с идентификатором AI 00, содержащий код SSCC. Этот элемент выступает уникальным номерным знаком конкретной паллеты или сборного ящика на всем пути следования от линии упаковки до распределительного центра получателя.
В таблице приведены основные комбинации идентификаторов, применяемые для маркировки различных типов логистических единиц.
| Логистическая задача | Комбинация AI в штрихкоде | Пример строки HRI под штрихами | Назначение в складском контуре |
|---|---|---|---|
| Партионный учет однородных коробов с контролем свежести | AI 01 + AI 17 + AI 10 | (01)14601234567899(17)261231(10)B458 | Автоматическая блокировка отгрузки просроченного товара и блокировка конкретной производственной серии при отзыве брака |
| Учет однородных паллет с переменным числом вложений | AI 02 + AI 15 + AI 37 + AI 10 | (02)04601234567892(15)261015(37)48(10)LOT9 | Приемка грузоместа с привязкой к GTIN вложенных потребительских пачек и точному количеству штук внутри |
| Уникальная идентификация сборной или монотоварной паллеты | AI 00 | (00)046012345678901234 | Безусловное распознавание грузоместа при кросс-докинге, инвентаризации и погрузке без пересчета коробов |
| Маркировка тары под конкретный коммерческий заказ | AI 01 + AI 400 | (01)14601234567899(400)ORD-7741 | Сортировка грузовых мест на автоматизированных линиях с привязкой к документу закупки клиента |
Агрегация в системе «Честный ЗНАК» и прослеживаемость во ФГИС «Меркурий»
В контуре национальной системы маркировки «Честный ЗНАК» штрихкод GS1-128 выполняет функцию ключа агрегации для упаковки второго и третьего уровней вложенности. Чтобы не сканировать двумерный код каждой единицы товара при оптовых отгрузках, индивидуальные коды маркировки программно привязывают к единому коду группового короба или транспортного поддона.
При формировании агрегированной таможенной или складской единицы применяются два базовых подхода к генерации кода:
- Создание кода транспортной упаковки на базе AI 00 с уникальным номером SSCC, который регистрируется в отчете об агрегации как родительский контейнер для вложенных пачек или коробов.
- Формирование составного кода агрегации для группового короба по схеме «AI 01 + AI 21», где объединяются GTIN-14 самой коробки и уникальный серийный номер этой упаковки.
При строгом соблюдении иерархии вложенности считывание одного линейного кода GS1-128 с борта паллеты позволяет учетной системе мгновенно получить список всех находящихся внутри коробов и каждой отдельной единицы продукции.
Аналогичный механизм партионного прослеживания востребован при работе с продукцией животного происхождения через ФГИС «Меркурий». На производственных площадках мясоперерабатывающих и молочных комбинатов сгенерированные штрихкоды наносят на ящики и паллеты для жесткой сцепки физического груза с электронными ветеринарными сопроводительными документами. Сканирование связки GTIN, даты выработки или окончания срока годности, веса нетто и номера производственной партии исключает ручной ввод реквизитов при гашении сертификатов и ускоряет ветеринарный контроль на пандусе приемки.
Поставки на склады маркетплейсов и интеграция с ЭДО
При подготовке товаров к отгрузке на распределительные центры маркетплейсов и федеральных торговых сетей линейный код GS1-128 используется в качестве ШК короба или паллетной этикетки. При поставках по моделям складского хранения и прямого кросс-докинга регламенты площадок требуют однозначной идентификации каждого грузового места. Размещение на внешней стенке гофрокороба штрихкода с GTIN, количеством вложений и номером партии или уникальным кодом короба позволяет сортировочным линиям маркетплейса направлять тару в нужный сектор хранения сразу после выгрузки из автомобиля, избегая попадания поставки в зону обезличенного товара.
Максимальная скорость обработки грузов достигается при связывании штриховой маркировки с системами ЭДО и EDI. Процесс приемки и инвентаризации по кодам GS1-128 опирается на сквозную синхронизацию физических этикеток с электронными документами:
- Отправитель формирует отгрузочные места, наносит на них этикетки со штрихкодами и направляет покупателю электронное уведомление об отгрузке DESADV, а также УПД через оператора ЭДО.
- В структуру XML-файла УПД и сообщения DESADV заносятся те же самые значения SSCC, GTIN, номеров партий и сроков годности, которые были закодированы в штрихах GS1-128 на упаковке.
- На складе получателя кладовщик считывает с прибывшей паллеты код AI 00 с помощью ТСД, после чего складская программа сопоставляет считанный номер с предварительно загруженным электронным документом.
- Если фактический код совпадает с данными в УПД, вся партия принимается на баланс одним действием без вскрытия стрейч-пленки и поштучного пересчета внутритарных вложений.