Для форматирования параметров, которые содержат многострочный текст, используется тег extvar
. Данный тег позволяет разделять длинные строки по словам или символам до заданной ширины, использовать специальные переменные для организации счетчиков, которые будут вставлены в форматированный вывод. Не допускает вложенных тегов.
Атрибуты тега extvar
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
name | строковый | Наименование параметра | ||
width | целочисленный | Максимальная длина подстроки в символах | ||
split | строковый |
| Способ разбиения на подстроки:
| |
delimiter | строковый | Строка-разделитель текста на подстроки | В тексте для клиента используется "##" | |
quoted | строковый |
| Добавление двойных кавычек до и после текста | |
format | строковый | Правило форматирования выходных данных | Используются правила форматирования макросов | |
startx | целочисленный | Начальное значение атрибута posX | ||
starty | целочисленный | Начальное значение атрибута posY | ||
incx | целочисленный | Величина инкрементального изменения атрибута posX | ||
incy | целочисленный | Величина инкрементального изменения атрибута posY |
В строке форматирования используется специальный объект token
, который содержит три атрибута:
data
– (строковый) выделенная из текста подстрока;posX
– (целочисленный) атрибут, который соответствует выделенной подстроке;posY
– (целочисленный) атрибут, который соответствует выделенной подстроке.
В строке форматирования могут использоваться несколько объектов token
. Каждая выделенная и отформатированная подстрока завершается символом перевода строки. Как правило, атрибуты posX
и posY
используются для задания смещения строк при генерации данных для печати на принтере этикеток.
<select query="select rtext from document where documentid = $document.id$"> <extvar name="rtext" width="36" split="byword" format="%(token.posX[02d]),%(token.data[s])" delimiter="##" startx="1" incx="1" /> </select>