- Модуль: bizproc
- Путь к файлу: ~/bitrix/modules/bizproc/classes/general/stateservice.php
- Класс: CBPStateService
- Вызов: CBPStateService::deleteCompletedStates
static function deleteCompletedStates(array $documentId)
{
$connection = MainApplication::getConnection();
$helper = $connection->getSqlHelper();
list($moduleId, $entity, $docId) = CBPHelper::ParseDocumentId($documentId);
$connection->queryExecute(sprintf('DELETE P FROM b_bp_workflow_permissions P '
.'INNER JOIN b_bp_workflow_state S ON (P.WORKFLOW_ID = S.ID) '
.'LEFT JOIN b_bp_workflow_instance I ON (S.ID = I.ID)'
.'WHERE I.ID IS NULL AND S.MODULE_ID = '%s' AND S.ENTITY = '%s' AND S.DOCUMENT_ID = '%s'',
$helper->forSql($moduleId),
$helper->forSql($entity),
$helper->forSql($docId)
));
$connection->queryExecute(sprintf('DELETE S FROM b_bp_workflow_state S LEFT JOIN b_bp_workflow_instance I '
.'ON (S.ID = I.ID) '
.'WHERE I.ID IS NULL AND S.MODULE_ID = '%s' AND S.ENTITY = '%s' AND S.DOCUMENT_ID = '%s'',
$helper->forSql($moduleId),
$helper->forSql($entity),
$helper->forSql($docId)
));
}