Модификации CIBlockElement::GetList

Рейтинг: 2.1461  
Новая
Предложил Колесников Николай 20.10.2011 21:32:21

Модификации CIBlockElement::GetList

Описывал ранее в блоге (http://dev.1c-bitrix.ru/community/webdev/user/14496/blog/sku/) сложности, связанные с работой GetList, если имеется привязка элементов.

Например, справочник Модели [секция - Бренд, элемент - Модель] и каталог Товары [секция - Категория, элемент - Товар] связаны между собой свойством "Привязка к товарам". Мои модификации делают возможными следующий синтаксис:
//найти все мужские товары
$arFilter["PROPERTY_MODEL.PROPERTY_GENDER"] = $prop1; 

//найти товары определенного бренда
$arFilter["PROPERTY_MODEL.IBLOCK_SECTION_ID"] = $sect1; 

//посчитать количество кожаных товаров
$arGroupBy["PROPERTY_MODEL.PROPERTY_MATERIAL"] = $prop2; 

//посчитать количество товаров бренда 
$arGroupBy["PROPERTY_MODEL.IBLOCK_SECTION_ID"] = $sect2; 
Все изменения касаются файла /bitrix/modules/iblock/classes/general/iblockelement.php. Версия модуля "Информационные блоки" - 11.0.2. Выложил только модифицированные функции (мои дополнения и модификации выделены цветом):  http://pastehtml.com/view/bb8kug80v.rtxt

Рейтинг: 0  
Шипулин Артем 26.10.2012 07:38:42
Сам неоднократно сталкивался с необходимостью фильтрации по связанным свойствам и привязке к секциям, так что полностью вас поддерживаю