Как откорректировать фильтр по свойству в календаре событий битрикс?

рабочий пример
$arFilter = Array("IBLOCK_ID"=>$IBLOCK_ID,"ACTIVE" => "Y", ">=DATE_ACTIVE_FROM" => $curdate, "PROPERTY" => array('ADD_TO_EVENTS' => array('VALUE' => 'Y')), "<=DATE_ACTIVE_FROM" => $curdatelast);


не рабочий
$arFilterDate = Array(
    "IBLOCK_ID" => $IBLOCK_ID,
    "ACTIVE" => "Y", 
    ">=DATE_ACTIVE_FROM" => $curdate, 
    "PROPERTY" => array('DATA_SOBYTIYA' => array('VALUE' => true)), 
    "<=DATE_ACTIVE_FROM" => $curdatelast
  );


Как нужно правильно прописать фильр "не рабочий", чтобы он выводил DATA_SOBYTIYA когда она заполнена

здесь много примеров, но нет ни одно с "пусто" - "не пусто"
dev.1c-bitrix.ru/learning/course/?COURSE_ID=43&LES...

видимо нужно больше инфы
-------------------------------
свойства беру из компонента и вывожу в календаре
$IBLOCK_ID = intval($arParams['IBLOCK_ID']);
  //print $IBLOCK_ID;
  if(!CModule::IncludeModule("iblock"))
    die('iblock module is not included!');
  $arSort = Array("SORT"=>"ASC", "NAME"=>"ASC");
  $arSelect = Array("ID","NAME","PROPERTY_DATA_SOBYTIYA");
  $arFilter = Array("IBLOCK_ID"=>$IBLOCK_ID,"ACTIVE" => "Y", ">=DATE_ACTIVE_FROM" => $curdate, "PROPERTY" => array('ADD_TO_EVENTS' => array('VALUE' => 'Y')), "<=DATE_ACTIVE_FROM" => $curdatelast);
  $arFilterDate = Array(
    "IBLOCK_ID" => $IBLOCK_ID,
    "ACTIVE" => "Y", 
    ">=DATE_ACTIVE_FROM" => $curdate, 
    "!PROPERTY" => array('DATA_SOBYTIYA' => array('VALUE' => false)), 
    "<=DATE_ACTIVE_FROM" => $curdatelast
  );
  $obIBlockResult = CIBlockElement::GetList($arSort, $arFilter, false, false, $arSelect);
  $arFilter = $obIBlockResult->GetNext();
  $sProperty = $arFilterDate;//["PROPERTY_DATA_SOBYTIYA_VALUE"];
...
	$arDay["events"][] = array(
						"time"=>$eTime,
						"url"=>$dayNews["DETAIL_PAGE_URL"],
						"title"=>$title,
						"preview"=>$sTitle,
						"property"=>$sProperty,//свойство должно что-то передавать 
						$arParams["DATE_FIELD"]=>$dayNews[$arParams["DATE_FIELD"]],
					);

вардамп
array(4) {
        ["day"]=&gt;
        int(18)
        ["td_class"]=&gt;
        string(14) "NewsCalWeekend"
        ["tday_class"]=&gt;
        string(10) "NewsCalDay"
        ["events"]=&gt;
        array(1) {
          [0]=&gt;
          array(6) {
            ["time"]=&gt;
            string(11) "19:17&nbsp;"
            ["url"]=&gt;
            string(56) "/adress/"
            ["title"]=&gt;
            string(92) "sadfsadfsadfds"
            ["preview"]=&gt;
            string(190) "выавфыаывфавыаываывфаывавыаывфавыа.."
            ["property"]=&gt;
            array(5) {
              ["IBLOCK_ID"]=&gt;
              int(31)
              ["ACTIVE"]=&gt;
              string(1) "Y"
              ["&gt;=DATE_ACTIVE_FROM"]=&gt;
              NULL
              ["PROPERTY"]=&gt;
              array(1) {
                ["DATA_SOBYTIYA"]=&gt;
                array(1) {
                  ["VALUE"]=&gt;
                  bool(true)
                }
              }
              ["&lt;=DATE_ACTIVE_FROM"]=&gt;
              NULL
            }
            ["DATE_ACTIVE_FROM"]=&gt;
            string(19) "18.06.2016 19:17:00"
          }
        }
      }
  • Вопрос задан
  • 430 просмотров
Решения вопроса 1
$arrFilter['!PROPERTY_<код свойства>'] = false;

проверка на заполнено
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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