Введение [0
Работа добавлена на сайт samzan.net: 2015-07-05
Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Предоплата всего
от 25%
Подписываем
договор
Запросы и отчеты в MS Access.
[0.1] Введение
[0.2] Создание простого запроса с помощью Мастера запросов
[0.3] Изменение запроса с помощью Конструктора запросов
[0.4] Создание запроса на выборку с помощью Конструктора
[0.5] Создание запроса на выборку с условиями
[0.6] Запросы с параметрами
[0.7] Создание вычисляемых полей в запросах
[0.8]
[0.9] Передача результатов запроса в другие приложения
[0.10] Создание отчета с помощью Мастера отчетов
[0.11] Преобразование отчета в формат документов Word и Excel
|
Введение
Одной из основных задач создания и использования баз данных является предоставление пользователям необходимой информации на основе существующих данных. Для этих целей предназначены запросы, формы и отчеты.
Запросы используются для просмотра, анализа и изменения данных в одной или нескольких таблицах. Например, можно использовать запрос для отображения данных из одной или нескольких таблиц и отсортировать их в определенном порядке, выполнить вычисления над группой записей, осуществить выборку из таблицы по определенным условиям. Запросы могут служить источником данных для форм и отчетов Microsoft Access.
Основные отличия запросов и фильтров заключаются в следующем.
- Фильтры не позволяют в одной строке отображать данные из нескольких таблиц, т. е. объединять таблицы.
- Фильтры не дают возможности указывать поля, которые должны отображаться в результирующем наборе записей, они всегда отображают все поля базовой таблицы.
- Фильтры не могут быть сохранены как отдельный объект в окне базы данных (они сохраняются только в виде запроса).
- Фильтры не позволяют вычислять суммы, средние значения, подсчитывать количество записей и находить другие итоговые значения
Запрос в Access является объектом, который сохраняется в файле базы данных и может многократно повторяться. Запросы на выборку содержат конкретные значения дат, названий, имен и т. д. Если требуется повторить такой запрос с другими значениями в условиях отбора, его нужно открыть в режиме Конструктора, изменить условие и выполнить. Чтобы не делать многократно этих операций, можно создать запрос с параметрами.
Создание запросов интересно не только тем, что можно в виде одной таблицы представить данные из нескольких связанных таблиц и отобрать нужные записи из этих таблиц. Можно создавать столбцы в запросе, которые являются результатом вычислений над значениями других столбцов. Такие столбцы называются вычисляемыми. Это существенно расширяет возможности запросов. Простейшим примером вычисляемого поля в запросе может быть поле, которое объединяет имя и фамилию человека.
В Microsoft Access имеются возможности быстрой передачи результатов запросов в другие приложения Microsoft Office.
Одной из важнейших функций, которые обычно предоставляют СУБД, является возможность создания различных отчетов. Отчеты позволяют выбрать из базы данных требуемую пользователем информацию и оформить ее в виде документов, которые можно просмотреть и напечатать. Источником данных для отчета может быть таблица или запрос. Кроме данных, полученных из таблиц, в отчете могут отображаться вычисленные по исходным данным значения. В отчете невозможно изменить исходные данные с помощью элементов управления.
Создание простого запроса с помощью Мастера запросов
- Цель: вывести ФИО пациентов, их диагнозы и лечащих врачей.
- Открыть базу данных «База-ЛПУ», которую достраивали на предыдущем занятие.
- В окне базы данных на панели объектов выбрать ярлык «Запросы».
- В списке запросов дважды щелкнуть левой кнопкой мыши на ярлыке «Создание запроса с помощью мастера» или нажать на кнопку «Создать» в окне базы данных и в появившемся диалоговом окне «Новый запрос» выбрать «Простой запрос» и нажать на кнопку ОК (Рисунок 1)
Рисунок Окно базы данных «База_ЛПУ»
- В появившемся окне «Создание простых запросов» в поле со списком «Таблицы и запросы» выбрать таблицу или запрос, которые будут служить источником данных для создаваемого запроса (Рисунок 2):
- из таблицы «Пациенты» Фамилия, Имя, Отчество
- из таблицы «ИБ-Диагнозы» кодДиагноза, кодТипаДиагноза
- из таблицы «Врачи» Фамилия, Имя, Отчество
- Нажать «Далее» и ввести название запрос «Пациенты и их диагнозы» (Рисунок 3)
- Нажать «Готово»
- Двойным щелчком посмотреть результат запроса «Пациенты и их диагнозы» (Рисунок 4)
Рисунок Создание простых запросов
Рисунок Сохранение запроса
Рисунок Результат запроса «Пациенты и их диагнозы»
- Цель: вывести ФИО пациентов, отделения и предоставляемые услуги
Аналогично пункту 1 создать запрос «Предоставляемые услуги», причем выбрать следующие таблицы (Рисунок 5):
- из таблицы «Пациенты» Фамилия, Имя, Отчество
- из таблицы «Отделения» Наименование
- из таблицы «Услуги» Наименование
Рисунок Создание запроса «Предоставляемые услуги»
Рисунок Результат запроса «Предоставляемые услуги»
Изменение запроса с помощью Конструктора запросов
- Цель: убрать из запроса «Пациенты и их диагнозы» ФИО врачей и расположить пациентов в алфавитном порядке, а также скрыть тип диагноза и добавить режимы
- Выделить в списке существующих запросов запрос "Пациенты и их диагнозы" и нажать кнопку «Конструктор» на панели инструментов окна «База_ЛПУ».
- Чтобы сохранить этот запрос и измененный запрос (оба фаила) необходимо нажать «ФАЙЛ» - «Сохранить как», ввести новое название запроса: "Пациенты и их диагнозы_измененный". После этого можно вносить изменения.
- Чтобы произвести сортировку достаточно в открывшемся окне конструктора запроса для столбца «Фамилия» в строке «Сортировка» выбрать «по возрастанию»
- Чтобы удалить ФИО врача необходимо:
- выделить столбцы с фамилией, именем и отчеством врачей
- нажать «DELETE»
- Чтобы скрыть тип диагноза необходимо с соответствующего столбца снять галочку в строке «Вывод на экран»
- Чтобы добавить режимы необходимо
- щелкнуть правой кнопкой мыши по полю с таблицами и выбрать «Добавить таблицу»
- выбрать таблицу «ИБ-Режимы» (Рисунок 7) и нажать «Добавить»
- двойным щелчком мыши по полю «кодРежима» перенесите его в пустой столбец конструктора
Рисунок Добавление таблицы «ИБ-Режимы»
- На рисунке 8 представлен конструктор после всех изменений:
Рисунок Конструктор запроса "Пациенты и их диагнозы_измененный"
- Цель: добавить в запрос «Предоставляемые услуги» ФИО врачей и расположить пациентов в алфавитном порядке
Аналогично пункту III произвести изменения в запросе «Предоставляемые услуги»
Создание запроса на выборку с помощью Конструктора
- Цель вывести всех пациентов по отделениям
- В окне базы данных на панели объектов выбрать ярлык «Запросы».
- В списке запросов дважды щелкнуть левой кнопкой мыши на ярлыке «Создание запроса в режиме конструктора» или нажать на кнопку «Создать» в окне базы данных и в появившемся диалоговом окне «Новый запрос» выбрать «Конструктор» и нажать на кнопку ОК (Рисунок 1)
- В окне «Добавление таблицы» для построения нового запроса
- выбрать таблицу «Пациенты», нажать кнопку «Добавить»
- аналогично выбрать таблицу «ИсторииБолезни», таблицу «Палаты», таблицу «Отделения»
- после выделения двух таблиц нажать кнопку «Закрыть»
- Двойным щелчком перенесите поля «Фамилия», «Имя», «Отчество» из таблицы «Пациенты», поле «Наименование» из таблицы «Отделения».
- Сохранить данный запрос как «Список пациентов» и затем посмотреть результат запроса
Создание запроса на выборку с условиями
- Цель вывести всех пациентов, которые лежат в одном отделении, например в отделении интенсивной терапии (ОИТ)
- Открыть запрос «Список пациентов» в режиме конструктора
- Чтобы выбрать пациентов только для одного отделения, например для ОИТ, необходимо в столбце «Наименования» и в строке «Условия отбора» набрать: ОИТ (Рисунок 9)
- Открыть результат запроса и затем сохранить
Рисунок Конструктор запроса «Пациенты ОИТ»
- Цель: вывести пациентов, для которых фамилия начинается с одной из букв от «В» до «Л».
- Аналогично пункту V или I создать запрос с полями: «Фамилия», «Имя», «Отчество», «Дата рождения», «Пол» из таблицы «Пациенты»
- Произвести для фамилий сортировку в алфавитном порядке
- Сохранить запрос как «Пациенты В-Л»
- Аналогично пункту VI создать условие, используя таблицу 1
- Сохраните результат
Таблица 1
Описание
|
Пример
|
Результат
|
Точно соответствует определенному значению
|
«ОИТ»
|
Записи, в которых поле «Отделение» содержит «ОИТ»
|
Не соответствует определенному значению
|
Not «ОИТ»
|
Записи, в которых значением поля «Отделение» не является «ОИТ»
|
Начинаются с заданной строки символов
|
Like С*
|
Записи, в которых фамилии начинаются с буквы «С»
|
Не начинаются с заданной строки символов
|
Not like С*
|
Записи, в которых фамилии не начинаются с буквы «С»
|
Не содержат заданную строку
|
Not like «* синусит»
|
Записи с названиями болезней не содержит слово «синусит»
|
Содержат пустые значения
|
Is Null
|
Записи, в которых данное поле не содержит значения
|
Не содержат пустых значений
|
Is Not Null
|
Записи, в которых данное поле содержит ненулевое значения
|
При сортировке в алфавитном порядке следуют за определенным значением
|
>= «Иванов»
|
Записи пациентов, начиная с Иванова и вплоть до конца алфавита
|
Входят в определенный диапазон
|
Like «[A-Г]*»
|
Записи, в которых фамилии начинаются с одной из букв от «А» до «Г»
|
Совпадают с одним из двух значений
|
«лек1» Or «лек2»
|
Записи для «лек1» или «лек2»
|
Запросы с параметрами
- Цель: вывести пациентов, которым прописано определенное лекарство, причем при выполнении запроса оператор может выбирать название лекарственного препарата.
- Создать запрос на выборку или с помощью Мастера или в режиме Конструктора, выбрав следующие поля: «Фамилия», «Имя», «Отчество» из таблицы «Пациенты»; «Название», «Доза», «Приемов в день» из таблицы «Лекарственные препараты» (аналогично пункту I или V). Конструктор запроса приведен на рисунке 10
- Сохранить запрос как «Лекарственный препарат для пациентов»
Рисунок Конструктор запроса «Лекарственный препарат для пациентов»
- В столбце «Название» и строке «Условие отбора» набрать: [лекарственный препарат:]
- Запустить запрос, ввести в окно «Введите значение параметра»: название лекарства
Создание вычисляемых полей в запросах
- Цель в запросе «Лекарственный препарат для пациентов» рассчитать количество лекарственного препарата для всех пациентов
- Открыть конструктор запроса «Лекарственный препарат для пациентов»
- В пустом столбце в строке «Поле» нажать Shift+F2
- В появившемся окне набрать: всего: ([Дата отмены]-[Дата назначения])*[Доза, мл]*[Приёмов в день](Рисунок 11)
ВНИМАНИЕ! Проверьте правильность полей: они должны быть точно такими же как и в таблице.
- Нажать ОК
- Сохранить и запустить запрос
Рисунок Окно «Область ввода» с выражением для расчета количества дней
Передача результатов запроса в другие приложения
- Цель: открыть запросы с помощью Microsoft Word и Microsoft Excel
Способ 1:
- В окне базы данных выделить имя экспортируемого запроса «Предоставляемые услуги»
- выбрать в меню «Сервис» команду «Связи с Office» и подкоманду «Публикация в MS Word»
- Произвести форматирование таблицы так, чтобы она поместилась на странице
- Сохранить результат
Способ 2:
- В окне базы данных выделить имя экспортируемого запроса Пациенты и их диагнозы_измененный»
- Выполнить команду «Экспорт» из меню «Файл»
- В поле «Тип файла» окна «Экспорт объекта» выбрать тип файла «Формат RTF» (Rich Text Format), а в поле «Имя файла» ввести имя файла «Диагнозы» и нажать кнопку «Экспорт2»
- Открыть в MS Word файл «Диагнозы» и произвести необходимое форматирование, сохранив результат
Передача в Microsoft Excel
- Загрузите данные запроса «Пациенты и их диагнозы» в Microsoft Excel, используя команду меню «Сервис», «Связи с Office», «Анализ в MS Excel»
- Сохраните результат.
Создание отчета с помощью Мастера отчетов
- Цель создать отчет, в котором указаны все пациенты на определенном отделении (например, ОИТ)
- На панели объектов окна базы данных «База_ЛПУ» щелкнуть по ярлыку Отчеты
- Двойным щелчком на «Создание отчета с помощью мастера» запустить мастера отчетов
- В появившемся окне «Создание отчетов» выбрать запрос «Список пациентов» и переместить нужные поля в область «Выбранные поля» (Рисунок 12), нажать «Далее»
Рисунок Мастер отчетов: выбор полей
- Выбрать в следующем окне «Отделения», чтобы изменить вид отчета (Рисунок 13), нажать «Далее»
Рисунок Изменить вид отчета
- В следующем окне можно осуществить группировку данных (Рисунок 14), нажать «Далее»
- В следующем окне выбрать «Фамилия», чтобы осуществить сортировку пациентов по алфавиту, нажать «Далее» (Рисунок 15)
- В следующих окнах выбрать любой вид отчета, а также стиль, затем нажать «Готово»
Рисунок Окно для группировки
Рисунок Окно для сортировки
Рисунок Окно для выбора вида макета отчета
- Цель составить отчет по всем болезням для каждого пациента
- Запустить мастер отчетов и выбрать поля: «Фамилия», «Имя», «Отчество» из таблицы «Пациенты»; «кодДиагноза» и «кодТипаДиагноза» из таблицы «ИБ-Диагнозы»
- В окне группировки выбрать группировку по Фамилии (Рисунок 17)
Рисунок Группировка пациентов по фамилии
- Цель составить отчет об общем расходе лекарственного препарата
- Запустить мастер отчетов и запрос «Лекарственный препарат для пациентов»
- Выбрать все поля, кроме «Названия» (Рисунок 18)
Рисунок Окно выбора полей для отчета
- В окне сортировке поставить сортировку по полю «Доза, мл», а также нажать на «Итоги…» (Рисунок 19)
- В окне «Итоги», поставить галочки под «Sum» для «Приёмов в день», «всего» (Рисунок 20)
- В следующих окнах мастера выбрать вид и стиль отчета.
- Проанализировать полученный отчет
Рисунок Окно сортировки
Рисунок Окно «Итоги»
Преобразование отчета в формат документов Word и Excel
- Аналогично пункту X осуществить перенос отчета «Лекарственный препарат для пациентов» в MS Word и MS Excel
- Сохранить полученные документы
PAGE \* MERGEFORMAT 10