- Модуль: bizproc
- Путь к файлу: ~/bitrix/modules/bizproc/classes/general/trackingservice.php
- Класс: CBPTrackingService
- Вызов: CBPTrackingService::dumpWorkflow
static function dumpWorkflow($workflowId)
{
global $DB;
$workflowId = trim($workflowId);
if ($workflowId == '')
throw new Exception("workflowId");
$dbResult = $DB->Query(
"SELECT ID, TYPE, MODIFIED, ACTION_NAME, ACTION_TITLE, EXECUTION_STATUS, EXECUTION_RESULT, ACTION_NOTE, MODIFIED_BY ".
"FROM b_bp_tracking ".
"WHERE WORKFLOW_ID = '".$DB->ForSql($workflowId)."' ".
"ORDER BY ID "
);
$dbResult = new CBPTrackingServiceResult($dbResult);
$r = array();
$level = 0;
while ($arResult = $dbResult->GetNext())
{
if ($arResult["TYPE"] == CBPTrackingType::CloseActivity)
{
$level--;
$arResult["PREFIX"] = str_repeat(" ", $level > 0 ? $level : 0);
$arResult["LEVEL"] = $level;
}
elseif ($arResult["TYPE"] == CBPTrackingType::ExecuteActivity)
{
$arResult["PREFIX"] = str_repeat(" ", $level > 0 ? $level : 0);
$arResult["LEVEL"] = $level;
$level++;
}
else
{
$arResult["PREFIX"] = str_repeat(" ", $level > 0 ? $level : 0);
$arResult["LEVEL"] = $level;
}
$r[] = $arResult;
}
return $r;
}