- Модуль: bizproc
- Путь к файлу: ~/bitrix/modules/bizproc/lib/activity/baseactivity.php
- Класс: BitrixBizprocActivityBaseActivity
- Вызов: BaseActivity::getPropertiesDialogValues
static function getPropertiesDialogValues(
$documentType,
$activityName,
&$workflowTemplate,
&$workflowParameters,
&$workflowVariables,
$currentValues,
&$errors
): bool
{
if (!static::checkModules())
{
return false;
}
$dialog = new PropertiesDialog(static::getFileName(), [
'documentType' => $documentType,
'activityName' => $activityName,
'workflowTemplate' => $workflowTemplate,
'workflowParameters' => $workflowParameters,
'workflowVariables' => $workflowVariables,
'currentValues' => $currentValues,
]);
$extractingResult = static::extractPropertiesValues($dialog, static::getPropertiesDialogMap($dialog));
if (!$extractingResult->isSuccess())
{
foreach ($extractingResult->getErrors() as $error)
{
$errors[] = [
'code' => $error->getCode(),
'message' => $error->getMessage(),
'parameter' => $error->getCustomData(),
];
}
}
else
{
$errors = static::ValidateProperties(
$extractingResult->getData(),
new CBPWorkflowTemplateUser(CBPWorkflowTemplateUser::CurrentUser)
);
}
if ($errors)
{
return false;
}
$currentActivity = &CBPWorkflowTemplateLoader::FindActivityByName(
$workflowTemplate,
$activityName
);
$currentActivity['Properties'] = $extractingResult->getData();
return true;
}