Show/Hide Toolbars

Руководство администратора

Настройки фильтрации

Ссылки Назад Вверх Вперед

Фильтры используются в виджетах, отчетах, планировщике, иерархии задач.

warning_icon Настройки фильтрации работают только для следующих типов виджетов: Smart Html, График, Таблица, Блок поиска задач. Для остальных типов вкладка неактивна

warning_icon Инструмент фильтрации только формирует условия отбора данных. Чтобы отбор работал, разработчик должен обеспечить прием и обработку параметров фильтра в хранимой процедуре, которая является источником данных

Для настройки фильтров в интерфейсе администратора перейдите во вкладку Открыть настройки фильтрации. Вы можете выбрать один из преднастроенных в системе фильтров, при необходимости отредактировать его или создать новый фильтр.

filters_spa-1

Окно выбора фильтра

Для создания нового фильтра нажмите кнопку Создать и в открывшемся окне введите его название. После создания фильтра выберите его из списка доступных.

filters_spa-2

Окно создания фильтра

Если настройка Сохранять значения фильтра активна, то выбранное значение фильтра будет сохраняться при повторном открытии объекта. Если настройка не активна, то выбранный фильтр будет сброшен при повторном открытии.

Фильтр может содержать одно или несколько условий отбора. Один и тот же фильтр может применяться к различным объектам системы: виджетам, отчетам, иерархиям, данным планировщика. Поэтому имеет смысл давать фильтрам значимые названия, которые облегчат их дальнейшее использование:

filters_spa-3

Выпадающий список выбора фильтра

Для настройки параметров фильтра нажмите кнопку Редактировать справа от названия.

При редактировании фильтра открывается окно настройки параметра фильтра.

filters_spa-4

Окно настройки параметров

Для создания нового параметра нажмите кнопку Добавить параметр. Набор дополнительных параметров меняется в зависимости от типа параметра.

filters_spa-5

Настройка параметра фильтра

Название

Описание

Название

Название параметра для отображения в фильтре в пользовательском интерфейсе

Параметр

Название параметра для передачи в объект, с которым связан фильтр

Тип фильтра

Возможные значения:

Строка

Число

Дата

Период

Выпадающий список

Категория (выбор категорий\разделов)

Пользователь (выбор пользователей)

Группа (выбор групп)

Оргструктура (выбор элемента оргструктуры)

Скрытый (скрытый фильтр, задаваемый смарт-выражением)

Обязательное значение

Если настройка активна, то без указания значения отчет не будет формироваться

Только для чтения

Если настройка активна, то параметр отображается, но недоступен для изменения

Дополнительные параметры (набор дополнительных параметров меняется в зависимости от типа параметра)

Свой \ Смарт-выражение

Переключатель отображается только для параметров типа "Выпадающий список". В значении "Свой" список значений для выбора формируется вручную, в значении "Смарт-выражение" — возвращается смарт-выражением. Подробнее см. здесь

Отложенная загрузка

Отображается только для параметров типа "Выпадающий список" со списком значений из смарт-выражения. Рекомендуется включать для списков с несколькими десятками и сотнями значений. Если параметр включен, то список будет подгружаться асинхронно, не влияя на загрузку содержимого объекта

Мультивыбор

Отображается только для параметров типа "Выпадающий список". Если настройка активна, то параметр может возвращать сразу несколько выбранных значений.

Для параметров типа  "Пользователь", "Группа", "Оргструкутра", "Категория" режим мультивыбора включен по умолчанию и не отображается для выбора

Значение по умолчанию

Значение, которое передается при открытии в портальный блок или отчет, с которым связан фильтр

Для сохранения заданных параметров отбора нажмите кнопку Добавить.

Для перехода к редактированию уже существующего параметра нажмите на соответствующую строку таблицы.

Для удаления параметра щелкните правой кнопкой мыши по строке таблицы и выберите пункт Удалить в контекстном меню.

При нажатии кнопки Копировать параметр создается дубликат выбранного параметра внутри настроек активного фильтра, копия добавляется в конец таблицы.

Особенности настройки разных типов фильтров

Период

Если настраивается отбор по периоду, вы можете выбрать один из преднастроенных периодов, таких как текущая неделя, текущий месяц, последние три месяца, текущий год и т.п., или указать произвольный период:

filters_spa-6

Параметр типа "Период"

Начальное и конечное значение задается в календаре, который открывается по нажатию на кнопку справа от поля.

filters_spa-7

Календарь для указания значения периода

Кроме того, вы можете вычислять период с помощью смарт-выражения. В общем случае смарт-выражение должно возвращать список из двух дат: { ДатаОт, ДатаДо }.

Если начало периода не ограничено, то вместо первой даты должно стоять значение null: { null, ДатаДо }. Если конец периода не ограничен, то смарт-выражение может возвращать список из одной даты { ДатаОт } или просто одну дату, без списка.

Если смарт-выражение задано как запрос TSQL, то запрос должен возвращать одну или две строки, и первая колонка должна быть датой. Значение первой колонки в первой строке интерпретируется как начало периода, а во второй строке (если она есть) — как конец периода.

