• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/update/taskchecklistconverter.php
  • Класс: BitrixTasksUpdateTaskCheckListConverter
  • Вызов: TaskCheckListConverter::clearOldRecords
static function clearOldRecords($entityId)
{
	$connection = Application::getConnection();

	$entityIdName = static::$entityIdName;
	$entityItemsTableName = static::$entityItemsTableName;
	$entityItemsTreeTableName = static::$entityItemsTreeTableName;

	$roots = $connection->query("
		SELECT ID
		FROM {$entityItemsTableName}
		WHERE {$entityIdName} = {$entityId} AND TITLE LIKE 'BX_CHECKLIST_%'
	")->fetchAll();

	if (empty($roots))
	{
		return;
	}

	$rootIds = '(';
	foreach ($roots as $root)
	{
		$rootIds .= $root['ID'].',';
	}
	$rootIds = rtrim($rootIds, ',').')';

	$connection->query("
		DELETE FROM {$entityItemsTreeTableName}
		WHERE PARENT_ID IN {$rootIds} OR CHILD_ID IN {$rootIds}
	");
	$connection->query("
		DELETE FROM {$entityItemsTableName}
		WHERE ID IN {$rootIds}
	");
}