Skip to main content

Всё о переменных шаблона печати СМАРТ Л2

История обновлений документа:

  • 06.08.24: добавлены все основные параметры

  • 14.11.24: добавлены aggregation_capacity, code_128, custom_attribute

  • 23.05.25:

1) Общая структура файла

В папке /template-vars рядом с smartl2.jar файл example.vars представляет собой JSON следующего формата:

{
    "label": {
		"height": "320",
		"width": "640"
	},
	"variables": {
		"название_переменной_1": {
			"type": "тип_переменной"
		},
		"название_переменной_2": {
			"type": "тип_переменной"
		},
		"название_переменной_3": {
			"type": "date",
			"format": "dd/MM"
		},
		"название_переменной_4": {
			"type": "text",
			"value": "годен до: "
		},
		"название_переменной_5": {
			"type": "тип_переменной",
			"regex": ".*/(\\d{6})"
		}
		...
	}
}

Где название_переменной_Х соответствует названию переменной в шаблоне принтера с названием example. Например, var1-1, var100, 6501310, <BATCH_SERIAL_NUMBER>.

Можно сохранить несколько шаблонов с разными названиями (example.vars, default.vars, dm1.vars). Нужный шаблон указывается в редакторе продукта в СМАРТ Л3 в поле шаблон для печати.

image.png

2) Поддерживаемые переменные шаблона

Следующая таблица описывает все допустимые значения параметра type, а также доступные им значения параметра format

type Описание format
DATAMATRIX_GS GS1 DataMatrix

Опционально

Длина кода, до которой нужно обрезать его с конца

 

Пример: "format":"5"

"12345678" -> "12345"


DATAMATRIX_NON_GS

НЕ-GS1 DataMatrix

Без FNC1 и GS

Например, сигареты

Опционально

Длина кода, до которой нужно обрезать его с конца


SGTIN_SERIAL_21 Серийный номер SGTIN, AI 21

Длина серийного номера в коде этой товарной группы

 

Пример: "format":"6" для молока или "13" для БАДов


SGTIN_SERIAL_NON_GS Серийный номер SGTIN, без AI -
SGTIN_91 ID криптохвоста SGTIN, AI 91 -
SGTIN_92 Криптохвост SGTIN, AI 92 -
SGTIN_93 Криптохвост SGTIN, AI 93 -
BATCH_NAME Название партии -
SERIES_NAME

Название серии

-
DATE_PRODUCTION Дата производства

Формат даты, где


y – цифра года
M – цифра месяца
d – цифра дня

h – цифра часа

m – цифра минут

 

Примеры: 
"dd.MM.yyyy"
"dd-MM-yy"
"dd/MM"

"hh:mm dd/MM/yy"


DATE_EXPIRE Дата истечения срока годности
DATE_CURRENT Текущая дата
DATE_AGGREGATION Дата агрегации
TEXT Пользовательский текст -
PRODUCT_NAME Название продукции -
GTIN GTIN продукции

Длина GTIN, до которой нужно обрезать его с начала

 

Пример: "format":"13"

 "00812345678918" -> "0812345678918"


GTIN_NON_CHECK_DIGIT GTIN продукции без контрольной цифры (последняя цифра в GTIN)

Длина GTIN, до которой нужно обрезать его с начала

 

Пример: "format":"12"

 "0081234567891" -> "081234567891"


CODE_128 Линейный код GS1-128

Опционально

Длина кода, до которой нужно обрезать его с конца


CODE_128_BMP Линейный код GS1-128, конвертируемый в .bmp изображение -
CUSTOM_ATTRIBUTE Специфичный параметр продукта -

CUSTOM_ATTRIBUTE_TEXT_TO_BMP

Специфичный параметр продукта, конвертируемый в .bmp изображение -
MRP МРЦ продукции для табачных ТГ -
WEIGHT Вес / объём продукции -
ACTUAL_WEIGHT Общий вес всех продуктов в агрегате -
AGGREGATION_CAPACITY Ёмкость групповой упаковки конкретного уровня

"1" для групповой упаковки

"2" для транспортной

"3" для паллетной и выше 


ACTUAL_CAPACITY Реальное количество вложений в текущем агрегате

Опционально

"1" для групповой упаковки

"2" для транспортной

"3" для паллетной и выше 


TOTAL_CAPACITY

Общее количество вложений самого нижнего уровня в агрегате

Например: 50, если в одной транспортной упаковке 10 групповых, в которых по 5 индивидуальных

-
NEXT_LEVEL_COUNTER

Количество кодов в упаковке следующего уровня

Например: 3 короб из 50 (AGGREGATION_CAPACITY = 50) 

ID группы устройств

 

Пример: "format":"1"


IMAGE Изображение формата .bmp, расположенное в папке /img рядом с исполняемым .jar  -
VARIABLE_TO_TEXT Конвертируемое в текст значение переменной -
VARIABLE_TO_BMP Конвертируемое в .bmp картинку текстовое значение переменной -
LINE Номер линии -
BOX_NUMBER Номер короба -
EAN EAN продукции -
SKU

SKU продукции

(артикул / ID в товароучётной системе)

-

Далее описаны параметры и их значения, применимые для отдельных типов переменных

type Параметр Значение

 

 

 

 

[ все ]

xDots

yDots

 

(тип данных int)

Координаты X и Y объекта в пикселях (точках)

Для корректной замены все названия переменных должны быть обрамлены символами < и >

 

Пример

"<VAR_1>":{

    "type":"DATAMATRIX_GS",

    "xDots": 20,

    "yDots": 100

}

[ все ]

regex

 

(тип данных string)


[ все ]

prefix

suffix

 

(тип данных string)


GTIN

value

 

(тип данных string)

GTIN конкретного уровня упаковки 

 

"SGTIN" - GTIN товара

"GROUP" - GTIN групповой упаковки

"TRANSPORT" - GTIN транспортной упаковки

"PALLET" - GTIN паллетной упаковки

 

Пример: "value":"SGTIN"

TEXT value

Текст, который будет отправлен на печать


Пример: "value":"Колбаса"

CUSTOM_ATTRIBUTE

CUSTOM_ATTRIBUTE_TEXT_TO_BMP

 

value

Название атрибута продукта, из которого будет взято значение для печати

 

Пример: "value":"attr_1" 

IMAGE value

Название .bmp файла для вставки как изображения. Файл должен лежать в папке /img

 

Пример: "value":"logo.bmp"

DATAMATRIX_GS

DATAMATRIX_NON_GS

SGTIN_SERIAL_21

SGTIN_SERIAL_NON_GS

SGTIN_91

SGTIN_92
SGTIN_93

index

 

(тип данных int)

Индекс кода для возможности печати более одного кода в одном шаблоне

 

Пример: "index": 1

CUSTOM_ATTRIBUTE_TEXT_TO_BMP

VARIABLE_TO_BMP

CODE_128_BMP

widthPercent

heightPercent

 

(тип данных int)

Ширина и высота поля в процентах от величины, указанной в "width" параметра "label" файла .vars

 

heightPercent на данный момент нигде не используется

 

Пример: "widthPercent": 80

CODE_128_BMP

widthScale

 

(тип данных int)

Целочисленный множитель для минимально генерируемой ширины штрих-кода.

Результирующая ширина изображения = минимальная ширина для генерации штрих-кода * widthScale

 

Приоритет ниже widthPercent (будет использоваться только в случае, если widthPercent == null)

 

Пример: "widthScale": 2