Мне нужно достать название элемента из другого инфоблока по его id(элемента)(id элемента у меня является "привязкой к элементу")
Сейчас это сделано так:
$arSelect = Array("ID", "NAME", "PROPERTY_c_serv", "PROPERTY_P_CAT_VALUE");
$arFilter = Array("IBLOCK_ID" => "10");
$res = CIBlockElement::GetList(Array(), $arFilter, false, array("nPageSize" => 25), $arSelect);
while($arFields = $res->fetch()){
//тут я делаю дополнительный запрос
$arSelect_cat = Array("ID", "NAME");
$arFilter_cat = Array("IBLOCK_ID"=>"11", "ACTIVE"=>"Y","ID"=>$arFields["PROPERTY_P_CAT_VALUE"]);
$res_cat = CIBlockElement::GetList(Array(), $arFilter_cat, false, false, $arSelect_cat);
while($ob_cat = $res_cat->GetNextElement()){
$arFields_cat = $ob_cat->GetFields();
$arFields["category"] = $arFields_cat["NAME"];
}
}
Ну и соответственно это ни в какие ворота.
Поэтому хочу сделать под запрос, с помощью CIBlockElement::SubQuery (
Документация)
Я его уже несколько раз переписываю, ничего не меняется, абсолютно.
Переписал я его вот так:
$arSelect = Array("ID", "NAME", "PROPERTY_c_serv", "PROPERTY_P_CAT_VALUE");
$arFilter = Array("IBLOCK_ID" => "10", "ID" => CIBlockElement::SubQuery("NAME", array("IBLOCK_ID"=>"11", "ACTIVE"=>"Y","ID"=>$arFields["PROPERTY_P_CAT_VALUE"])));
$res = CIBlockElement::GetList(Array(), $arFilter, false, array("nPageSize" => 25), $arSelect);
while($arFields = $res->fetch()){
//код
}
И в результате ничего не меняется. Ни отображается, ни ошибки ничего не происходит,как запрос был так он и работал.
Что я делаю не так? Кто уже делал такие под запросы, подскажите, буду весьма благодарен. Или хотя бы ткните где я сделал не так(