Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Базы данных_методичка.docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
1.49 Mб
Скачать

Лабораторная работа № 8,9

Тема: Поиск и представление информации.

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

Задание:

  1. Изучить материал лабораторной работы

  2. Отсортировать таблицу Сотрудники по полю Фамилия по алфавиту.

  3. Применить к таблице Клиенты фильтры выделяющие всех

а) бухгалтеров

б) ответственных

в) бухгалтеров и ответственных

  1. Используя учебную базу данных, научиться применять следующие виды фильтров: фильтр по выделенному, фильтр с помощью заполнения формы, расширенный фильтр.

Общие сведения:

Фильтр: ограничение количества записей в представлении

Скрыть все

Чтобы найти одну или несколько указанных записей в форме или напечатать записи из отчета, таблицы или запроса, можно использовать фильтр. С его помощью можно отображать только нужные записи, не изменяя макет базового запроса, формы или отчета. Например, чтобы искать в 100-страничном списке товаров позиции, цена которых находится в диапазоне от 1 500 до 30 000 р., или не создавать новый более специфичный отчет, содержащий только эти позиции, можно применить к данным фильтр, а отобразить только те записи таблицы товаров, у которых значение поля «Цена» лежит в пределах 1 500 — 30 000 р.

Общие сведения о фильтрах

Фильтр позволяет изменить отображаемые в представлении данные формы или отчета, не затрагивая макет формы или отчета. Можно рассматривать фильтр как условие или правило, задаваемое для поля. Условие определяет, какие значения поля требуется отобразить. После применения фильтра в представление включаются только те записи, которые содержат указанные значения. Остальные записи будут скрыты до тех пор, пока фильтр не будет удален.

 Примечание.   Для столбцов и элементов управления, присоединенных к выражениям, фильтрация не поддерживается.

В применении и удалении фильтров нет ничего сложного. В Microsoft Office Access 2007 обычные фильтры встроены в каждое представление, служащее для отображения данных, в том числе — в режим макета. Конкретные команды для фильтра зависят от типа и значений поля.

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

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

 Фильтры «Все даты за период» не учитывают части значения даты, соответствующие дню и году.

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

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

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

При использовании нового фильтра для уже отфильтрованного столбца сначала удаляется старый фильтр. Например, если поле «ДатаРождения» было уже отфильтровано, чтобы показать дни рождения в апреле, после применения аналогичного фильтра для февраля будут отображены только дни рождения, попадающие на февраль. В Microsoft Access перед применением второго фильтра будет автоматически удален фильтр, возвращающий апрельские дни рождения.

Хотя к любому отдельному полю в данный момент можно применить только один фильтр, для каждого поля в представлении можно определить различные фильтры. Например, чтобы увидеть имена контактов, живущих в РФ, дни рождения которых приходятся на апрель, можно отфильтровать таблицу контактов по полю «Страна» и по полю «ДатаРождения».

Если фильтры применяются к нескольким полям в одном представлении для объединения фильтров используется оператор AND, например:

Страна = РФ AND ДатаРождения (месяц) = апрель

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

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

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

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

Параметры свойства Фильтр при загрузке (FilterOnLoad) определяют, будут ли действовать параметры фильтра при следующем открытии объекта. Если свойство таблицы, запроса, формы или отчета Фильтр при загрузке (FilterOnLoad) имеет значение Да, то при повторном открытии объекта будут применены параметры фильтра, использованного последним.

 Примечание.   Свойство Фильтр при загрузке (FilterOnLoad) применяется только при загрузке объекта. Если задать это свойство для объекта в режиме конструктора и затем перейти в другой режим, новое значение свойства применено не будет. Чтобы изменения в свойстве Фильтр при загрузке (FilterOnLoad) вступили в силу, необходимо закрыть и снова открыть объект.

Типы фильтров

  • Обычные фильтры

  • Фильтр по выделенному

  • Фильтр по форме (обычный)

  • Расширенные фильтры

Для каждого типа данных в Office Access 2007 предусмотрено несколько готовых фильтров. Они доступны в виде команд меню в режимах таблицы, формы, отчета и макета. Таблица или форма могут быть отфильтрованы не только с помощью этих фильтров, но и путем заполнения формы (фильтр по форме).

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

Далее дано краткое описание типов фильтров, доступных в Microsoft Access.

Обычные фильтры

Некоторые часто применяемые фильтры доступны в виде команд контекстных меню; тем самым нет необходимости тратить время на создание правильных условий фильтра. Для доступа к этим командам щелкните правой кнопкой мыши поле, к которому нужно применить фильтр.

 Примечание.   При выборе нескольких столбцов или элементов управления параметры фильтра будут недоступны. Чтобы отфильтровать представление по нескольким столбцам или элементам управления, необходимо либо выбрать и отфильтровать каждый из них отдельно, либо воспользоваться параметром расширенного фильтра. Дополнительные сведения см. далее в разделах Фильтр по форме (обычный) и Расширенные фильтры.

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

