Управление учебным процессом ВУЗа   (19.11.2017)
Фильтрация данных в таблицах

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

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

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

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

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

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

Отображение данных в отфильтрованном виде

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

Пример фильтра по нескольким годам набора:

Пример множественного фильтра

На рисунке установлен фильтр по годам набора. В таблице отображены объекты с 2006 и 2009 годами набора.

Для фильтрации данных по более сложному условию можно воспользоваться вторым способом - записью условия фильтрации в строке фильтра. Условие фильтрации записывается по следующим правилам:

  1. Строка разделяется на части посредством системного разделителя (системный разделитель устанавливается в настройках операционной системы Windows). Обычно - точка с запятой, ";". Каждая часть строки интерпретируется самостоятельно, и эти части объединяются логическим "ИЛИ"  
  2. Строка разделяется на части посредством разделителя "&". Каждая часть строки интерпретируется самостоятельно, и эти части объединяются логическим "И"  
  3. При интерпретации каждой части проверяются следующие условия:
    Часть строки Правило отбора объектов
    *
    Будут отобраны только те объекты, у которых значение в колонке не является пустым (установлено).
    !*
    Будут отобраны только те объекты, у которых значение в колонке является пустым (не установлено).
    начинается с символов '<=', '<', '>=', '>'
    Будут отобраны только те объекты, у которых значение в колонке удовлетворяет условию.
    включает в себя символы '*' и/или '?'
    Будут отобраны только те объекты, у которых значение в колонке удовлетворяет шаблону, в котором знак '?' соответствует одному любому символу, а знак '*' - любому количеству любых символов.
    начинается с символа '!'
    Будут отобраны только те объекты, у которых значение в колонке не удовлетворяет условию, переданному оставшейся частью строки (знак '!' означает отрицание).
    представляет собой строку в апострофах (одиночных кавычках)
    Содержание строки не анализируется по приведенным выше правилам. Будут отобраны только те объекты, у которых значение данного свойства соответствует строке, заключенной в апострофы.
    любая другая строка
    Будут отобраны только те объекты, у которых значение данного свойства соответствует введенной строке (строки чувствительны к регистру).
  4. Условия, указанные в разных колонках, объединяются логическим "И"

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

Фильтрация данных по сложному условию

В таблице данных "Участники олимпиад школьников" на рисунке отобраны только те записи, для которых верно следующее: год набора - 2008; только мужского пола; фамилии участников начинаются с "Б"; при этом регистрационные номера участников больше "9" и меньше "27".

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

  • выбрать в строке фильтра соответствующей колонки из выпадающего списка пункт "(Все)"
  • удалить все символы, записанные в строке фильтра соответствующей колонки и нажать клавишу Enter

Для снятия всех фильтров со всех колонок нужно воспользоваться действием контекстного меню "Колонка" - "Очистить фильтры".