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

Вопрос по фильтру.

00 голосов
1
У некого инфоблока есть 3 свойства PROPERTY_1, PROPERTY_2, PROPERTY_3
одновременно может быть установлено только 2 из них, а точнее PROPERTY_1 и PROPERTY_3 или PROPERTY_2 и PROPERTY_3

Как сделать фильтр чтобы выбрать только те элементы у которых установлено PROPERTY_2 и PROPERTY_3 (т.е. PROPERTY_1 не установлено)

Пробовал так:
$arFilter = array("=PROPERTY_1" => "", "=PROPERTY_3" => "значение");
выбирает все элементы у которых установлено нужное значение PROPERTY_3

$arFilter = array("=PROPERTY_1" => "NULL", "=PROPERTY_3" => "значение");
ищет элементы где PROPERTY_1 = строке "NULL" (таких элементов нету..).. и получается вообще ничего не отображает.

$arFilter = array("=PROPERTY_1" => NULL, "=PROPERTY_3" => "значение");
отображает все аналогично первому варианту.
спросил 06 Май, 13 от Mango (260 баллов)

1 Ответ

00 голосов
PROPERTY_1, PROPERTY_2, PROPERTY_3 - символьные коды свойств
Код
$arFilter= array("PROPERTY_PROPERTY_1"=>false, "!PROPERTY_PROPERTY_2"=>false, "!PROPERTY_PROPERTY_3"=>false);

Полное условие. Свойство 1 - пустое, 2 и 3 - заполнены
ответил 06 Май, 13 от NitroGeN (2,840 баллов)

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

0 голосов
3 ответов
спросил 28 Фев, 14 от Lollipopk (660 баллов)
0 голосов
4 ответов
спросил 13 Янв, 14 от JIapro (180 баллов)
0 голосов
1 ответ
спросил 06 Янв, 14 от mefhm78 (120 баллов)
0 голосов
2 ответов
спросил 25 Дек, 13 от Rogarond (820 баллов)
0 голосов
7 ответов
спросил 25 Май, 13 от rg (440 баллов)