Например, чтобы просмотреть доступные фильтры для поля «ДатаРождения», выполните следующие действия.

На вкладке Начальная страница в группе Сортировка и фильтрация щелкните Фильтр.

Обычные фильтры по дате

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

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

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

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

 Примечание.   После фильтрации в списке значений для каждого поля содержатся только отображаемые в представлении уникальные значения. Например, если в поле «Страна» отображаются только отфильтрованные записи, которые содержат значение «РФ», в списке значений для поля «Полное имя» будут показаны только имена лиц, проживающих в РФ. Чтобы отобразить в списке и другие значения, следует удалить все фильтры или некоторые из них.

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

Длинный и короткий списки обычных фильтров по дате

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

Фильтр по выделенному

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

Например, если в данный момент в поле «ДатаРождения» выделено значение 24.02.1967, на вкладке Главная в группе Сортировка и фильтр нажмите кнопку Выбор, чтобы отобразить команды фильтра по выделенному.

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

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

  1. Фильтр по началу значения поля...

  2. ...по середине значения поля...

  3. ... или по концу значения поля.

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

Команда Выбор недоступна для вложений.

Фильтр по форме (обычный)

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

 Примечание.   Используя фильтр по форме, нельзя задать значения полей для полей, одновременно допускающих несколько значений, а также для полей с типом данных «Поле MEMO», «Гиперссылка», «Логический» или «Поле объекта OLE», но можно задать значения для других полей в наборе записей.

Например, чтобы найти все записи клиентов с должностью Владелец, проживающих в Мурманске или в Ярославле, откройте форму «Клиенты» и на вкладке Главная в группе Сортировка и фильтр нажмите кнопку Дополнительно, а затем выберите команду Фильтр по форме.

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

Переключить фильтр:  

На вкладке Начальная страница в группе Сортировка и фильтрация щелкните Переключить фильтр.

Будут показаны только записи, соответствующие введенным значениям.

Расширенные фильтры

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

Этим средством рекомендуется пользоваться только при наличии опыта в написании выражений. Выражения аналогичны формулам, записанным в приложении Microsoft Excel, и условиям, сформулированным при создании запроса.

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

  • На вкладке Начальная страница в группе Сортировка и фильтрация щелкните Дополнительно, а затем выберите команду Расширенная фильтрация/сортировка в контекстном меню.

Добавьте поля в сетку конструктора и укажите условие отбора в строке Условия.

При нажатии кнопки Фильтр в группе Сортировка и фильтр на вкладкеГлавная приложение Access отображает выбранные записи.

В уже рассмотренном примере, чтобы ограничить результаты только теми, кто проживает в РФ, следует переключиться назад на вкладку объекта Фильтр, добавить в сетку поле «Страна» и указать условие.

Применение фильтра

  • Применение обычного фильтра

  • Применение фильтра по выделенному

  • Применение фильтра с помощью заполнения формы

  • Применение расширенного фильтра

Применение обычного фильтра

  1. Откройте таблицу, запрос, форму или отчет в режиме таблицы, формы, отчета или макета.

  2. Убедитесь, что представление еще не отфильтровано. В строке выбора записи проверьте наличие значка Без фильтра или затененного значка Нет фильтра.

 Совет.   Чтобы снять все фильтры для определенного объекта, на вкладке Главная в группе Сортировка и фильтр нажмите кнопку Дополнительно и выберите команду Очистить все фильтры.

  1. Щелкните в любом месте столбца или элемента управления, соответствующего первому полю, к которому следует применить фильтр.

  2. На вкладке Начальная страница в группе Сортировка и фильтрация щелкните Фильтр.

  3. Выполните одно из следующих действий.

    • Чтобы применить обычный фильтр, выделите пункт Текстовые (Числовые, Даты) фильтры и выберите нужный фильтр. Для фильтров Равно и Между потребуется ввести необходимые значения.

 Совет.   Некоторые знаки, например *, % и ?, в текстовом поле фильтра имеют особое значение. Так, звездочка (*) представляет строку знаков, поэтому строка «а*» соответствует любой строке, начинающейся с буквы а, а не только строке а*. Чтобы не учитывать особое значение знака, необходимо заключить его в квадратные скобки [], например «a[*]». В базах данных, использующих стандарт ANSI-89, к особым относятся знаки *, ?, [, ], !, - и #. В базах данных, использующих стандарт ANSI-92, особыми считаются знаки %, _, [, ], ^ и -. В приложении Access можно использовать любой из этих стандартов, но не оба стандарта одновременно (например, нельзя использовать в выражении сочетание ?a*).

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

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

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