Справочник номенклатуры Mobile SMARTS двухуровневый, состоит из строк номенклатуры и подчиненных им строк индивидуальных упаковок номенклатуры. Упаковки номенклатуры могут иметь свои поля и свои собственные штрихкоды, в том числе заданные шаблоном.
Штрихкод конкретной номенклатуры не может быть задан шаблоном, для конкретного товара может быть задан только конкретный штрихкод (т.е. Product.Barcode не может содержать шаблон). Если вы хотите задать какой-то один шаблон для всех весовых товаров или для определенных вариантов штрихкода от поставщика, то обратитесь к следующей статье.
А вот упаковка номенклатуры может иметь свой собственный штрихкод, который может не только отличаться от штрихкода самого товара, но и может быть задан шаблоном (т.е. Product.BasePacking.Barcode может содержать шаблон).
Такой шаблон конкретной упаковки номенклатуры описывается в виде:
[###]{шаблон}[#]{шаблон}[###]....
где [###] - некоторое количество фиксированных символов,а {шаблон} — специальные выражения вида {имя:формат}, где имя задает имя параметра, а шаблон зависит от типа параметра. Если параметр – это строка или число, то в качестве шаблона можно указать количество символов штрихкода, отводимое под параметр.
Примеры:
- 123EE45{SKU:7}{check}
- {SSCC:18}
- 01{Date:DDMMYY}01
см. другие примеры.
В качестве имени (SKU, SSCC, Date) можно использовать как специальные значения, так и что угодно, в том числе и русские названия с пробелами. Все извлеченные из штрихкода значения попадут в обработку, которая попытается найти номенклатуру и затем перенести данные из шаблона в основные или дополнительные переменной SelectedProduct (т.е., например, SelectedProduct.SSCC).
При занесении новой строки в документ те переменные, имена которых совпадают с именами колонок в документе, попадут в поля этой новой строки. Т.е. если мы хотим сохранить в документе часть штрихкода, нужно:
-
добавить в типе документа дополнительное поле строки;
-
создать шаблон штрихкода, в котором упоминалось бы наименование этого поля.
Допустимые к использованию шаблоны:
Шаблон |
Описание |
---|---|
{Quantity:формат}, формат – число, задающее количество символов в штрихкоде или два числа, разделенных точкой (целая и дробная части) |
Извлеченное значение заносится в {SelectedProduct.Quantity} Позволяет извлечь количество сканируемого товара, прямо из штрихкода, избегая его ввода вручную. |
{SSCC:число} {SKU:число}, число – количество символов в штрихкоде. |
Извлеченное значение заносится в {SelectedProduct.SSCC} Позволяет извлекать из штрихкода уникальный номер текущей позиции товара, номер партии и т.п. |
{Date:формат}, где формат – строковой формат даты |
Извлеченное значение заносится в {SelectedProduct. RegistrationDate} Позволяет извлекать из штрихкода упаковки дату ее регистрации (например, дату приемки или дату производства). |
{ExpDate:формат} {ExpiredDate:формат}, где формат – строковой формат даты |
Извлеченное значение заносится в {SelectedProduct. ExpiredDate} Позволяет извлекать из штрихкода упаковки дату окончания срока годности товара. |
{ПроизвольноеИмя:формат} |
Извлеченное значение заносится в {SelectedProduct. ПроизвольноеИмя} Позволяет извлекать произвольные данные из штрихкода. Если было заведено дополнительное поле строки с таким именем, то оно определяет тип извлекаемых данных. Если поле не заведено – то извлекается строка. |
Для одной упаковки можно задавать сразу несколько шаблонов. Шаблоны записывают через вертикальную черту «|» без пробелов.
[Файл:image1.png]