Михаил Ветров, все равно не совсем понятно. Вам нужен список всех возможных авторов получить? Или только тех, которые привязаны к элементам HL-блока?
Если первый вариант, то через CUserFieldEnum::GetList с фильтром по ID пользовательского поля типа список(поле Автор).
Если второй, то можно как-то так:
Код |
---|
$ar = $strEntityDataClass::getList(array(
'filter' => array("!UF_AUTHOR" => false),
'group' => array("UF_AUTHOR"),
'select' => array("UF_AUTHOR", new Entity\ExpressionField('CNT', 'COUNT(*)'))
))->fetchAll();
|
Такой запрос вам выдаст что-то на вроде этого:
Код |
---|
Array
(
[0] => Array
(
[UF_AUTHOR] => 3
[CNT] => 2
)
[1] => Array
(
[UF_AUTHOR] => 4
[CNT] => 1
)
) |
Выборка с группировкой. Можно и не добавлять поле с количеством записей автора, это так для наглядности.
Далее проходитесь по этому массиву, собираете ID значений списка и делаете с ними то, что вам нужно