• Модуль: catalog
  • Путь к файлу: ~/bitrix/modules/catalog/lib/model/product.php
  • Класс: BitrixCatalogModelProduct
  • Вызов: Product::runAddExternalActions
static function runAddExternalActions($id, array $data): void
{
	switch ($data['fields']['TYPE'])
	{
		case CatalogProductTable::TYPE_OFFER:
			if (
				isset($data['actions'][self::ACTION_CHANGE_PARENT_AVAILABLE])
				|| isset($data['actions'][self::ACTION_CHANGE_PARENT_TYPE])
			)
			{
				CatalogProductSku::calculateComplete(
					$id,
					$data['external_fields']['IBLOCK_ID'],
					CatalogProductTable::TYPE_OFFER
				);
			}
			break;
		case CatalogProductTable::TYPE_SKU:
			if (isset($data['actions'][self::ACTION_CHANGE_PARENT_AVAILABLE]))
			{
				CatalogProductSku::calculateComplete(
					$id,
					$data['external_fields']['IBLOCK_ID'],
					CatalogProductTable::TYPE_SKU
				);
			}
			break;
	}
}