StartWorkflow
Описание и параметры
string public static function CBPDocument::StartWorkflow( integer workflowTemplateId, array documentId, array arParameters, array &arErrors );
Метод запускает рабочий поток по коду его шаблона. Это рекомендуемый метод для запуска бизнес-процессов.
Примечание: Метод принимает массив конфигурационных параметров и генерирует скрипты, необходимые для показа файлового диалога. Метод статический.
Параметры метода
Параметр | Описание |
---|---|
workflowTemplateId | Код шаблона рабочего потока. |
documentId | Массив из 3 элементов. id модуля, сущность (класс) и непосредственно ID документа, например:
['crm', 'CCrmDocumentLead', 'LEAD_1'] ['lists', 'BizprocDocument', '22'] ['disk', 'Bitrix\Disk\BizProcDocument', '490'] ['tasks', 'Bitrix\Tasks\Integration\Bizproc\Document\Task', '13'] Для бизнес-процессов: $documentId => array('lists', 'BizprocDocument', $id_element) Для шаблона списка: $documentId => array('lists', 'Bitrix\Lists\BizprocDocumentLists', $id_element) |
arParameters | Массив параметров запуска рабочего потока.
Примечание: если процесс запускается из другого процесса через API, и при этом передается значение множественного параметра, то оно должно передаваться в виде массива. |
arErrors | Массив ошибок, которые произошли при запуске рабочего потока в виде
array( array( "code" => код_ошибки, "message" => сообщение, "file" => путь_к_файлу ), ... ) |
Возвращаемое значение
Возвращается идентификатор запущенного бизнес-процесса. В случае ошибки заполняется массив ошибок.
Смотрите также
Примеры использования
<? // Запустим бизнес-процесс по шаблону $workflowTemplateId с входящими параметрами $arWorkflowParameters // для документа array("bizproc", "CBPVirtualDocument", $documentId) $arErrorsTmp = array(); $wfId = CBPDocument::StartWorkflow( $workflowTemplateId, array("bizproc", "CBPVirtualDocument", $documentId), array_merge($arWorkflowParameters, array("TargetUser" => "user_".intval($GLOBALS["USER"]->GetID()))), $arErrorsTmp ); if (count($arErrorsTmp) > 0) { foreach ($arErrorsTmp as $e) $errorMessage .= "[".$e["code"]."] ".$e["message"]." "; } ?>
![]()
Юрий Кривопустов
| ||
Данные для $documentId смотрим в таблице b_bp_workflow_template.
Для шаблона списка это:
| ||
© «Битрикс», 2001-2025, «1С-Битрикс», 2025
Пользовательские комментарии
Помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.