Продукты в прайсе: сроки годности и даты в файле

Поставщик бакалеи прислал прайс на 400 позиций: у половины срок годности записан «12 мес.», у части стоит только дата производства, а в колонке «Годен до» вперемешку «01.02.2026», «2026-02-01» и «февраль 2026». Категорийный менеджер сети просит файл с единым форматом дат, а система приёмки каждую такую строку встречает ошибкой. Разберём, какие даты вообще живут в продовольственном прайсе и как привести их к одному виду за один проход.

Три вида дат в продовольственном прайсе

Главная путаница в том, что под словом «дата» поставщики понимают разное. В одном и том же файле обычно встречаются три сущности:

Что в колонкеВид значенияПример
Срок годностичисло и единица90 дней, 12 мес.
Дата производствадата12.01.2026
«Годен до»дата12.04.2026

Разница принципиальна. Срок годности — свойство номенклатуры: у этой крупы он 12 месяцев всегда, независимо от партии. Дата производства и «годен до» — свойства конкретной партии: сегодняшняя машина привезла одни значения, следующая привезёт другие. Сети и учётные системы ждут их в разных колонках: срок годности — в товарном шаблоне, даты партии — в накладной или спецификации поставки. Смешать их в одну колонку «Срок/дата» — значит гарантированно получить отказ при загрузке.

Отдельный нюанс — срок годности как дата. Иногда поставщик пишет «годен до 03.2027», имея в виду «срок годности 24 месяца от сегодняшнего дня». Для системы это некорректно: конкретная дата в поле, где ждут число дней, ломает импорт.

Почему даты ломают загрузку: форматы

Даже когда смысл колонки правильный, файл часто не проходит из-за записи самих дат. Типовая картина в одной колонке:

  • 01.02.2026 — российская запись «день.месяц.год»;
  • 2026-02-01 — ISO-формат «год-месяц-день», его выгружают 1С и учётные системы;
  • февраль 2026 — текст, который не является датой вообще;
  • 46000 с лишним — пятизначное число: Excel хранит дату как количество дней от 1 января 1900 года, и при выгрузке значение иногда уходит в файл числом. Подробно этот случай разобран в статье про дату, которая превратилась в число.

Для человека все четыре записи очевидны, для системы приёмки — нет. Парсер читает колонку по одному правилу: если шаблон настроен на «ДД.ММ.ГГГГ», строка «2026-02-01» упадёт в ошибки, а «01.02.2026» и вовсе двусмысленна — без контекста непонятно, это 1 февраля или 2 января. Чем больше позиций, тем дороже проверка: при 400 строках ручной просмотр колонки с датами — это ещё один вечер перед отгрузкой.

Колонка с датами в четырёх разных форматах в продовольственном прайсе
Одна колонка — четыре формата: система приёмки такой файл не прочитает

Приводим даты к единому формату

Откройте конвертер прайс-листов и перетащите файл на страницу. Дальше — по шагам.

Шаг «Структура». Укажите, с какой строки начинается таблица: у прайсов с реквизитами и логотипом в «шапке» это обычно не первая строка. Строки-разделы с названиями групп («Бакалея», «Консервация») убираются здесь же, чтобы не мешать обработке.

Шаг «Колонки». Договоритесь с собой о едином формате — чаще всего сети ждут ДД.ММ.ГГГГ, точное требование сверьте с шаблоном заказчика. Затем приведите колонку к нему действием «Заменить текст»:

  • из ISO в российский вид: сначала длинные паттерны, потом короткие — например, замена «2026-02-01» на «01.02.2026» выполняется серией правил по месяцам;
  • текстовые месяцы — в числа: «февраль» на «02», «март» на «03» и так далее;
  • «мес.» и «мес» — к одному написанию, если срок годности тоже нужно стандартизировать.

Порядок правил важен: замена «.01.» на «.1.» затронет и январь, и октябрь с ноябрём-декабрём не заденет, а вот «1» без точек перепишет всё подряд. Начинайте с самых длинных и специфичных фрагментов, заканчивайте общими.

