Ввод даты оператором маркировочного комплекса непосредственно на принтере
Часто возникает необходимость ввода даты непосредственно на маркировочном посту, например, необходимо ввести дату производства продукции при переупаковке, а дату упаковки и дату истечения срока хранения принтер проставит и просчитает сам.
В версии 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».