Руководство пользователя altAwin:Правила работы с фильтрами

Материал из AltecDocs
Перейти к:навигация, поиск

Правила работы с фильтрами

Фильтр позволяет отобразить только те строки таблицы, которые отвечают определённым условиям. Контекстный фильтр:контекстныйфильтр используется для любых таблиц, но результаты сортировки посредством этого фильтра не сохраняются: после повторного выделения папки, в пределах которой фильтровались строки, отобразятся уже все строки данной папки. фильтр:стационарныйСтационарный фильтр может быть создан внутри папки, располагаться в дереве и отображать отфильтрованные строки постоянно, однако, в отличие от контекстного фильтра его применение невозможно в некоторых разделах программы.

Установка условия фильтрации

Для вызова контекстного фильтра нажмите на кнопку ButtonFilter.png Фильтр на панели инструментов, либо выберите пункт меню Правка/Фильтр…, либо нажмите комбинацию клавиш [Ctrl]+[K]. На экране появится диалог настройки фильтра (рис. 1.33).

Рис. 1.33. Окно Установка фильтра


Чтобы добавить условие для фильтрации, выполните одно из действий:

  • нажмите на кнопку ButtonFilterAddCondition+.png Добавить условие;
  • нажмите на кнопку ButtonFilterAddCondition.png и в появившемся списке выберите пункт Добавить условие.

В окне фильтра появится строка условия (рис. 1.34).

Рис. 1.34. Строка условия фильтрации


В первом раскрывающемся списке (рис. 1.35) укажите поле, по которому будет производиться фильтрация.

Рис. 1.35. Выбор поля для фильтрации


Во втором раскрывающемся списке (рис. 1.36) укажите условие сравнения. Возможные условия сравнения и их действие рассмотрены в табл. 1.14.

Рис. 1.36. Выбор условия сравнения


В третьем поле укажите значение критерия (с учётом регистра символов), по которому будет вестись фильтрация. После нажатия кнопки ОК окно настройки фильтра закроется, и таблица отобразит строки, соответствующие условиям фильтрации.

IconInfo.png Если в качестве поля, по которому будет производиться фильтрация, выбрано поле "Флаг", то его значение указывается в виде натурального числа, исходя из следующих соответствий:
  • Красный = 1
  • Синий = 2
  • Жёлтый = 3
  • Зелёный = 4
  • Оранжевый = 5
  • Лиловый = 6

В табл. 1.13 приведены возможные варианты сравнения.

Таблица 1.13. Условия сравнения для контекстного фильтра

Вариант Какие значения будут результатом фильтрации
равно Равные указанному
не равно Не равные указанному
меньше Меньшие, чем указанное
меньше или равно Меньшие, чем указанное, или равные указанному
больше Большие, чем указанное
больше или равно Большие, чем указанное, или равные указанному
содержит Содержащие указанный фрагмент. Например, при введённом значении ван среди результатов фильтрации может оказаться слово Иванов
не содержит Не содержащие указанный фрагмент. Например, при введённом значении ван среди результатов фильтрации может оказаться слово Петров, а слово Иванов не попадёт в результаты фильтрации
пусто Строки, у которых значение данного поля является пустым
не пусто Строки, у которых значение данного поля не является пустым (то есть поле содержит какое-либо значение)
между Применяется только для числовых значений и дат. При выборе этого варианта появляются два поля для установки значений интервала. Результатом являются значения, входящие в указанный интервал.

AltAwinFilterMezhdu.png Например, при указании значений интервала 1 и 3 результатами поиска будут числа от 1 до 3, включая дробные значения

не между Применяется только для числовых значений и дат. При выборе этого варианта появляются два поля для установки значений интервала. Результатом являются значения, не входящие в указанный интервал. Например, при указании значений интервала 1 и 3 результатами поиска будут все содержащиеся в данном столбце числа (в том числе дробные значения), за исключением входящих в интервал от 1 до 3
в списке При выборе этого варианта появляются два поля для внесения искомых значений, а также кнопки «+» и «-», добавляющие и удаляющие эти поля. Результатом являются значения, совпадающие с одним из указанных.

AltAwinFilterVspiske.pngНапример, указав в этих полях значения дверь и окно, вы найдёте строки, имеющие значение дверь или значение окно

не в списке При выборе этого варианта появляются два поля для внесения искомых значений, а также кнопки «+» и «-», добавляющие и удаляющие эти поля. Результатом являются значения, не совпадающие ни с одним из указанных

Если в качестве поля, по которому должна идти фильтрация, указано поле даты, то становятся доступными дополнительные варианты сравнения. Они позволяют фильтровать строки:

  • за текущий день (неделю, месяц, год),
  • за предыдущий день (неделю, месяц, год),
  • за последующий день (неделю, месяц, год).

Благодаря этому можно создавать всегда актуальные фильтры с автоматически меняющейся датой.

Если нужно задать фильтрацию по нескольким условиям, введите в фильтр нужное количество строк условий. В поле Основная группа устанавливается тип логической связки этих условий: И, ИЛИ, НЕ И, НЕ ИЛИ. Действие логических связок рассмотрено в табл. 1.14.