Действие Заменить текст применяется к колонке с датами в конвертере
«Заменить текст»: серия правил приводит все даты к виду ДД.ММ.ГГГГ

Экспорт. Скачайте XLSX со значениями — без формул, чтобы дата не пересчиталась в число при открытии на другой машине. Настройку сохраните шаблоном: следующий прайс того же поставщика обработается применением шаблона за минуту.

Не только даты: вес и объём в названии

У продовольственного прайса есть вторая типовая проблема, и она идёт в связке с первой. Вес и объём обычно зашиты прямо в наименование: «Молоко 3,2% 0,9 л», «Крупа гречневая 800 г», «Сок яблочный 1,5 л ПЭТ». Для сетей фасовка — отдельное поле или даже отдельная товарная позиция: 0,9 л и 1,5 л одного сока живут в каталоге как разные SKU со своими штрихкодами.

Если вес у поставщика лежит отдельной колонкой, соберите читабельное наименование склейкой по шаблону вида {Наименование} {Вес} {Ед. изм.}. Если фасовка наоборот сидит внутри названия, приведите её к единому написанию тем же «Заменить текст»: «0.9л», «0,9 л» и «900 мл» — это три разных значения для фильтров каталога. Подробнее про стандартизацию единиц — в статье про единицы измерения в прайсе.

Типовые ошибки при загрузке в сети и системы

  • Дата текстом. «Февраль 2026» в поле даты — самая частая причина отказа. Текст не парсится, строка отклоняется.
  • Разные форматы в одном файле. Даже если каждая запись по отдельности корректна, смесь «01.02.2026» и «2026-02-01» в одной колонке ломает импорт целиком.
  • Срок годности датой. В поле, где ждут «12» (месяцев), стоит «12.03.2027». Импорт либо падает, либо считает срок неверно.
  • Дата как число Excel. Пятизначное значение вместо даты — следствие выгрузки с формулами или из «умной» таблицы. Лечится экспортом значений.
  • Пустое «годен до» у скоропорта. Для молочки и охлаждёнки сети часто требуют дату партии обязательно — пустые ячейки отклоняют строку.

Точный список обязательных полей и формат даты у каждой сети свой и время от времени меняется, поэтому перед отгрузкой сверяйтесь с актуальным шаблоном заказчика. Как устроены требования крупной сети к файлу поставщика в целом — разбираем в статье про поставку в X5.

Готовый файл поставки с датами в едином формате после экспорта
Итоговый файл: все даты в одном формате, срок годности — числом

Частые вопросы

Срок годности записан как «12 мес.» — это нормально?

Для человека — да, для системы зависит от шаблона заказчика. Одни сети ждут число месяцев, другие — дней, третьи принимают строку. Приведите колонку к требованию шаблона действием «Заменить текст»: «12 мес.» в «12» или «360 дней» — по правилам конкретной сети.

Excel превратил дату в пятизначное число. Как вернуть дату?

Это внутреннее представление даты в Excel: количество дней от 1 января 1900 года. Заменить число обратно на дату внутри файла можно пересчётом, но надёжнее выгружать итог значениями без формул и хранить дату в заранее согласованном текстовом виде — тогда она не пересчитается ни при каком открытии. Подробности — в статье про дату, которая превратилась в число.

Можно ли оставить в файле два формата дат для разных групп товаров?

Нет. Система приёмки читает колонку по одному правилу, и вторая группа гарантированно упадёт в ошибки. Если группы товаров принципиально разные — например, скоропорт с датой партии и бакалея только со сроком годности — разделите файл на два и обработайте каждый своим шаблоном.

Прайс приходит каждую неделю — настраивать всё заново?

Нет. После регистрации настройка шагов сохраняется шаблоном: структура, переименование колонок, все правила замены дат и фильтры. Свежий файл того же поставщика обрабатывается применением шаблона за минуту — меняются только значения, а не формат.