Дата

Значение по умолчанию для параметра Дата должно быть отформатировано:

filters_spa-8

Смарт-выражение для значения параметра "Дата" по умолчанию

Выпадающий список

Если настраивается отбор с помощью выпадающего списка, вы можете сформировать свой выпадающий список, перечислив все его элементы:

filters_spa--9

Параметр типа "Выпадающий список" задается перечислением значений

Нажмите на кнопку Добавить элемент и укажите название и значение элемента. Удаление элемента осуществляется нажатием на крестик справа от поля.

filters_spa--10

Добавление элементов

Формирование выпадающего списка может быть выполнено так же с помощью смарт-выражения:

filters_spa--11

Параметр типа "Выпадающий список" задается смарт-выражением

Смарт-выражение должно возвращать выборку элементов. В этом случае поле Свойство значения должно идентифицировать такой элемент (например, возвращать его ID), а поле Свойство названия должно содержать описание элемента так, как его увидит пользователь. Пример настройки:

filters_spa--12

Пример настройки выпадающего списка

Смарт-выражение:

filters_spa-13

Смарт-выражение для параметра типа "Выпадающий список"

Значение по умолчанию для параметра отбора может быть задано как фиксированное или вычисляться с помощью смарта.

Если отмечен параметр Мультивыбор, то пользователь сможет выбрать несколько значений из списка. Для больших списков (сотни записей) рекомендуется включать параметр Отложенная загрузка — тогда загрузка списка не будет замедлять работу с системой.

В настройках фильтрации выпадаюего списка для портального блока в статичном наборе доступно свойство Ключ родителя, а для динамического набора (smart) — текстовое поле ввода Колонка родителя.

Колонка родителя указывает, какой столбец в результате смарт-выражения содержит ключ родителя — значение, по которому элемент дочернего списка привязывается к элементу родительского. Используется для каскадных (зависимых) выпадающих списков.

В настройках фильтрации выпадаюего списка для портального блока доступна опция Колонка доступности — она используется для управления доступностью элементов в зависимом dropdown-е; указывает, какой столбец в результате смарт-выражения содержит флаг/признак доступности каждого элемента. Сценарий использования: смарт-выражение возвращает все возможные значения, но некоторые из них должны быть доступны пользователю не всегда — в зависимости от контекста или выбора в родительском фильтре.

Параметр типа Выпадающий список, который формируется с помощью смарт-выражения, может зависеть от значений, выбранных в других параметрах. Например, если один параметр задает категорию, то в другом параметре можно выбрать только статусы, которые есть в данной категории. Или если один параметр задает пользователя, а другой — задачи, где этот пользователь является заказчиком. Такие параметры называют зависимыми.

warning_icon В настоящее время зависимым может быть только параметр типа Выпадающий список, значения которого формируются смарт-фильтром. Для зависимого параметра нужно включить опции отложенная загрузка и мультивыбор

Рассмотрим фильтр с тремя параметрами. Пусть второй параметр зависит от значения, выбранного в первом параметре.

filters_spa-14

Пример фильтра с зависимым параметром

В опции Зависит от параметра должен быть выбран один или несколько параметров из состава текущего фильтра, от которых будет зависеть работа и отображение выпадающего списка.

Пример настройки:

filters_spa--15

Настройки зависимого параметра

Значения родительских параметров передаются в смарт-выражение в параметре @eventParam2 в виде JSON следующей структуры:

select [value] as id  from openjson (@eventParam2, '$."{ID}"') where [key] = 'value'

В качестве {ID} указывается ID родительского параметра.

filters_spa-16

Пример выражения 1

JSON так же может быть задан следующим образом:

select json_value ( @eventParam2, '$."{ID}".value[]') as id

В качестве {ID} указывается ID родительского параметра.

filters_spa-17

Пример выражения 2

Пользователь, Группа, Оргструктура

Если фильтры типа Пользователь, Группа или Оргструктура не выбраны, то в параметр передается пустая строка.

Множественный выбор

Если используется выпадающий список со множественным выбором или фильтры типа Пользователь, Группа, Оргструкутра, Категория, то в параметр передается строка, в которой через запятую перечислены ID выбранных элементов. Если в фильтре Категория выбран раздел, то возвращаются ID всех входящих в него категорий.

Скрытый отбор

Если необходимо дополнительно отфильтровать выводимые в блоке данные по значению определенного параметра, используйте тип фильтра Скрытый. В нем вы можете задать условие с помощью фиксированного значения или с помощью смарт-выражения:

filters_spa-18

Параметр типа "Скрытый"

Использование фильтров в хранимых процедурах

Параметры из фильтров могут обрабатываться в хранимых процедурах, которые являются источниками данных для портальных блоков, отчетов, иерархий задач, планировщиков.

Параметры передаются в хранимую процедуру в формате XML. Для периода передаются два значения From и To, для остальных параметров передается одно значение Value.

Пример использования параметров фильтра в тексте хранимой процедуры