[URL=https://helpdesk.bitrix24.ru/open/6427471/]https://helpdesk.bitrix24.ru/open/6427471/[/URL]
18.07.2019 11:28:28
|
|||
|
18.07.2019 10:26:59
Олег Брага, не надо ничего проверять. setValues() только добавляет данные во внутреннее хранилище переопределенных значений, внутри там нет никаких вычислений и можете дергать метод сколько хотите (он не перезаписывает, а всегда дополняет данные).
Не забудьте написать, получилось или нет. |
|
|
18.07.2019 10:01:53
Олег Брага, должно работать.
Уберите вызов \Bitrix\DocumentGenerator\Document::getFields() до того, как вы вызываете setValues() Важно, чтобы ид моей компании был указан до того, как документ произведет инициализацию цепочки провайдеров и вычислит значения их полей. А в getFields() как раз идёт вычисление значений. После этого менять значение провайдера бесполезно, там будет работать только смена конечных значений. |
|
|
17.07.2019 19:00:18
Олег Брага, проверил у себя. Работает.
Как я проверяю. 1. В init.php сделал обработчик.
2. Вывел доступные значения для поля "MY_COMPANY"
3. Ставим в обработчике значение поля
4. В документ вставилось название компании из реквизитов компании с ид 15 Пишите в таком же формате ваши действия, посмотрим, что не так. |
|||||||||
|
17.07.2019 18:27:04
Evgeniy, можете пояснить, о чем речь?
Выше вы обсуждали работу с бизнес-процессами. Бизнес-процесс - это абстрактный процесс, который может быть запущен над конкретной существующей сущностью определенного типа (например, элемент универсального списка, лид). Для запуска бизнес-процессов есть рест-апи Этот метод запустит бизнес-процесс по вашему шаблону над определённой сущностью. Вы спрашиваете про метод documentgenerator.document.add. Это метод модуля "генератор документов", который занимается генерацией docx-файлов по шаблонам. Я думаю, что вам нужен именно bizproc.workflow.start |
|
|
17.07.2019 09:34:00
Олег Брага, добрый день
По поводу события Вам надо в обработчике события вызвать $document->setValues(['MY_COMPANY' => 1]); Вычисление конкретных значений полей происходит позже, после этого события. Там будут учтены переданные вами данные |
|||
|
12.07.2019 09:22:50
Подключаете нужное расширение через Bitrix\Main\UI\Extension::load() и пользуетесь классами из документации. |
|
|