ragnar_ok
@ragnar_ok

Как фильтровать с использованием CIBlockElement::SubQuery()?

CIBlockElement::SubQuery(); не фильтрует по ACTIVE (или по любому другому полю/свойству). Фильтр не применяется. Выводит все элементы.
$elementObj = CIBlockElement::GetList(
    [], 
    [
        'IBLOCK_ID' => 4,
        //'PROPERTY_REL_ID.ACTIVE' => 'N', // Это работает!
        'ID' => CIBlockElement::SubQuery('PROPERTY_REL_ID', [
            'IBLOCK_ID' => 1,
            'ACTIVE' => 'N'
        ]),
    ],
    false,
    false,
    ['ID', 'IBLOCK_ID', 'NAME']
);
    
while ($elementArray = $elementObj->Fetch()) {
    $resultArray[] = $elementArray;
}


При этом если использовать $arFilter = ['PROPERTY_REL_ID.ACTIVE' => 'N'], то фильтрует. Но мне нужен фильтр по свойству.
  • Вопрос задан
  • 170 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Snatch87
Битриксоид по принуждению
Попробуйте так:
[
        'IBLOCK_ID' => 4,

        'PROPERTY_REL_ID' => CIBlockElement::SubQuery('ID', [
            'IBLOCK_ID' => 1,
            'ACTIVE' => 'N'
        ]),
    ],
    false,
    false,
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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