Часто задаваемые вопросы: TFORMer Designer
Фрагмент кода: как создать временную метку для уникального ID упаковки?
Фрагмент кода: как создать временную метку для уникального ID упаковки?
Использование временных меток — это обходной путь, если вы не можете использовать постоянные серийные поля. Следующее выражение создаёт 12-значную буквенно-цифровую временную метку для уникального ID упаковки (увеличивается с каждым заданием печати).
CStr(Chr(65 + Year(Now()) % 26)) + CStr(Chr(65 + CLng(Format(Now(), "MM")) - 1)) + CStr(Chr(47 + CLng (IIF (Day(Now()) >10, 7, 0)) + Day(Now()))) + CStr(Chr(65 + Hour(Now()))) + Format(Now(), "mmss") + Format(PrintedItems, "0000")
- Преобразует год, месяц, час в A-Z для экономии места.
- Преобразует день в A-Z, 0..7
- Включает текущую копию этикетки как 4-значный счётчик
Поместите это выражение в вычисляемое поле, например clPackageID (тип данных Text). Если вы используете индивидуальные копии этикеток, рассчитывайте его для каждой Record Copy.
8-значная версия
С 8 знаками можно убрать год и секунды и ограничить серийную часть 3 знаками.
CStr(Chr(65 + CLng(Format(Now(), "MM")) - 1)) + CStr(Chr(47 + CLng (IIF (Day(Now()) >10, 7, 0)) + Day(Now()))) + CStr(Chr(65 + Hour(Now()))) + Format(Now(), "mm") + Format(PrintedItems, "000")
Этот авто-ID упаковки состоит из 5-значной временной метки (месяц/день/час/минута), за которой следует 3-значный порядковый номер. Это означает, что количество единиц/паллет в одном задании ограничено 999, а минимальный интервал между заданиями печати должен составлять 1 минуту. ID упаковки может повторяться каждый год.