Для форматирования параметров, которые содержат многострочный текст, используется тег 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>