• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/cashbox/checkmanager.php
  • Класс: BitrixSaleCashboxCheckManager
  • Вызов: CheckManager::addChecks
static function addChecks(array $entities)
{
	$result = new Result();

	$map = self::collateDocuments($entities);
	foreach ($map as $check)
	{
		$isCorrect = true;

		$event = new MainEvent('sale', self::EVENT_ON_BEFORE_CHECK_ADD_VERIFY, array($check));
		$event->send();

		if ($event->getResults())
		{
			/** @var MainEventResult $eventResult */
			foreach ($event->getResults() as $eventResult)
			{
				if ($eventResult->getType() !== MainEventResult::ERROR)
				{
					$isCorrect = (bool)$eventResult->getParameters();
				}
			}
		}

		if ($isCorrect)
		{
			$addResult = self::addByType($check["ENTITIES"], $check["TYPE"], $check["RELATED_ENTITIES"]);
			if (!$addResult->isSuccess())
			{
				$result->addErrors($addResult->getErrors());
			}
		}
	}

	return $result;
}