Содержание
Даты GS1 в скане: различайте AI 15 и AI 17
В выгрузке из GS1-штрихкода есть дата, но после обмена она попала в неподходящее поле справочника. Проверьте не только шесть цифр, но и идентификатор применения перед ними. AI 15 и AI 17 имеют одинаковую длину данных, однако описывают разные атрибуты.
В официальном наборе идентификаторов GS1 AI 15 описан как Best before date, с заголовком BEST BEFORE or BEST BY. AI 17 описан как Expiration date, с заголовком USE BY or EXPIRY. Это основание для проверки сопоставления полей, а не универсальное решение о возможности продажи конкретного товара.
Сохраните исходную структуру
Для одной спорной позиции сохраните полную исходную строку скана, результат разбора и карточку, куда переданы данные. Не ограничивайтесь видимой датой из таблицы: после форматирования можно потерять связь значения с его AI.
Уточните у специалиста по интеграции, в каком виде программа получает сведения: исходная строка, уже разобранные пары или иной формат. Не пытайтесь искать произвольные вхождения цифр 15 и 17 внутри кода: эти цифры могут быть частью другого значения. Начало поля должен определить корректный разбор структуры.
Сопоставьте AI и значение отдельно
Набор GS1 задаёт для обоих атрибутов формат N2+N6: две цифры идентификатора и шесть цифр данных даты в представлении YYMMDD. Идентификатор не входит в сами шесть цифр даты.
Подготовьте таблицу проверки:
| Что пришло после разбора | Что сохранить в сопоставлении |
|---|---|
| AI 15 и его значение | Отдельный атрибут Best before |
| AI 17 и его значение | Отдельный атрибут Expiration |
| Оба AI | Две пары без подмены одного назначения другим |
| Только одна дата без AI | Недостающий контекст до автоматического заполнения |
Название целевого поля должно быть согласовано с его смыслом в вашей системе. Если в учётной программе есть только одно общее поле «дата», не выбирайте автоматически последнее встретившееся значение. Передайте различие владельцу справочника и сохраните исходные пары до решения.
Проверьте весь путь на одной записи
Сравните результат разбора с исходным атрибутом, затем запись в карточке и следующую выгрузку. Дата может выглядеть правильно в интерфейсе, но уйти в другой атрибут при обратном обмене. Поэтому итоговая проверка должна включать назначение, а не только внешнее совпадение цифр.
Ошибку календарной проверки разбирайте отдельно от ошибки сопоставления. Одинаковая длина строки не подтверждает допустимость любой комбинации цифр. Для специальных правил представления даты используйте полную действующую спецификацию и документацию реализации; не дополняйте данные произвольно.
Зафиксируйте границы решения
Результат: для каждого AI известно целевое поле, исходное значение сохранено, обратная передача проверена. Если назначение поля не согласовано, оставьте запись в списке исключений вместо молчаливой подмены.
Техническое распознавание атрибута не определяет требования к продаже, хранению или обязательной маркировке товарной группы. Эти решения опираются на применимые правила и сведения о самом товаре. Исправление интеграции должно сохранять исходный смысл даты, а не создавать его заново.
Комментарии 0