Для создания шаблонов документов необходимо было создать подстановки, которые можно использовать внутри шаблона. Для шаблонного языка был выбран язык Liquid, документация по синтаксису доступна по адресу http://wiki.github.com/tobi/liquid/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
Подстановки
Если в описании подстановки упоминается слово "список", то под ним понимается строка, состоящая из элементов, разделённых запятой (,).
Плюсом помечены подстановки, реализованные в текущей версии.
Выделением помечены подстановки возвращающие массив объектов, свойства которых описаны в таблице
Подстановки для документов
Объект в шаблоне: 'doc'
Номер документа: {{doc.vc_doc_no}}
VC_DOC_NO |
Номер документа |
|
VC_DOC_CODE |
Код документа |
|
D_DOC_FULL_MONTH |
Дата создания, полный месяц |
|
D_DOC_YEAR |
Дата создания, год |
|
D_DOC_MONTH |
Дата создания, месяц |
|
D_DOC_DAY |
Дата создания, день |
|
CLIENT_TARIFFS |
Список тарифов, на которые подписан абонент |
|
CLIENT_DOC_NO |
Номер документа |
|
CLIENT_DOC_SERIAL |
Серия документа |
|
CLIENT_DOCUMENT |
Кем выдан документ |
|
CLIENT_ADDRESS |
Адрес получателя |
|
CLIENT_PHONE |
Контактный телефон абонента |
|
CLIENT_BIRTH_PLACE |
Место рождения |
|
CLIENT_BIRTHDAY |
Дата рождения |
|
CLIENT_DOC_DATE |
Дата получения документа |
|
CLIENT_CODE |
Код получателя |
|
CLIENT_NAME |
Имя получателя |
|
BILL_CONTENT |
Состав счёта
|
|
BILL_TOTALS |
Итого счета
|
Подстановки для абонентов
Объект в шаблоне: 'user'
Имя пользователя: {{user.full_name}}
ADDRESS |
Адрес |
|
ACCOUNTS_LIST |
Список счетов |
|
FULL_NAME |
Полное имя |
|
DOCUMENTS_LIST |
Список документов |
|
PARENT_TYPE_ID |
Тип родителя |
|
SERVICES |
Службы и сервисы
|
|
DEVICES |
Оборудование
|
Подстановки для Объектов
Подстановки для Констант
Для использования констант есть специальный объект CONST:
{% if service.n_service_id == CONST.NETSERV_ARM_Private_Office %} Личный кабинет находится по адресу <a href="https://my.domen.ru/">https://my.domen.ru</a>. {% endif %}
Дополнительные функции
Числовые
Применимы ко всем числам, и числовым подстановкам
- number_in_words
Выведет: сто двадцать три{{123 | number_in_words }}
- number_in_words_rubles
Выведет текущую сумму: Одна тысяча шестьсот девяносто четыре рубля 92 копейки{{doc.bill_totals.n_sum_wo_tax_sum | number_in_words_rubles }}