можно ли сделать фильтр по значению свойства Привязка к элементу, то есть по ID привязанного элемента? Или я слишком много хочу😥
Если ставить просто 'filter' => ['ELEMENT' => $elementID] то выдаёт ошибку There is no SQL definition for Entity `ELEMENT`, please use a scalar field (0)
Свойства вроде как лежат в отдельной таблице. Надо или через registerRuntimeField, или через новое апи инфоблоков.
Это и есть новое апи. Или есть ещё новее?
Может код свойства пересекается с какими-то полем сущности? Код свойства поменять в этом случае надо бы. А так по идее привязка это просто числовое свойство. Добавь свойство в select, из фильтра временно убери и посмотри что там fetch выдаст после выборки. И далее уже фильтруй по действительно существующим полям. Это при условии использования нового апи 👆
В селекте всё ок, как у всех свойств. Код у поля COURSE, а не как в моём примере, он ни с чем не пересекается. Соответственно выборка при использовании алиаса COURSE_ выдаёт верный числовой COURSE_VALUE
может тогда COURSE.VALUE = elementId попробовать в фильтре?
https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=43&CHAPTER_ID=012864&LESSON_PATH=3913.3516.5748.12864
В этом доке близко только вариант через query()->where, а я спрашивал про filter в getList, так что не совсем то.
Почему-то я пробовал COURSE_VALUE и COURSE.ELEMENT, а COURSE.VALUE нет😳 спасибо, попробую
Кстати, да, он прав) Для фильтра надо писать YOUR_PROP.VALUE => $someVal Ошибка ведь о том и говорит, что используешь не тот тип поля для фильтрации. Сразу не обратил внимания.
Обсуждают сегодня