Нужно получать пользователей по фильтру с группами в одну строчку, как это это сделать можно? group пробовал, показалось что медленно, теперь хочу попробовать join-ами сделать.
В результате 502 ошибка, так же это актуально для получения товаров со свойствами.
Помогите разобраться.
| Код |
|---|
$arFilterByGroups = array('LOGIC' => 'OR');
foreach ($arFilter['GROUPS_ID'] as $groupId) {
$arFilterByGroups["=GROUP_{$groupId}.GROUP_ID"] = $groupId;
$arRuntime[] = new BxEntity\ExpressionField("GROUP_ID_{$groupId}_SEARCH", $groupId);
$arRuntime[] = new BxEntity\ReferenceField(
"GROUP_$groupId", 'Bitrix\Main\UserGroup', array('=this.ID' => 'ref.USER_ID', "=this.GROUP_ID_{$groupId}_SEARCH" => 'ref.GROUP_ID'), array('join_type' => 'LEFT')
);
//$arRuntime[] = new BxEntity\ExpressionField("GROUP_ID_{$groupId}", '%s', "GROUP_{$groupId}.GROUP_ID");
}
$arFilter[] = $arFilterByGroups; |
Помогите разобраться.