46
Рисунок 33 – Перекрестный запрос
Самостоятельно создайте запрос.
1. Запрос – Статистика взысканий. Должен выводить информацию о количестве и видах взысканий, наложенных на сотрудников подразделения. Для создания этого запроса создайте промежуточный запрос ФИО и взыскания, содержащий необходимые для построения перекрестного запроса поля.
Задание 23. Поиск повторяющихся записей Это средство позволяет найти количество повторений значений в поле.
Запрос – Несколько взысканий
Пусть требуется вывести перечень сотрудников, на которых взыскания налагались неоднократно. Так как сведения о сотруднике и сведения о взысканиях находятся в разных таблицах, то сначала необходимо создать запрос, содержащий эти поля.
1.Создайте промежуточный запрос Сотрудники со взысканиями, содержащий необходимые поля.
1.1.Выполните команду Конструктор запросов на вкладке Создание.
1.2.Добавьте в запрос таблицы Список сотрудников и Журнал учета взысканий.
1.3.Добавьте в запрос поля Фамилия, Имя, Отчество, Должность и Специальное звание, для идентификации сотрудника.
1.4.Добавьте в запрос поле Код взыскания в качестве дополнительного поля.
1.5.Сохраните запрос под именем Сотрудники со взысканиями.
2.Создайте запрос на поиск повторяющихся записей.
2.1.Выполните команду Мастер запросов на вкладке Создание.
2.2.В открывшемся диалоговом окне выберите Повторяющиеся записи и нажмите кнопку ОК.
2.3.Выберите запрос Сотрудники со взысканиями и нажмите кнопку Далее.
2.4.В качестве полей, содержащих повторяющиеся значения, укажите поля Фамилия, Имя, Отчество, Должность и Специальное звание. Нажмите кнопку Далее.
47
2.5.Дополнительные поля для вывода не нужны, поэтому этот шаг можно пропустить. Щелкните кнопку Далее.
2.6.Введите имя запроса Несколько взысканий и нажмите кнопку
Готово.
2.7.Просмотрите результаты запроса и сравните их с образцом (Рисунок
34).
3.Измените отображаемые названия полей на Фамилия, Имя, От-
чество, Должность и Специальное звание и Количество взысканий.
Рисунок 34 – Поиск повторений
Самостоятельно создайте следующие запросы (вспомогательные запросы разработайте самостоятельно).
1.Запрос – Несколько поощрений в одном приказе. Дол-
жен содержать сведения о приказах (номер, дату приказа, сведения о лице, подписавшем приказ), которыми поощрялись несколько сотрудников.
2.Запрос – Несколько поощрений в позапрошлом году.
Должен содержать список сотрудников, к которым несколько раз применялись меры поощрения в позапрошлом году.
Задание 24. Поиск записей без подчиненных Это средство предназначено для поиска в главной таблице записей, ко-
торым нет соответствия в подчиненной таблице. Для корректной работы необходимо наличие связи между таблицами.
Запрос – Не применявшиеся поощрения.
Предположим, что требуется получить список поощрений, которые не применялись к сотрудникам. Этот запрос можно сформулировать следующим способом: каким записям основной таблицы Виды поощрений не соответствует ни одной записи в подчиненной таблице Журнал учета по-
ощрений?
1.Выполните команду Мастер запросов на вкладке Создание.
2.В открывшемся диалоговом окне выберите пункт Записи без подчиненных и нажмите ОК.
3.Выберите главную таблицу (Виды поощрений) и нажмите кнопку Далее.
4. Выберите подчиненную таблицу (Журнал учета поощрений)
инажмите кнопку Далее.
5.Выделив в перечне полей таблицы Виды поощрений поле Код
ив перечне полей таблицы Журнал учета поощрений поле Код поощ-
48
рения, установите между ними соответствие с помощью кнопки
. Нажмите кнопку Далее.
6.В качестве полей для отображения, выберите поле Вид поощрения. Нажмите кнопку Далее.
7.Введите имя запроса Не применявшиеся поощрения и
нажмите кнопку Готово.
8.Сравните результат выполнения с образцом (Рисунок 35)
Рисунок 35 – Запрос Записи без подчиненных
Самостоятельно создайте следующий запрос
1. Запрос – Не имеют поощрений. Должен содержать список сотрудников, которые не имеют поощрений за рассматриваемый период времени.
Проверьте наличие всех запросов по списку и соответствие результатов их выполнения образцу (Приложение 1).
−Поощрения руководящего состава.
−Выговоры и строгие выговоры в позапрошлом году.
−Поощрения среднего начальствующего состава.
− Применение вида взыскания (проверить на замечании).
−Список применявшихся взысканий.
−Количество поощрений.
−Количество взысканий в приказах.
−Статистика взысканий.
−Несколько поощрений в одном приказе.
−Несколько поощрений в позапрошлом году.
−Не имеют поощрений.
49
Часть 4. Отчеты
Задание 25. Создание отчетов
Отчеты в Access предназначены для вывода на печать информации из запросов и таблиц. Если требуется вывести информацию из нескольких таблиц, то сначала необходимо создать простой запрос на выборку данных из этих таблиц.
Основными средствами создания отчетов являются Конструктор и Ма-
стер.
Конструктор отчетов – это наиболее гибкое средство создание отчетов, позволяющее создать отчет любого уровня сложности. Использование этого средства для первоначального создания типовых отчетов нерационально, в большинстве случаев Конструктор используется для редактирования уже созданных отчетов.
Мастер отчетов позволяет создавать отчеты на основе готовых и наиболее востребованных образцов. В большинстве случаев шаблонов Мастера достаточно для подготовки пользовательского отчета.
Отчет – Журнал учета взысканий
Вернемся к первоначальной задаче, поставленной в задании 2. Создадим отчет, реализующий журнал учета взысканий. При этом следует учесть, что поля этого журнала при проектировании базы данных были разнесены на четыре таблицы, поэтому перед началом создания отчета необходимо подготовить запрос на выборку данных из этих четырех таблиц с учетом того, что структуре журнала учета взысканий больше соответствует запрос Список сотрудников (объединенные ФИО), нежели таблица Список сотрудников.
1. Создайте простой запрос Журнал учета взысканий (запрос).
1.1.Выполните команду Мастер запросов на вкладке Создание.
1.2.В списке выберите Простой запрос и нажмите кнопку ОК.
1.3.В списке Таблицы и запросы выберите запрос Список сотрудников (объединенные ФИО).
1.4.Добавьте в запрос поля Выражение 1, Должность и Специаль-
ное звание из этого запроса.
1.5.Выберите в списке таблицу Виды взысканий.
1.6.Добавьте в запрос поле Вид взыскания.
1.7.Выберите в списке таблицу Журнал учета взысканий.
1.8.Добавьте в запрос поле Причина.
1.9.Выберите в списке таблицу Приказы о взысканиях.
1.10.Добавьте в запрос поля Кем наложено, Номер приказа, Дата приказа.
1.11.Выберите в списке таблицу Журнал учета взысканий.
1.12.Добавьте в запрос поле Отметка о снятии.
1.13.Нажмите кнопку Далее.
50
1.14.Выберите в качестве вида отчета подробный. Нажмите кнопку Да-
лее.
1.15.Присвойте запросу имя Журнал учета взысканий (запрос) и
нажмите кнопку Готово.
2. С помощью Мастера отчетов создайте отчет Журнал учета взысканий.
2.1.Выполните команду Мастер отчетов на вкладке Создание.
2.2.В списке Таблицы и запросы выберите запрос Журнал учета взысканий (запрос) и добавьте в отчет все поля запроса. Нажмите кнопку Далее.
2.3.Выберите вид представления данных на основе таблицы Журнал учета взысканий (группировка в первую очередь будет осуществляться по полям этой таблицы). Нажмите кнопку Далее.
2.4.Добавьте уровень группировки по полю Дата приказа.
2.5.С помощью кнопки
установите тип группировки по месяцам. Нажмите кнопку Далее.
2.6.Добавьте уровни сортировки данных в группе по возрастанию даты и по возрастанию в поле Выражение 1. Нажмите кнопку Далее.
2.7.Выберите макет Блок и альбомную ориентацию страницы. Устано-
вите флажок Настроить ширину полей для размещения на одной странице. Нажмите кнопку Далее.
2.8.Присвойте отчету имя Журнал учета взысканий и нажмите кнопку Готово. Отчет откроется для просмотра (Рисунок 36).
Рисунок 36 – Вид отчета после создания
Задание 26. Редактирование макета отчета Построенный отчет обладает существенным количеством недостатков
впредставлении: данные не вмещаются в отведенные им поля, последовательность полей не соответствует образцу в задании 2. Эти погрешности автоматического построения можно отредактировать вручную, воспользовавшись встроенными средствами Access.
Для перехода в режимы редактирования отчета служит список Режим
вгруппе Режимы на вкладке Главная.