03-12-2018 23:59

Создание нового документа из шаблона печатной формы

POST   {PF}/files/{customerKey}/add

Каждый шаблон печатных форм - это файл формата *.docx, внутрь которого включено некоторе количество меток вида "{имя_переменной}" (без кавычек.

То есть если в POST метод передается переменная вида "var_name", то для того, чтобы ее значение было заменено, в шаблоне необходимо наличие метки "{var_name}". 

Также, возможно добавлять в шаблон табличные данные. Например - можно вставлять график платежей. Можно вставлять только плоские таблицы без объединения столбцов по вертикали или горизонтали. Сервер печатных форм при формировании формы размножит базовую строку и заполнит ее данными.

 

Пример 

Нам нужно встаить в таблицу график платежей по договору. В таблице будет 3 столбца: Дата платежа, Платеж, Остаток 

Предположим, у нас будет 3 платежа по договору. 01.01.2017, 01.02.2017 и 01.03.2017. 

Тогда набор переменных (и их значений) может выглядеть вот так: 

schedule.0.date=01.01.2017
schedule.0.pay=100
schedule.0.rest=200
schedule.1.date=01.02.2017
schedule.1.pay=100
schedule.1.rest=100
schedule.2.date=01.03.2017
schedule.2.pay=100
schedule.2.rest=0

В этом примере - мы передаем массив, состоящий из 3 элементов, каждый из которых содержит по 3 вложенных элемента. Включи вложенных массивов соединяются при помощи символа точка "."

 

В файле шаблона таблица должна будет выглядеть вот так: 

Дата платежа Сумма платежа Сумма остатка
{schedule._.date} {schedule._.pay} {schedule._.rest}

Сервер печатных форм обнаружит переменную с включенной комбинацией символов ._. и определит количество строк в таблице исходя из количества записей в переданном массиве. 

Запрос

http://pdf.brainysoft.ru/files/fastmoney/add?secret=secret
templateId=123
data={"id": 11, "title": "russforttest",
            "scope_lead": 1,"scope_client": 1,"scope_contract": 0, "scope_loanapp": 0, "scope_signatures": 0,"scope_depositContract": 0, "scope_shareContract": 0}
Описание параметров
Параметр Обязателен Тип данных Описание
customer_key R [string][150] Код клиента в системе BrainySoft
secret R [string][40]

sha1 хеш от конкатинации следующих переменных:

  1. Кода клиента в системе BrainySoft (customer_key)
  2. Даты в формате Y-m-d (например 2017-06-17)
  3. Секретной строки, которая задается в настройках сервере печатных форм (.env, имя переменной: PDF_SECRET)
templateId R [int] ID шаблона печатных форм
data R [string][16500000+] Одномерный массив переменных key=value в формате JSON. При необходимости передавать вложенные массивы необходимо сделать многоуровневый массив плоским, объединяя вложенные массивы с помощью точки в именах.

Ответ


                        {
    "status": "ok",
    "timestamp": 1506933642000,
    "data": "http://pf.dev/file/56b7e86230ee03124665c71a6d97e5e077"
}
                    
У данной функции отсутствует описание параметров ответа