• Модуль: catalog
  • Путь к файлу: ~/bitrix/modules/catalog/lib/product/systemfield/productmapping/setdefaultvaluestepper.php
  • Класс: BitrixCatalogProductSystemFieldProductMappingSetDefaultValueStepper
  • Вызов: SetDefaultValueStepper::getProductsQuery
private function getProductsQuery(bool $isCountSelect = false, int $lastId = 0): string
{
	$typeIds = join(',', [
		ProductTable::TYPE_PRODUCT,
		ProductTable::TYPE_SET,
		ProductTable::TYPE_SKU,
	]);

	$select = 'b_catalog_product.id as `id`';
	if ($isCountSelect)
	{
		$select = 'COUNT(b_catalog_product.id)';
	}

	$where = '';
	if ($lastId)
	{
		$where = new SqlExpression("AND b_catalog_product.id > ?i", $lastId);
	}

	return trim("
	SELECT {$select}
	FROM b_catalog_product
	LEFT JOIN b_uts_product ON b_catalog_product.id = b_uts_product.value_id
	WHERE b_catalog_product.TYPE in ({$typeIds})
	AND b_uts_product.UF_PRODUCT_MAPPING IS NULL {$where}
	" . ($isCountSelect ? "" : "ORDER BY b_catalog_product.id ASC") . "
	");
}