Ввода даты непосредственно на маркировочном посту

Ввод даты оператором маркировочного комплекса непосредственно на принтере

Часто возникает необходимость ввода даты непосредственно на маркировочном посту, например, необходимо ввести дату производства продукции при переупаковке, а дату упаковки и дату истечения срока хранения принтер проставит и просчитает сам.

В версии 1.0.5 программы «SimplePacking», управляющей нашим интеллектуальным маркировочным комплексом «Весы-Принтер» мы сделали эту возможность.

Сейчас по шагам мы опишем, как это сделать.

Для ввода даты будем использовать уже знакомые нам переменные. Перейдем во вкладку «Переменные и счетчики» программы «SimplePacking», предварительно создав новый или открыв уже имеющийся у Вас проект. И создадим там 3 переменных:

Имя переменной ВведитеДень
Минимальное значение 1
Максимальное значение 31
Число знаков 0
Имя переменной ВведитеМесяц
Минимальное значение 1
Максимальное значение 12
Число знаков 0
Имя переменной ВведитеГод
Минимальное значение 2018
Максимальное значение 2020
Число знаков 0

Мы разбили дату на 3-и составляющие, так как ввести по-отдельности день, месяц и год легче и быстрее, чем вводить всю дату целиком при помощи экранной клавиатуры принтерной части программы «SimplePacking».

Да, начиная с версии 1.0.0, Вы можете подключать USB-клавиатуру к принтеру и осуществлять ввод цифровой информации с ее помощью.

Переменные я создал в «По запросу», Вы можете создать их там, где Вам это необходимо.

На этикетку кидаем текстовое поле и в его свойстве «Формула» вводим следующее:

‘Дата производтсва: ‘ + FORMAT(STRTODATETIME(FORMAT(VARIABLE(‘UserRequest’,’ВведитеДень’), ’00’) + ‘.’ + FORMAT(VARIABLE(‘UserRequest’,’ВведитеМесяц’), ’00’) + ‘.’ + FORMAT(VARIABLE(‘UserRequest’,’ВведитеГод’), ’00’)),’dd.MM.yyyy’)

Формируем строку путем конкатенации наших переменных, «пропущенных» через хорошо знакомую нам команду «FORMAT» и символов «.».

Далее мы используем новую функцию (версия программы 1.0.5 и выше) «STRTODATETIME». Она принимает 1-ый параметр – строковое представление даты, и возвращает дату.

Ну а дальше, мы все знаем и умеем.

Сделаем поле «Годен до», в котором мы к нашей введённой на принтере дате прибавим срок хранения, например, указанный у нас в справочнике «Номенклатура».

‘Годен до: ‘ + FORMAT(ADDDAY(STRTODATETIME(FORMAT(VARIABLE(‘UserRequest’,’ВведитеДень’), ’00’) + ‘.’ + FORMAT(VARIABLE(‘UserRequest’,’ВведитеМесяц’), ’00’) + ‘.’ + FORMAT(VARIABLE(‘UserRequest’,’ВведитеГод’), ’00’)),FIELD(‘СрокХраненияДней’,’НОМЕНКЛАТУРА’)),’dd.MM.yyyy’)

Тут мы использовали функцию «ADDDAY», передав в нее первым параметром выход функции «STRTODATETIME».