• Модуль: bizproc
  • Путь к файлу: ~/bitrix/modules/bizproc/classes/general/workflowtemplateloader.php
  • Класс: CBPWorkflowTemplateLoader
  • Вызов: CBPWorkflowTemplateLoader::deleteTemplate
public function deleteTemplate($id)
{
	global $DB;

	$id = intval($id);
	if ($id <= 0)
		throw new Exception("id");

	$dbResult = $DB->Query(
		"SELECT COUNT('x') as CNT ".
		"FROM b_bp_workflow_instance WI ".
		"WHERE WI.WORKFLOW_TEMPLATE_ID = ".intval($id)." "
	);

	if ($arResult = $dbResult->Fetch())
	{
		$cnt = intval($arResult["CNT"]);

		if ($cnt <= 0)
		{
			$DB->Query(
				"DELETE FROM b_bp_workflow_template ".
				"WHERE ID = ".intval($id)." "
			);

			$event = new Event(
				'bizproc',
				'onAfterWorkflowTemplateDelete',
				[
					'ID' => $id,
				]
			);
			EventManager::getInstance()->send($event);
		}
		else
		{
			throw new CBPInvalidOperationException(GetMessage("BPCGWTL_CANT_DELETE"));
		}
	}
	else
	{
		throw new Exception(GetMessage("BPCGWTL_UNKNOWN_ERROR"));
	}
}