Коллеги. Нужна Ваша помощь. Такой кейс: У меня в разделе "Обращения" есть деталь "Соисполнители". Я хочу добавить в раздел быстрый фильтр, который будет отображать только те обращения, у которых в "Соисполнителях" есть указанный сотрудник.
Я посмотрел как подобный фильтр строится в разделе Активности (там есть подобная деталь "Участники активности") и попытался сделать что-то похожее.
Но есть одно отличие - мне не нужно отображать обращения, где указанный контакт является Ответственным. Как правильно добавить второй фильтр?
{ name: "UsrEmployee", caption: this.get("Resources.Strings.UsrEmployeeCaption"), addNewFilterCaption: "Выбрать", columnName: "Owner", defValue: this.Terrasoft.SysValue.CURRENT_USER_CONTACT, dataValueType: this.Terrasoft.DataValueType.LOOKUP, filter: BaseFiltersGenerateModule.OwnerFilter, appendFilter: function(filterInfo) { var confirmedFilter; if (filterInfo.value && filterInfo.value.length > 0) { confirmedFilter = new Terrasoft.createFilterGroup(); confirmedFilter.add("CaseCoExecutorFilter", Terrasoft.createColumnInFilterWithParameters( "[UsrCoExecutor:UsrCase].UsrEmployee", filterInfo.value)); } return confirmedFilter; } }
Нравится
Привет посмотри группировку фильтров (по операциям И и ИЛИ) пример с описанием тут
Григорий Чех,
Добрый день, Григорий, спасибо за ссылку, я в принципе уже пробовал группировать фильтры, но у меня скорей проблема с параметром (путь), который я передаю в фильтр, не совсем улавливаю что я делаю))
Я пробовал добавить второй фильтр вот так:
confirmedFilter.add("NotOwnerFilter", Terrasoft.createColumnFilterWithParameter( Terrasoft.ComparisonType.NOT_EQUAL, "Owner", filterInfo.value, Terrasoft.DataValueType.GUID));
Но это безуспешно)
Примеры наложения фильтров есть здесь, у Вас вроде бы всё аналогично, кроме четвёртого параметра с типом. Может, два фильтра в группу не так объединили или поля не так называются. Или в filterInfo.value не в том формате и нужно преобразовать. Если есть доступ к серверу, можно посмотреть в профайлере, какой запрос уходит в базу.