Как узнать, из какого заказа код маркировки: поиск КМ по тысяче папок за секунду
Приходит вопрос: «этот код уже печатали?», «из какого он прихода?», «с чем он был заказан?». А на диске — папки за два года: «Приход 14.03», «Приход 15.03», «Заказ 579», и в каждой файлы с кодами. Открывать по одной — час работы. Разбираем, как отвечать на такие вопросы за секунду и почему на базу «Честного Знака» тут полагаться нельзя.
Почему личный кабинет ЧЗ не всегда помогает
Казалось бы: есть код — посмотри его в «Честном Знаке». На практике это работает не всегда. Данные по старым заказам из кабинета со временем уходят, доступ к нему бывает закрыт (сменился сертификат, уволился сотрудник, лежит сервис), а ответ приходит про статус кода, а не про то, в каком вашем файле он лежал и с какими кодами его заказывали вместе.
Зато папки с выгрузками лежат на диске годами и никуда не деваются. Ответ там есть — вопрос только в том, как его быстро достать.
Как это делают вручную (и почему это долго)
Обычно так: открывают папку за папкой, каждый файл в Excel или блокноте, жмут Ctrl+F, ищут кусок кода. На пяти папках терпимо. На тысяче — это полдня, и всё равно легко промахнуться: в файле код лежит в двух колонках (GTIN отдельно, серийник отдельно), а в буфер обмена вы скопировали код целиком — поиск ничего не находит, хотя код там есть.
Ещё одна ловушка — криптохвост. Полный код маркировки выглядит так:
01 + GTIN(14) + 21 + серийник + разделитель + 93 + подпись. Хвост с подписью при
копировании часто теряется или обрезается. Искать по полной строке бесполезно: она у вас и
в файле различается, хотя код один и тот же.
Решение: один раз проиндексировать — дальше искать мгновенно
В MarkPDF появился раздел «Поиск КМ по папкам». Работает в два шага.
Шаг 1. Указываете папку, в которой лежат все приходы, и нажимаете «Индексировать». Программа обходит дерево и запоминает, какой код в каком файле и в какой строке лежит. Двести тысяч кодов индексируются примерно за девять секунд, повторная индексация — за доли секунды: перечитываются только новые и изменившиеся файлы.
Шаг 2. Вставляете код — или сразу список кодов — и жмёте «Найти». В таблице появляется: папка, файл, номер строки, номер заказа и наименование товара.
Что можно вставлять в поиск
- Полный код со сканера — вместе с криптохвостом.
- Код без хвоста — то, что обычно остаётся после копирования из таблицы.
- Один серийник — без «01…21…».
- Начало кода — вписали «5UgpLh», нашёлся «5UgpLhnZ_qKiW». Это тоже мгновенно.
- Кусок из середины — отдельной галкой: тут программа перебирает весь индекс, и на миллионе кодов это займёт около секунды.
- Список кодов сразу — из буфера обмена или из файла: ответ будет по каждому.
Регистр при этом учитывается. В серийниках «Честного Знака» строчные и прописные буквы — разные символы, и «abc» с «ABC» это два разных кода. Программа их не путает.
Чем ещё полезен индекс
«Соседи по файлу» — все коды из того же файла. Это ответ на вопрос «с чем этот код был заказан»: видно весь заказ целиком.
Один код в двух папках — показываются оба места. Это не помеха, а находка: значит, где-то лежит копия папки или код печатали дважды.
Поиск по номеру заказа и товару — из имени файла разбираются номер заказа, GTIN и наименование, так что искать можно и по ним.
Честное «не найдено» — если кода в индексе нет, программа так и пишет, и сразу говорит, когда индекс обновлялся в последний раз. Чтобы не гадать, то ли кода нет, то ли индекс устарел.
Отдельная история: Excel незаметно портит файлы с кодами
Пока делали индексацию, нашлась вещь, о которой стоит знать всем, кто хранит выгрузки заказов. Открытый и пересохранённый в Excel файл с кодами маркировки может стать недействительным — и по нему это не видно.
Реальный пример из архива. Файл заказа на 2400 строк выглядит нормально: столбцы на месте, количество сходится. При разборе оказалось, что настоящих кодов в нём 998. Начиная со строки 999 идёт копия последней строки: серийник один и тот же, а криптоподпись Excel досчитал сам — 93d1387, 93d1388, 93d1389 и так далее. Кто-то выделил последнюю строку и протянул её вниз за уголок. Таких кодов не существует.
Второй вариант той же беды: при сохранении из Excel исчезает разделитель GS — тот самый невидимый символ между серийником и криптоподписью. Внешне строка целая, а DataMatrix из неё получается неверный.
Что с этим делать:
- Файлы с кодами хранить как есть, в том виде, в каком их отдала СУЗ — не открывать «просто посмотреть» и точно не сохранять из Excel поверх оригинала.
- Если посмотреть надо — открывать копию.
- Проверять архив: MarkPDF при индексации помечает такие файлы и пишет прямым текстом, с какой строки начались повторы и сколько кодов в файле настоящие.
Один испорченный файл — это партия этикеток с кодами, которых нет в «Честном Знаке». Заметить это на приёмке дороже, чем проверить заранее.
Коротко
- Папки с выгрузками — более надёжный источник, чем кабинет ЧЗ: они не «протухают».
- Один раз проиндексировать тысячу папок — и любой код находится за доли секунды.
- Искать можно по целому коду, по обрезанному, по серийнику, по началу и по куску.
- Индекс заодно показывает, какие файлы испорчены Excel и сколько кодов в них настоящие.
Раздел «Поиск КМ по папкам» доступен в MarkPDF с версии 1.1.36 — скачать программу можно на главной, первые дни работают бесплатно.