Примеры написания формул
Данные примеры помогут Вам оформить шаблоны этикеток в графическом редакторе SimplePacking, который является частью комплекса.
Вес порции
Для всех весовых товаров необходимо указывать вес продукции на этикетке.
Сделать это можно с помощью следующей формулы:
‘Масса Брутто ‘+ WEIGHT() + ‘ кг’
Оставляйте пробелы в конце заголовка и перед кг для удобного чтения.
или
‘Масса Брутто ‘+ FORMAT(WEIGHT(), ‘N2′) + ‘ кг’
В последнем примере N2 — число разрядов после запятой.
N0 — 0
N1 — 0,0
N2 — 0,00
N3 — 0,000
Весовой EAN-13
В случае когда необходимо закодировать в EAN-13 вес товара/продукции — структура штрих кода меняется:
- вместо кода страны указывается 21
- вместо кода производителя указывается код товара (5 символов)
- вместо кода товара указывается вес (5 символов).
Сформировать весовой EAN-13 можно следующим образом:
В базе данных в таблице «Номенклатура» мы создаем текстовое поле с названием «КодТовара». Важно, чтобы содержимое поля имело строго 5 символов, обозначающих код товара.
В дизайнере этикеток помещаем штрих код EAN-13.
’21’ + FIELD(‘КодТовара»,’НОМЕНКЛАТУРА’) + FORMAT(WEIGHT()*1000,’00000′)
’21’ — есть префикс весового EAN-13
FIELD(‘КодТовара’,’НОМЕНКЛАТУРА’) — указывает «взять значение поля КодТовара из таблицы НОМЕНКЛАТУРА, для текущей маркируемой позиции»
FORMAT(WEIGHT()*1000, ‘00000’) — первый параметр функции FORMAT — WEIGHT()*1000 — указывает «взять вес с весов и умножить его на 1000». Тут поправка: мы предполагаем, что вес, который приходит от весов в кг. Если же мы переключим на весах единицу с кг на г, то умножать на 1000 не нужно второй параметр функции FORMAT указывает в каком виде представить данные из первого формата. Строка ‘00000’ означает буквально следующее: взять исходное значение и дополнить его нулями до длины в 5 символов.
13-й контрольный символ принтер добавит самостоятельно.
Вес Нетто на этикетке для порции и ящика
‘Масса Нетто ‘+ FORMAT(WEIGHT()-FIELD(‘Weight’,’ТАРА’), ‘N2′) + ‘ кг’
N2 — число разрядов после запятой, т.е. будет 0,00.
Если вес порции на весах 1кг, а вес пакета(тары) 20г
На этикетке получится:
Масса Нетто 0,98 кг
В формуле счетчика поставьте: WEIGHT()-FIELD(‘Weight’,’ТАРА’)
‘Вес нетто ящика ‘+ FORMAT(COUNTER(‘Box’,’КоробкаНетто’), ‘N2’) + ‘ кг’
Дата изготовления и срок годности
Дата и время могут быть получены из принтера. В принтере за правильность отвечает модуль RTC (Real Time Clock).
Дата отображается с помощью функции NOW().
NOW()
Можно отформатировать дату/время.
FORMAT(NOW(),’dd.MM.yyyy’)
И добавить текст «Дата изготовления»
‘Дата изготовления: ‘+FORMAT(NOW(),’dd.MM.yyyy’)
Иногда требуется скорректировать дату. В этом случае поможет следующая формула:
FORMAT(ADDDAY(NOW(),1),’dd.MM.yyyy‘)
FORMAT(ADDDAY(NOW(),-1),’dd.MM.yyyy’)
Для установки срока годности товара можно применить следующий метод. В базе данных «Номенклатура» создаем числовое поле с названием «СрокХранения» (ОБЯЗАТЕЛЬНО без пробела!) и для каждой товарной позиции указываем необходимые значения в сутках. Дата рассчитанная по этой формуле будет больше на заданное количество дней. Для каждой позиции свое.
‘Годен до: ‘ + FORMAT(ADDDAY(NOW(), FIELD(‘СрокХранения’,’НОМЕНКЛАТУРА’)),’dd.MM.yyyy’)
По аналогии можно изменять часы ADDHOURS(), месяцы ADDMONTH() или годы ADDYEAR().
Процент глазури
Для решения задачи нам понадобится одно числовое поле в базе данных в таблице номенклатура.
Назовем его «ПроцентГлазури», в качестве значения мы будет указывать необходимый процент, 5, 10, 12, вообщем от 1 до 100.
В случае, если мы вычитаем процент глазури из веса продукции/товара, то наша формула будет выглядеть так:
WEIGHT() — (WEIGHT()*(FIELD(‘ПроцентГлазури’,’НОМЕНКЛАТУРА’)/100))
По формуле у нас получается буквально следующее — взять вес с весов и вычислить его процент, затем вычесть полученное значение из веса. Ничего сложного!
Пример:
вес на весах 1,768 кг, процент глазури — 5%
согласно формуле: 1,768 — (1,768*(5/100)) = 1,768 — (1,768*0,05) = 1,768 — 0,088 = 1,680 кг
Контроль сроков годности по штрих-кодам в ФТС «Пятерочка»
Согласно требованиям, предъявляемым ФТС «Пятерочка» к производителям, последние должны печатать на своих товарах дополнительный штрих-код, который содержит информацию о дате окончания срока годности товара.
Рады сообщить Вам, что, начиная с версии 0.7.0 программы «SimplePacking» управляющей интеллектуальным комплексом маркировки «Весы — Принтер» доступно использование данного дополнительного штрих – кода EAN13+5.
Для того чтобы использовать данный штрих-код в своих проектах, Вам необходимо разместить на этикетке основной штрих-код товара (EAN 13), а затем разместить дополнительный (EAN 5).
Далее необходимо сформировать формулу для дополнительного штрих-кода. Дополнительный штрих-код представляет собой комбинацию 5 цифр:
- первые три цифры обозначаю порядковый номер дня истечения срока годности товара в году;
- две последние цифры обозначаю год истечения срока хранения по товару.
Например, товар произведен и упаковывается 24.04.2017, а его срок хранения составляет 60 суток, тогда в штрих-код пойдет: 17417 (174 = 24.04.2017 + 60 дней).
Для облегчения вычисления номера дня истечения срока годности по товару в году мы добавили в редактор формул новую формулу: «DAYOFYEAR», которая принимает на вход дату, а на выходе получаем порядковый номер дня в году.
Например, для получения номера текущего дня в году: DAYOFYEAR(NOW()).
FORMAT(DAYOFYEAR(ADDDAY(NOW(),FIELD(‘СрокХранения’,’НОМЕНКЛАТУРА’))),’000′)+
FORMAT(ADDDAY(NOW(),FIELD(‘СрокХранения’,’НОМЕНКЛАТУРА’)),’yy’)
Тут мы берем текущую дату (NOW()) и прибавляем к ней значения срока хранения товара заданного в таблице «Номенклатура» (ADDDAY(NOW(),FIELD(‘СрокХранения’,’НОМЕНКЛАТУРА’))), все это передаем в функцию «DAYODYEAR» и получим порядковый номер дня в году. Затем пропускаем через функцию «FORMAT» для получения валидного строкового значения и прибавляем к результату строку с двумя последними цифрами года полученными через FORMAT(ADDDAY(NOW(),FIELD(‘СрокХранения’,’НОМЕНКЛАТУРА’)),’yy’).