0
Голосовать

Некорректное построение запросов ESQ с использованием типа группировки условий OR

Создано:

Обнаружил некорректное поведение при отправке esq запроса, формируемого на стороне клиента.
Мне необходимо отфильтровать значения, выпадающие в Lookup поле.
Для этого в конфиге лукапа я устанавливаю значение свойству filters, в котором указываю, какие условия должны выполняться (ЛИБО поле не должно равняться определенному значению, ЛИБО поле может быть равно null).
Чтобы выполнялось условие "либо" - я указываю logicalComparisonTypes объекта Terrasoft.FilterGroup равное Terrasoft.LogicalOperatorType.OR (1).
Но фильтрация почему-то происходит, как будто я указываю условие не "либо", а "и".

Проверяю через tcpdump - какой именно запрос летит на сервер после формирования на клиенте, и к моему удивлению в запрос лепится "and" вместо "or".

001

Может кто сталкивался с подобной проблемой на 7.7, 7.8 или 7.10 - подскажите, пожалуйста, как боролись!

001.jpg25.4 кб

Комментарии

Варфоломеев Данила

Terrasoft.createFilterGroup().logicalOperation

возвращает по-умолчанию 0.

Максим Шевченко

Ну собственно да, ответ выше, пишите
var filtersCollection = Terrasoft.createFilterGroup();
filtersCollection.logicalOperation = Terrasoft.LogicalOperatorType.AND;
при создании группы

Чкалов Евгений Валерьевич

Спасибо!
По ошибке использовал logicalComparisonTypes вместо logicalOperation