Формирование запросов для многотабличной базы данных

Разработка многотабличной формы отчета вывода данных

Цель работы: отработать приемы создания запросов в многотабличной базе данных. Отработать приемы и возможности вывода информации. Освоить возможности формирования и печати отчетов на основании таблиц и созданных запросов.

ТЕОРЕТИЧЕСКОЕ ВВЕДЕНИЕ

Формирование запросов для многотабличной базы данных

Для получения определенных данных пользователь может построить запрос. Результатом выполнения запроса является таблица с временным набором данных (динамический набор). Записи динамического набора могут включать поля из одной или нескольких таблиц. Запросы используются аналогично таблицам. Соответствующий динамический набор можно посмотреть в табличном представлении. На основе запроса можно построить отчет или форму. При обновлении данных в динаическом наборе возможно включение этих изменений в таблицы. Использование запросов позволяет осуществить различные формы доступа к одной и той же информации.

VFP обеспечивает корректную связь между таблицами базы данных за счет ключей (значений эквивалентных полей).

При включении в запрос связанных таблиц базы данных в окне «Запрос-выборка» между ними автоматически возникает соединительная линия.

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

Разработка многотабличной формы отчета вывода данных

Для создания отчета, включающего информацию из разных таблиц, используют предварительно сформированный запрос для многотаблич­ной базы данных (например, ПЛАН ПОСТАВКИ).

ПРАКТИКУМ

Задание 1.На основании таблиц: СВЕДЕНИЯ О ПОСТАВЩИКАХ, ПОСТАВЩИКИ, ЗАКАЗЧИКИсоздать запрос о поставщиках заказчика База КПС.

Рекомендации по выполнению:

Открыть ранее созданную базу данных Postavki.dbc.

Открыть окно нового запроса: в окне База данных: Postavki.dbc

открыть вкладку Запрос(см. лабораторную работу № ).

 

В режиме Конструктор:

включить в запрос все необходимые поля;

в строку Условие отбора поля Имя заказчикапоместить выражение «База КПС»;

выполнить запрос.

Сохранить запрос под именем Заказчики_БазаКПС_ПОСТАВЩИКИ.

Сохранить запрос в виде таблицы и создать отчет.

Задание 2.На основании таблиц ПОСТАВЩИКИ, ТОВАРЫ

создать запрос о сертифицированных товарах конкретного поставщика (например, Мясокомбинат, Хлебозавод и др.).

Рекомендации по выполнению:

Открыть ранее созданную базу данных Postavki.dbc.

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

В строку Условие отбора поля Имя поставщикапоместить выражение Хлебозавод.

В строку Условие отбора поля Сертификатпоместить выражение Да. Выполнить запрос.

Сохранить запрос под именем Сертифицированный_товар.

Сохранить запрос в виде таблицы и создать отчет.

 

Задание 3.Создать новую таблицу ПЛАН ПОСТАВКИ,заполнить ее исходными данными.

Рекомендации по выполнению:

См. ранее выполненные лабораторные работы.

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

Заполнить таблицу ПЛАН ПОСТАВКИисходными данными, представленными в таблице 8.2.

Таблица 8.2.

 

Дата договора Код поставщика Код заказчика Код товара Количество Сумма по договору, р.
12.04.99
09.07.99 13 500
05.01.00 15 000
15 01.00 2 000
03.02.99 1 800
06.01.00 3 500

 

Сохранить под именем ПЛАН ПОСТАВКИ.

Сохранить таблицу в виде отчета.

Задание 4.На основании таблиц ТОВАРи ПЛАН ПОСТАВКИ

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

Рекомендации по выполнению:

См. лабораторные работы № .

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

В имени поля, в котором необходимо вывести сумму поставки ввести выражение: Сумма: [Цена] * [Количество].

Выполнить запрос.

Сохранить запрос под именем Сумма товара по плану.

Сохранить запрос в виде таблицы и создать отчет.

Задание 5. Самостоятельно создать и заполнить исходными данными новую таблицу - ФАКТИЧЕСКИ ПОСТАВЛЕНО.

Рекомендации по выполнению:

Открыть вкладку Таблица

2.В режиме Конструкторописать поля:

Код поставщика

Код заказчика

Код товара

Дата поставки

Сумма факт поставки.

3. Заполнить таблицу данными.

 

Код поставщика Код заказчика Код товара Дата поставки Сумма факт поставки, р.
30.07.99
15.01.00
29.07.99 18 000
25.12.99
30.12.99

Задание 6.На основании таблиц ТОВАРи ФАКТИЧЕСКИ ПОСТАВЛЕНО,создать запрос с вычисляемым полем, подсчитывающим, на какую сумму фактически поставлен каждый товар.

 

Задание 7. Сформировать отчет на основании запроса ПЛАН ПОСТАВКИ.

 

Рекомендации по выполнению:

Создание отчета - лабораторная работа № 1.

Для вывода данных ПЛАН ПОСТАВКИсоздать отчет с помощью Мастера.

Присвоить имя отчету - ПЛАН ПОСТАВКИ ТОВАРОВ за 1998 год.

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

Сохранить отчет под именем ПЛАН ПОСТАВКИ.

Задание 8.Самостоятельно сформировать отчет Задолженность на основании таблиц ПЛАН ПОСТАВКИи ФАКТИЧЕСКИ ПОСТАВЛЕНО.

Рекомендации по выполнению:

Создать запрос Задолженность(отклонение плана поставки от фактически поставлено).

Сформировать и отредактировать отчет.

Сохранить запрос.

Сохранить отчет.

Задание 9.Самостоятельно сформировать отчет Анализ выполнения плана на основании таблиц ПЛАН ПОСТАВКИи ФАКТИЧЕСКИ ПОСТАВЛЕНО.

 

Рекомендации по выполнению:

Создать запрос Выполнение плана(% выполнения плана поставки). Сформировать и отредактировать отчет.

Сохранить запрос.

Сохранить отчет.