Для шаблонного языка выбран Liquid, документация по синтаксису доступна по адресу https://github.com/Shopify/liquid/wiki/Liquid-for-Designers/.
Hello {{name}} |
{% for item in array %} {{ item }} {% endfor %} |
{% if user.age > 18 %} Login here {% else %} Sorry, you are too young {% endif %} |
Пример преобразования к верхнему регистру
Hello {{ 'tobi' | upcase }} => Hello TOBI |
Пример взятия первых нескольких символов строки (первый параметром передаётся количество символов, вторым — подстрока, обозначающая факт обрезания входной строки):
{%assign vc_code = 'АБ-27'%} {{vc_code|truncate:2,''}} => АБ {{vc_code|truncate:4,'...'}} => А... |
Для использования констант есть специальный объект CONST
{% if service.n_service_id == CONST.NETSERV_ARM_Private_Office %} Личный кабинет находится по адресу <a href="https://my.domen.ru/">https://my.domen.ru</a>. {% endif %} |
additional_param или ap, в качестве входного параметра можно указывать код или наименование дополнительного параметра
{{doc.recipient | additional_param:'Дополнительный параметр'}} |
БИК банка, в котором находится расчетный счет получателя {{ doc.recipient.parent.account_settlement.bank | additional_param:'SUBJ_VAL_BIK' }} |
Значения подстановок для доп. параметров не выводятся в предварительном просмотре.
Для множественных доп. параметров подстановка возвращает массив значений.
Применимы ко всем числам и числовым подстановкам
number_in_words
{{123 | number_in_words }} |
Выведет: сто двадцать три
number_in_words_rubles
{{doc.total.n_sum_wo_tax_sum | number_in_words_rubles }} |
Выведет текущую сумму: Одна тысяча шестьсот девяносто четыре рубля 92 копейки
l:'f_solid' — выводит число двумя знаками после запятой
{{123 | l:'f_solid' }} |
Выведет: 123,00
Примечание: начиная с версии ООС 3.3 в дополнении к f_solid можно использовать более читаемое название формата fin_solid.
l:'f_simple' — выводит число, группы цифр разделяются пробелом
{{1234 | l:'f_simple' }} |
Выведет: 1 234,00
Примечание: начиная с версии ООС 3.3 в дополнении к f_simple можно использовать более читаемое название формата fin_simple.
now — подстановка, вовращающая текущую дату и время
Применимы ко всем датам
strftime - первым параметорм передается формат, вторым локаль. Например:
{{now | strftime : '%B', 'ru'}} |
plus - к объекту даты добавляет указанное количество в днях, для объекта даты с временем - в секундах. Например:
{{doc.d_doc | plus : 10}} |
Пример:
{{ doc.d_time | simple_date }} {{ doc.d_doc | full_date }} |
Пример:
Счета поставщика через запятую {{ doc.provider.accounts_personal | join_by_comma:'vc_code' }} |
Из любой подстановки можно сделать штрихкод. Для этого после подстановки нужно добавить фильтр с параметрами:
1. Тип штирхкода. Поддерживаются:
2. Ширина, см (px)
3. Высота, см (px)
Для конкатенации подстановок или строк можно использовать фильтр append.
Пример:
{{doc.n_doc_id | append: doc.n_doc_type_id | barcode: 'BARCODE_PLS', 8, 3}} |
Для создания шаблона, предназначенного для массовой генерации печатных форм необходимо в шаблон добавить специальные параметризуемые элементы:
... ##-- begin document item (group by N, per page M) --## ... ##-- end document item --## ... |
Текст в начале документа, выводится только 1 раз. ##-- begin document item (group by 5, per page 2) --## Код абонента {{user.vc_code}} (выводится для всех сущностей, по которым выполняется массовая печать) ##-- end document item --## Текст в конце документа, выводится только 1 раз. |
Параметры group by и per page можно не указывать. В этом случае будут использоваться настройки из файла конфигурации приложения «Офис оператора связи»: print.items_in_file и print.items_per_page.
Текст в начале документа, выводится только 1 раз. ##-- begin document item --## Код абонента {{user.vc_code}} (выводится для всех сущностей, по которым выполняется массовая печать) ##-- end document item --## Текст в конце документа, выводится только 1 раз. |