Отчет создадим в режиме Конструктора. Для начала добавим Заголовок отчета, который будет использоваться в качестве титульной страницы: База данных: «ЖЕЛЕЗНЫЕ ДОРОГИ РОССИИ». Затем откроем запрос Все данные, возьмем из него поля: Время отправления нач пункт, Время прибытия кон пункт, Время отправления кон пункт, Время прибытия нач пункт, Время в пути, Категория поезда, Цена билета (купе), Льгота студентам (купе), Льгота пенсионерам (купе) Цена билета (плац), Льгота студентам (плац), Льгота пенсионерам (плац), Цена билета (люкс) и переместим в область данных.
В данной таблице будет два уровня группировки. Для их создания находим на панели инструментов кнопку Сортировка и группировка. В поле/выражение ставим полеНачальный пункт и Конечный пункт В свойствах изменяем заголовок группы – да. В появившиеся заголовки группы для «Начальный пункт» перетаскиваем поле Начальный пункт, для «Конечный пункт» - Конечный пункт и Остановки. Затем нажимаем на Вид и сохраняем отчет под именем Отчет – РЖД (Рис. 10, 11).
Рис. 10. Отчет в режиме конструктора
Рис. 11. Внешний вид созданного отчета
9. Макросы Access. Довольно часто макросы используют для поиска определенных записей в базе. Эти макросы используют две макрокоманды: КЭлементуУправления и НайтиЗапись. Можно добавить к созданной форме подпрограмму поиска расписания поездов по начальному и конечному пункту (т.е. если выбрать из списка какой-либо пункт, то автоматически выводятся расписание этого поезда) (Рис. 12).
Рис. 12. Внешний вид готовой формы
Для этого создадим свободное поле со списком, его имя «Поиск по нач пункту». Предварительно следует создать запрос, содержащий поле Начальный пункт и указать его в качестве источника строк поля со списком (Поиск по нач пункту). Поле со списком назовем Поиск по нач пункту (Рис. 13). Аналогично создадим поле со списком «Поиск по кон пункту» (Рис. 14).
Рис. 13 Рис. 14
Создав поле со списком можно приступать к созданию макроса для поиска расписания отдельного поезда по полю Начальный и Конечный пункт. Начнем создание нового макроса, щелкнув на кнопке Создать во вкладке Макросы окна базы данных. Находясь в окне конструктора макросов, выполним следующие действия:
a) введем КЭлементуУправления в первой пустой ячейке столбца Макрокоманда;
б) введем [Начальный пункт] в ячейку аргумента Элемент;
в) введем НайтиЗапись в следующей пустой ячейке столбца Макрокоманда;
г) введем =[Поиск по нач пункту] в строке аргумента Образец поиска;
д) сохраним макрос под названием Поиск по Н пункту (рис. 15).
Рис. 15 Рис. 16
Этот макрос нужно присоединить к свойству После обновления поля со списком. Для этого выполним следующие действия:
a) перейдем к свойству После обновления элемента управления Поиск по нач пункту;
б) введем Поиск по Н пункту в соответствующую ячейку.
Аналогично для макроса Поиск по К пункту (Рис. 16).
2. ТЕРЕТИЧЕСКИЙ ВОПРОС
Что такое запрос, для чего он используется?
При выполнении запроса программа «отбирает» данные, соответствующие заданным условиям, и предоставляет их в распоряжение пользователя в качестве результата запроса.
Запросы особенно цены тем, что в отличие от фильтров могу выполнять не только информационно – справочную функцию, отображая необходимые данные из таблиц, но и производить некоторый анализ данных. Например, можно построить запрос, который будет отображать сведения о самых ранних поездах. Кроме того, запросы готовы взять на себя сложные операции манипулирования данными: так называемые запросы на изменение позволяют, например, удалить сразу несколько записей, удовлетворяющих определенному условию, создать новую таблицу по результатам запроса или скопировать данные из одной таблицы в другую. Однако список преимуществ запросов этим далеко не ограничивается.
1. Запросы позволяют собирать воедино информацию из одной или нескольких таблиц, учитывая связи, установленные между таблицами.
Один к одному. Каждой записи главной таблицы соответствует одна связанная запись подчиненной таблицы. Такой тип отношения используется редко, так как все данные фактически могу быть помещены в одну таблицу. Он полезен, когда целесообразно разделить одну громоздкую таблицу, содержащую множество полей, на две.
Один ко многим. Одна запись главной таблицы связана с множеством записей подчиненной таблице.
Многие ко многим. Каждой записи главной таблицы соответствует много записей подчиненной таблицы и наоборот. Через связующую таблицу, содержащую ключ первой и второй таблицы.
2. Можно указать какая часть результирующих записей будет отображена.
3. В запросе можно задать выполнение вычислений, основываясь на значениях полей таблицы.
4. Существующий запрос можно в дальнейшем использовать в качестве основы при создании нового запроса, который вы можете изменить и сохранить под другим именем.
Результат работы запроса – группа записей, которые удовлетворяют заданному критерию запроса. Совокупность этих записей называется динамическим набором записей и отображается в виде таблицы.
В Access можно создать различные виды запросов:
1. Наиболее часто используемым типом запроса является запрос на выборку, осуществляет выборку данных, соответствующих указанному условию отбора, из одной или нескольких таблиц.
2. Программа позволяет создать четыре различных типа запроса на изменение:
- запрос на создание таблицы позволяет сохранить результирующий набор записей в качестве новой таблицы;
- запрос на обновление записей используется для изменения данных в соответствии с заданным выражением.
- запрос на добавление добавляет записи, соответствующие заданному условию, в другую таблицу.
- запрос на удаление удаляет записи, соответствующие заданному условию.
РАЗДЕЛ 2
ИНСТРУКЦИЯ ПОЛЬЗОВАТЕЛЯ
Данная база данных разработана по расписанию поездов. Она обеспечивает сведения об отдельно взятом поезде и параметрах его передвижения. В ней находятся данные 50 различных поездов.
Для начала работы с данной базой данных «Расписание поездов» необходимо открыть ее. После открытия появляется окно «Расписание поездов: база данных». Справа в Объектах выбираем Таблицы. Их четыре: Время, Движение поездов, Цена билета и Льготы. Если необходимо что-то изменить (например, Начальный или Конечный пункт) или добавить новый маршрут в таблицу Движение поезда, то необходимо ее открыть: щелкнув мышкой два раза или нажать на Открыть на панели инструментов в данном окне. Появляется таблица: для изменения данных встаем в поле, где нужно их изменить, и печатаем нужную информацию. Если же необходимо добавить новый маршрут поезда, то встаем в нижнюю строку в поле Код поезда и вводим данные (необходимо заполнение всех полей). Т.к. таблица Движение поезда связана с таблицей Время, то можно, не открывая таблицу Время, изменить данные в ней. Для этого нажимаем на плюсик (+), который располагается около каждой строчки в таблице слева. Выдвигается таблица Время. Также можно изменять данные в таблице Цена билета и Льготы, как написано для таблицы Движение поездов.
Также можно удалить запись:
Для этого открываем форму, ставим на запись, которую нам необходимо удалить. Нажимаем на кнопку Удалить запись, затем подтверждаем удаление записи (Рис.17).
Рис. 17
Существует еще один способ удаления. Заходим в таблицу или запрос ставим курсор на строку, которую необходимо удалить нажимаем правой кнопкой мыши и из списка команд выбираем удалить запись (Рис. 18) или
Рис. 18
нажимаем на панели инструментов кнопку Удалить запись (можно также на клавиатуре нажать клавишу Delete).
Просмотреть данные можно с помощью запросов. Например, запрос – Все данные, чтобы его открыть нужно в окне «Расписание поездов: база данных» справа в Объектах выбрать Запросы. Появятся четыре запроса: Все данные, поиск по кон пункту, поиск по нач пункту, поиск по начальному и конечному пункту, выбираем запрос Все данные и открываем его. Здесь же можно изменить данные, удалить или добавить расписание нового поезда, но для удобства это лучше делать в таблицах (об этом рассказано выше).
Рассмотрим формы. Для открытия форм. Выбираем в окне «Расписание поездов: база данных» справа в Объектах выбираем Формы, появилось четыре формы: Вся база данных и Расписание поездов, Время подчиненная, Движение главная. Выбираем Расписание поездов и заходим в нее. В этой форме можно просмотреть расписание всех поездов. Для того чтобы просмотреть данные нажимаем на кнопку Следующая запись[
] или Предыдущая запись[ ], чтобы вернуться к первой записи нажимаем кнопку Первая запись[ ], к последней Последняя запись [ ], для добавления записи кнопка Добавить запись [ ], для удаления записи кнопка Удалить запись [ ] для выхода из формы есть кнопка Закрыть форму [ ]. Если необходимо найти расписание конкретного маршруту, то для этого сделан Поиск по Начальному и конечному пункту. Для этого находим поле Начальный пункт и Конечный пункт, нажимаем на стрелочку[ ]. Высвечивается список начальных и конечных пунктов, выбираем из него нужные, нажимаем, и выдается расписание этого поезда. Также в форме можно изменять данные. Для этого находим расписание поезда, у которого неверно записаны данные, и, встав в нужное поле, удаляем старые данные и вписываем новые. После этого автоматически данные изменятся в таблице, в которой данное поле находится.