Таблица 1.14. Логические операторы

Логическая связка Действие
И Результатом фильтрации являются строки таблицы, отвечающие всем перечисленным условиям
ИЛИ Результатом фильтрации являются строки, отвечающие хотя бы одному из перечисленных условий
НЕ И Результатом фильтрации являются все строки таблицы, кроме тех, которые отвечают всем перечисленным условиям
НЕ ИЛИ Результатом фильтрации являются все строки, кроме тех, которые отвечают хотя бы одному из перечисленных условий
Установка многоуровневого условия

Многоуровневые условия фильтрации задаются при помощи групп условий. Рассмотрим установку фильтра типа a И (b ИЛИ c). В качестве примера создадим фильтр, который отображает заказы, сделанные после 9 апреля 2009 года (условие а) заказчиком КФС (условие b) или заказчиком Петров К. (условие с). Результатом фильтрации должны быть строки, отвечающие условию а и одновременно отвечающие одному из условий: b или c.

В данном случае условия b и с составляют дополнительную группу условий. Условие a и группа условий (b ИЛИ с) составляют основную группу условий.

В поле Основная группа установите тип связки И. Это поле определяет связку между условием a и группой условий (b ИЛИ c), которые необходимо включить в фильтр. Добавьте в фильтр условие a: выберите в первом раскрывающемся списке пункт Дата заказа, во втором раскрывающемся списке — условие больше чем, в поле значения укажите дату — 09.04.2009 (см. рис. 1.37).

Затем добавьте дополнительную группу условий, которые будут содержать нужные наименования заказчиков. Для этого нажмите на кнопку AltAwinFilterGroup.png слева от строки условия и в появившемся списке выберите Добавить группу (рис. 1.37).

Рис. 1.37. Иллюстрация добавления группы условий


Будет добавлена новая строка (для условия, входящего в дополнительную группу) и поле выбора типа связки (оно определяет тип связки между условиями в дополнительной группе, то есть между условиями b и c). Установите в этом поле тип связки ИЛИ. Добавьте в группу ещё одну строку и в двух полученных строках задайте условия b и c. В одной строке укажите в соответствующих полях значения Заказчик, равно и КФС, в другой строке — значения Заказчик, равно и Петров К. (рис. 1.38). Условие фильтрации установлено.

Рис. 1.38. Окно для настройки многоуровневого условия


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

Чтобы удалить условие или группу условий, нажмите на кнопку AltAwinFilterGroup.png рядом с соответствующим условием или группой и в появившемся списке выберите Удалить условие (или Удалить группу). Чтобы полностью очистить окно фильтра, нажмите на кнопку ButtonFilterAddCondition.png и в появившемся списке выберите Удалить все условия.

Создание стационарного фильтра

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

Чтобы создать стационарный фильтр, выберите в дереве папку, на которую будет наложен фильтр, и выполните одно из действий:

  • щелкните на ней правой кнопкой мыши и в открывшемся контекстном меню выберите пункт Создать фильтр;
  • нажмите на кнопку ButtonNewFilter.png Создать фильтр на контекстной панели инструментов.
Рис. 1.39. Окно создания фильтра


В появившемся окне укажите наименование фильтра и нажмите ОК. По умолчанию фильтру присваивается наименование Новый фильтр. Фильтр будет добавлен в состав выбранной папки.

Фильтры имеют неограниченную вложенность (то есть позволяют создавать внутри себя любое количество иерархических уровней фильтров).

Установка условия фильтрации

Данная функция позволяет задать условие для фильтра. Для этого нажмите на кнопку ButtonSetFilter.png Установить фильтр контекстной панели инструментов или соответствующий пункт контекстного меню. На экране появится окно настройки фильтра (см. рис. 1.33).

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

Зона действия фильтра

фильтр:зона действияВ зависимости от уровня фильтра в иерархии дерева он может обладать различными зонами действия.

Рис. 1.40. Пример иерархического расположения фильтров


В приведённой иерархии Фильтр корневой задает основную выборку. Фильтры 2-го уровня задают условия выборки из данных Фильтра корневого. Фильтр 3-го уровня задает выборку соответственно из данных Фильтра 2-го уровня и т. д. Таким образом, на фильтре высшего уровня мы всегда получим выборку не меньше, чем на фильтрах более низкого уровня.

Рассмотрим пример (см. рис. 1.41).

Рис. 1.41. Пример фильтрации по времени заказа


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

Функция «Быстрый фильтр»

Рис. 1.42. Поле быстрой фильтрации


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

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

При выполнении быстрой фильтрации имеется возможность использовать в строке поиска символы подстановки * и ?. Символ * (звёздочка) означает любое число любых символов; Символ ? (вопросительный знак) означает один любой символ.

Например, для строки поиска «пла*сер» отберутся записи, содержащие «пласт сервис плюс» и «плассер». Для строки «пла?сер» только записи, содержащие «плассер».