Заметки
Почему DealTable::getList фильтрует UF-поле под админом, но не под сотрудником
DealTable::getList — ORM-выборка. Она сама по себе не должна восприниматься как список сделок, автоматически ограниченный CRM-правами текущего сотрудника.
Если результат отличается под администратором и обычным пользователем, сравните фактические фильтр, SQL, подключённые обработчики и кеш. Причина может находиться в окружающем коде, который добавляет условия до выполнения запроса.
Для UF-поля проверьте техническое имя и тип значения. Строка 'Y', число 1 и ID варианта списка не взаимозаменяемы.
Если данные показываются сотруднику, используйте слой CRM с проверкой доступа либо добавьте её явно. Выдавать пользователю прямой результат ORM только потому, что запрос «работает», нельзя.