Differences
This shows you the differences between two versions of the page.
— |
en:start:local_with_php [2016/07/07 17:53] (current) admin created |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ===== Execution: Local with PHP ===== | ||
+ | <WRAP center tip 100%> | ||
+ | 2016-05-08: Updated to latest and easiest version | ||
+ | </WRAP> | ||
+ | You could execute a workflow manually in your own vtigerCRM extension or PHP file. \\ | ||
+ | You only need the following PHP Code: | ||
+ | |||
+ | <Code> | ||
+ | require_once(vglobal('root_directory')."/modules/Workflow2/autoload_wf.php"); | ||
+ | |||
+ | // The ID of the Workflow you want to execute | ||
+ | $workflow_id = 1; | ||
+ | // The user, which will be used for execution | ||
+ | $executionUserId = 1; | ||
+ | // Specify a CRMID if you want to execute the record in context of this record. (Important for field values) | ||
+ | $crmid = false; | ||
+ | |||
+ | $wfExecuter = new \Workflow\Execute(); | ||
+ | $wfExecuter->setUser($executionUserId); | ||
+ | if(!empty($crmid)) { | ||
+ | $wfExecuter->setRecord($crmid); | ||
+ | } | ||
+ | |||
+ | // Set the $env Variable, which is initially available in Workflow | ||
+ | $wfExecuter->setEnvironment(array("variable" => "value", "variable2" => "value2")); | ||
+ | |||
+ | $wfExecuter->runById($workflow_id); | ||
+ | |||
+ | // If you have created your own trigger to execute multiple workflows, you could use the following function | ||
+ | // Notice: Handling of configuration in Settings will be improved in future versions of Workflow Designer | ||
+ | // $wfExecuter->runByTrigger("TriggerKey"); | ||
+ | </Code> |