如何使用 PHP SDK 在 camunda 中设置实例变量


How to set instance variables in camunda using the PHP SDK?

我正在尝试在camunda中使用PHP SDK,但没有清楚地记录如何设置进程变量。

有什么想法吗?

您可以使用 ProcessInstanceService 来执行此操作。

下面是演示发票收据的片段。

$camundaAPI = new 'org'camunda'php'sdk'Api('http://localhost:8080/engine-rest');
$processDefinitionRequest = new 'org'camunda'php'sdk'entity'request'ProcessDefinitionRequest();
$processDefinitions = $camundaAPI->processDefinition->getDefinitions($processDefinitionRequest);
foreach($processDefinitions AS $pd) {
    echo 'Process deployment id: ' . $pd->getDeploymentId() . "'n";
}
// Process instance (make the assumption that $pd is the desired object).
$procInstance = $camundaAPI->processDefinition->startInstanceByKey($pd->getKey(), $processDefinitionRequest);
// ProcessInstanceService
$procInstanceService = new 'org'camunda'php'sdk'service'ProcessInstanceService('http://localhost:8080/engine-rest/');
$var = new 'org'camunda'php'sdk'entity'request'VariableRequest();
$var->setType('String');
$var->setValue('H4CK4THON2014');
$procInstanceService->putProcessVariable($procInstance->getId(), 'creditor', $var);