Document
Document - класс служит для генерации экземпляра документа, либо работы с уже существующим. Создается на основе шаблона, который отдает файл + настройки полей + тип основного провайдера. Далее перед генерацией документу необходимо передать значения полей / плейсхолдеров. После этого документ можно сгенерировать. После генерации он будет автоматически сохранен в таблице документов.
Методы класса
Метод | Описание |
---|---|
createByTemplate(\Bitrix\DocumentGenerator\Template $template, $value) | Метод новый экземпляр на основе шаблона. Здесь $value - это значение основного провайдера. |
loadById($documentId) | Метод загружает экземпляр документа из базы данных по его ид $documentId . |
setValues(array $values) | Метод задает значения полей. В массиве $values ключ - это имя поля, а значение - его значение. Метод не обнуляет уже установленные значения, но перезапишет старые. |
setFields(array $fields) | Метод задает описания полей. В массиве $fields ключ - это имя поля, а значение - его описание в виде массива. Метод не обнуляет уже установленные описания, но перезапишет старые. |
checkFields($requiredOnly = true) | Метод возвращает массив описаний незаполненных полей. Если $requiredOnly = true , то проверяются только обязательные поля. Иначе вернет описания всех полей, для которых не были найдены значения. |
getTemplate() | Метод вернет шаблон документа, если он есть. |
getFile($sendToTransformation = true, $skipTransformationError = false) | Метод генерирует новый документ, если его ещё нет. Возвращает информацию объект \Bitrix\Main\Result , где в случае успеха будет следующий массив данных:
[ 'downloadUrl' => '', // ссылка на скачивание 'publicUrl' => '', // публичная ссылка, если есть 'title' => '', // заголовок 'number' => '', //номер 'id' => '', //ID 'createTime' => '', //время генерации 'updateTime' => '', //время обновления 'stampsEnabled' => '', //true если с печатями и подписями, иначе false 'isTransformationError' => '', //true если была ошибка конвертации, иначе false 'value' => '', //значение, с которым был создан основной провайдер 'values' => [], // массив дополнительных значений 'publicUrlView' => [ // с версии documentgenerator 20.100.0, информация о просмотре публичной ссылки, если публичная ссылка есть 'time' => ' ', // время первого просмотра публичной ссылки 'ip' => ' ', // ip-адрес первого просмотра публичной ссылки ], ]; Если $sendToTransformation = false - файл не будет послан на конвертацию автоматически.
Если $skipTransformationError = true , то в результат не будут добавляться ошибки конвертации (используется для подавления этой ошибки в рест-методах).
|
getProvider() | Метод вернет экземпляр \Bitrix\DocumentGenerator\DataProvider , который использовался для генерации документа. Этот метод может вернуть false , если экземпляр не удалось создать.
|
update(array $values) | Метод обновляет существующий документ с новым набором значений. Массив $values аналогичен параметру в методе setValues() . |
getFields(array $fieldNames = [], $isConvertValuesToString = false, $groupsAsArrays = false) | Метод возвращает список сгруппированных полей с конечными значениями $fields - массив имён полей для вывода описания
$isConvertValuesToString - если true - объекты будут преобразованы в строки (как правило, для json) |
© «Битрикс», 2001-2024, «1С-Битрикс», 2024