Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

bitrix api sku

00 голосов
7
Есть реализоция битрикс ску. 2 инфоблока, один основной, второй с торговыми предложениями, что нужно: при выборке ciblockelement::getlist элементов из основного инфоблока фильтровать их по свойству из инфоблока с предложениями. Может кто подскажет?
спросил 28 Авг, 13 от Niferiys (220 баллов)

7 Ответы

00 голосов
В CIBlockElement::GetList можно передавать SubQuery (подзапросы). Вот с их помощью и сделан фильтр по свойствам торговых предложений в админке.

Код
$arSubQuery = array("IBLOCK_ID" => инфоблок_предложений);
$arSubQuery['свойство_предложения'] = 'значение';

$arFilter['ID'] = CIBlockElement::SubQuery('свойство привязки предложения к товару', $arSubQuery);


Ну а $arFilter - в CIBlockElement::GetList...
ответил 28 Авг, 13 от Pomnep (13,960 баллов)
00 голосов
Спасибо огромное, еще 1 просьба: сделайте нормальный хелп по апи.
ответил 13 Ноя, 13 от Niferiys (220 баллов)
00 голосов
Как посоветуете поступить когда ситуация обратная:
Есть реализация битрикс ску. 2 инфоблока, один основной, второй с торговыми предложениями, что нужно: при выборке ciblockelement::getlist элементов из инфоблока ТОРГОВЫХ ПРЕДЛОЖЕНИЙ фильтровать их по свойствам из основного инфоблока?
ответил 22 Фев, 14 от Nimfo (140 баллов)
00 голосов
http://dev.1c-bitrix.ru/api_help/iblock/classes/ciblockelement/getlist.php

Цитата
PROPERTY_<PROPERTY_CODE>.<FIELD> - фильтр по значениям полей связанных элементов. , где PROPERTY_CODE - ID или мнемонический код свойства привязки, а FIELD - поле указанного в привязке элемента. FIELD может принимать следующие значения: ACTIVE, DETAIL_TEXT_TYPE, PREVIEW_TEXT_TYPE, EXTERNAL_ID, NAME, XML_ID, TMP_ID, DETAIL_TEXT, SEARCHABLE_CONTENT, PREVIEW_TEXT, CODE, TAGS, WF_COMMENTS, ID, SHOW_COUNTER, WF_PARENT_ELEMENT_ID, WF_STATUS_ID, SORT, CREATED_BY, PREVIEW_PICTURE, DETAIL_PICTURE, IBLOCK_ID, TIMESTAMP_X, DATE_CREATE, SHOW_COUNTER_START, DATE_ACTIVE_FROM, DATE_ACTIVE_TO, ACTIVE_FROM, ACTIVE_TO, ACTIVE_DATE, DATE_MODIFY_FROM, DATE_MODIFY_TO, MODIFIED_USER_ID, MODIFIED_BY, CREATED_USER_ID, CREATED_BY. Правила фильтров идентичны тем, которые описаны выше.
ответил 13 Июнь, 14 от NitroGeN (2,840 баллов)
00 голосов
Евгений Малков,  нужно
Цитата
фильтровать их по свойствам из основного инфоблока?
Поэтому необходимо чтобы было PROPERTY_<PROPERTY_CODE>.PROPERTY_<PROPERTY_CODE2>, самое что интересное в документации к гетлисту написано что PROPERTY_<PROPERTY_CODE>.PROPERTY_<PROPERTY_CODE2> можно и в $arSelect и в $arOrder пихать. А вот в $arFilter - увы(

Поэтому мне пока приходится 2 раза гетлист использовать
ответил 11 Окт, 14 от Nimfo (140 баллов)
00 голосов
Присоединяюсь и добавляю
В настоящее время СВЯЗАНННЫЕ ИНФОБЛОКИ реально СВЯЗЫВАЮТ иногда руки
1. используя GetList со связанными блоками - мы не можем пользоваться свойствами связанного инфоблока в фильтрации и отборах
2. вроде есть подзапросы, но они реализуют только 50% нужного функционала (Александр Семеритов уже указал на невозможность использования подзапроса при работ ОТ инфоблока SKU)
в итоге: В настоящее время в БУС нет полноценных меанизмов, позволяющих реализовать весь потенциал системы
и приходится писать свои запросы
Господа разработчики, может подналечь? Да прикрыть эти дыры?
ответил 12 Фев, 15 от jenia (1,500 баллов)
00 голосов
ответил 23 Май, 15 от Nimfo (140 баллов)

Похожие вопросы

0 голосов
3 ответов
спросил 12 Март, 14 от Niferiys (220 баллов)
0 голосов
2 ответов
0 голосов
5 ответов
0 голосов
6 ответов