• Модуль: bizproc
  • Путь к файлу: ~/bitrix/modules/bizproc/lib/controller/debugger.php
  • Класс: BitrixBizprocControllerDebugger
  • Вызов: Debugger::finishDebugSessionAction
public function finishDebugSessionAction(string $sessionId, bool $deleteDocument = false): ?array
{
	$session = $this->getSession($sessionId);

	if (!$session)
	{
		return null;
	}

	if (!$session->canUserFinish($this->getCurrentUser()->getId()))
	{
		$this->addError(new Error(Loc::getMessage('BIZPROC_CONTROLLER_DEBUGGER_CAN_FINISH_ERROR')));

		return null;
	}

	$toDeleteDocument = $session->isExperimentalMode() && $deleteDocument ? $session->getFixedDocument() : null;

	$result = Manager::finishSession($session);
	if (!$result->isSuccess())
	{
		$this->addErrors($result->getErrors());
	}
	else
	{
		Listener::getInstance()->onSessionFinished($sessionId);

		if ($toDeleteDocument)
		{
			$documentService = CBPRuntime::GetRuntime(true)->getDocumentService();
			$documentService->deleteDocument($toDeleteDocument->getParameterDocumentId());
		}
	}

	return null;
}