Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Информатика лабораторный практикум ИЭМ

.pdf
Скачиваний:
95
Добавлен:
11.03.2015
Размер:
7.77 Mб
Скачать

91

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

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

3.6.2. Создание отчета для одной записи

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

Сначала нужные поля переносятся левой кнопкой мыши из окна со списком полей в область заголовка. Это даст возможность вывода в отчет только одной записи. Можно установить дату распечатки отчета. Для этого выполняется команда Вставка/Дата и время. Далее в отчете следует заменить надписи полей, приближал его к форме печатного документа. Если отчет небольшого размера, то следует установить параметры листа, выполнив команду Файл/Парaметры страницы. На вкладке Страницы в строке Размер выберите из списка требуемый размер бумаги. Эту операцию можно производить для отчетов в режимах Конструктор и Просмотр. Затем необходимо присвоить имя отчета.

3.7. Практический пример создания банка данных

Рассмотрим этапы создания базы данных на примере фирмыпосредника, которая покупает канцелярские принадлежности, хранит их и затем распределяет по магазинам1.

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

Товары выделены в отдельную таблицу Товар, так как они участвуют и в продаже, и в поставке (табл. 6).

Также создадим таблицы (табл. 7 12), которые содержат информацию о поставщиках (Поставщик), менеджерах поставки

(Менеджер поставки) и продажи (Менеджер продажи), клиентах фирмы

1 Шевченко Н.А. Access 2003. Искусство создания базы данных / Шевченко Н.А. – М.: НТ Пресс,

2005.

92

(Клиент), а также о поставках товара на фирму (Поставка товара) и продажах (Продажа).

Таблица 6

 

 

КодТовара

 

 

 

 

 

Товар

 

 

 

 

 

 

(первичный ключ)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

Тетради

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

Карандаши цветные

 

 

 

 

 

 

 

3

 

Ручка шариковая

 

 

 

 

 

 

 

4

 

Папка

 

 

 

 

 

 

 

 

 

 

 

 

 

5

 

Скрепки

 

 

 

 

 

 

 

 

 

 

 

 

 

6

 

Карандаши автоматические

 

 

 

 

 

 

 

7

 

Тетради общие

 

 

Таблица 7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

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

 

 

Поставщик

 

 

 

 

 

 

 

(первичный ключ)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

АО Пионер

 

 

 

 

 

 

 

 

2

 

 

АО Карандаш

 

 

 

 

 

 

 

 

3

 

 

ТОО Школьник

 

 

 

 

 

 

 

 

4

 

 

АО Салют

 

 

 

Таблица 8

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Код менеджера

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

поставки

 

Фамилия

 

 

Имя

 

 

Отчество

 

 

Телефон

(первичный ключ)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

пос1

 

Волков

 

Егор

 

 

 

Ефимович

 

359-37-45

пос2

 

Лебедев

 

Кирилл

 

 

 

Васильевич

 

359-37-52

пос3

 

Архипов

 

Антон

 

 

 

Иванович

 

359-39-18

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

КодКлиента

 

 

Клиент

 

 

 

 

 

 

 

 

 

(первичный ключ)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

Магазин №71

 

 

 

 

 

 

 

 

2

 

 

 

Магазин №50

 

 

 

 

 

 

 

 

3

 

 

 

ТОО Мир

 

 

 

Таблица 10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Код менеджера

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

продажи

 

Фамилия

 

Имя

 

 

 

Отчество

 

 

Телефон

 

(первичный ключ)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

Фешина

Анна

 

 

Петровна

359-39-21

 

2

 

Богданов

Сергей

 

 

Павлович

359-37-40

 

3

 

Малютина

Тамара

 

 

Викторовна

359-39-31

 

93

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 11

 

КодПоставки

 

 

 

 

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

 

 

 

 

КодМенеджера

 

 

 

КодТовара

 

 

 

ЦенаТовара

Поставки

 

(первичный

 

 

 

(внешний

 

КоличТовара

 

 

(внешний ключ)

 

Поставки

 

(внешний

 

ключ)

 

 

 

 

ключ)

 

 

 

 

 

ключ)

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

1

 

1

 

 

120

 

3,45

 

пос1

2

 

2

 

2

 

 

300

 

12,60

 

пос2

3

 

3

 

3

 

 

150

 

7,30

 

пос3

4

 

4

 

1

 

 

50

 

21,00

 

пос3

5

 

5

 

3

 

 

250

 

3,40

 

пос2

6

 

6

 

2

 

 

500

 

4,20

 

пос3

7

 

7

 

4

 

 

400

 

12,70

 

пос1

8

 

1

 

1

 

 

100

 

3,45

 

пос1

9

 

2

 

2

 

 

250

 

12,60

 

пос2

10

 

3

 

3

 

 

300

 

7,30

 

пос3

 

 

 

 

 

 

 

 

 

 

 

 

 

Таблица 12

 

 

 

 

 

 

 

 

 

 

 

 

 

КодПродажи

 

КодТовара

КодКлиента

 

 

 

ЦенаТовара

КодМенеджера

 

(первичный

 

(внешний

 

(внешний

 

КоличТовара

 

Продажи

 

 

 

 

 

Продажи

 

 

 

ключ)

 

ключ)

 

ключ)

 

 

 

(внешний ключ)

 

 

1

 

 

1

 

1

 

100

 

3,70

 

пр1

 

 

2

 

 

2

 

2

 

150

 

13,20

 

пр2

 

 

3

 

 

3

 

3

 

70

 

7,80

 

пр3

 

 

4

 

 

4

 

3

 

25

 

22,00

 

пр2

 

 

5

 

 

5

 

3

 

100

 

3,80

 

пр1

 

 

6

 

 

6

 

1

 

300

 

4,60

 

пр1

 

 

7

 

 

7

 

2

 

100

 

13,40

 

пр3

 

 

8

 

 

1

 

1

 

20

 

3,70

 

пр1

 

 

9

 

 

2

 

3

 

300

 

13,20

 

пр3

 

 

10

 

 

3

 

2

 

340

 

7,80

 

пр2

 

 

11

 

 

4

 

2

 

100

 

22,00

 

пр2

 

 

12

 

 

5

 

1

 

200

 

3,80

 

пр3

 

 

13

 

 

6

 

1

 

400

 

4,60

 

пр1

 

 

14

 

 

7

 

2

 

100

 

13,40

 

пр1

 

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

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

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

94

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

4.Предусмотреть вывод сведений о каждом товаре (о каждом поставщике или покупателе).

5.Собрать информацию по количеству поступившего товара от каждого поставщика. Составить данные по количеству проданного товара каждому покупателю и т.д.

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

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

Для создания базы данных откроем программу. Выберем поле Создание новой базы данных. Разрабатываемую базу данных назовем Товар, укажем размещение, а затем нажмем кнопку Создать.

Таблицы будем создавать в режиме Конструктора. Рассмотрим более подробно создание табл. 6. В режиме Конструктор создадим два поля КодТовара (первичный ключ) и Товар. Тип данных укажем – Текстовый (рис. 51). Сохраним данную таблицу под именем Товар. Перейдем в режим Таблица и заполним записи.

Рис. 51. Таблица Товар

Аналогично создадим все остальные таблицы (табл. 8 12).

95

В табл. 8 и 10 имеется поле Телефон. Для удобства набора номера воспользуемся созданием Маски ввода.

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

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

Окно Конструктора содержит таблицу, в первом столбце которой перечислены поля, а во втором типы данных (форматы).

Зададим маску ввода для поля Телефон. Установите текстовый курсор в имя поля Телефон в нижнем поле Общие напротив Маски ввода и создайте шаблон в окне Создание масок ввода (рис. 52).

Рис. 52. Создание маски ввода

Щелкнем по кнопке Список, введите в поле Описание – Номер

телефона, Маска ввода – 000-00-00, Образцы данных – 222-33-56 и

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

Для облегчения работы по созданию таблиц можно использовать

Мастер подстановки.

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

В наших таблицах Поставка товара и Продажа можно вместо кода установить список выбора данных из таблиц оригиналов, например Код товара заменить его названием. Для этого снова воспользуемся мастером. Откроем таблицу Поставка в режиме Конструктор. В столбце Тип

Доступные поля
Выбранные поля

96

данных напротив имени поля КодТовара из списка выбираем пункт Мастер подстановки, появляется окно Создание подстановки. В окне точка ставится

напротив предложения Объект "столбец подстановки" будет использовать значения из таблицы или запроса, а затем нажать кнопку Далее. В этом окне

надо указать таблицу, из которой будут взяты данные вместо кодов. Для нашего примера выберем таблицу Товар, а затем нажать кнопку Далее. В этом окне производится отбор полей для замены кода. Само поле кода также следует выбрать, так как оно является связующим между двумя таблицами. В итоге код не будет выведен на экран. Отбор полей производится из окна в окно с помощью

кнопок, расположенных между окнами: кнопка переносит выбранное поле слева направо, кнопка перенос в том же направлении всех полей окна Доступные поля. Как только что-то будет перенесено в окно Выбранные поля, заработают две другие кнопки: (кнопка перенесет выбранное поле в обратном направлении, а кнопка отменит весь выбор и вернет поля в исходное состояние).

На следующем шаге устанавливаем порядок сортировки записей по возрастанию или убыванию.

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

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

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

По результатам проектирования базы данных в электронной базе данных Товары будут созданы таблицы Товар, Поставщик,

МенеджерПоставки, ПоставкаТовара, Клиент, МенеджерПродажи, Продажа.

Всего семь таблиц. Не забудьте проверить связанные поля. Они должны

97

быть одинакового типа (кроме поля Счетчик), одинакового размера и иметь отметки в индексированном поле в разделе Свойство поля.

Рис. 53. Окно контроля связанных таблиц

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

Рис. 54. Схема данных базы Товары

Рассмотрим различные создание различных запросов.

Простой запрос. Построим таблицу по продаже товара. Выполним это задание в режиме Конструктор. Нас интересует, какой товар, по какой цене и в каком количестве кому и когда был продан в нашем примере. Окно запроса представлено на рис. 55.

Рассмотрим пример создания запроса с параметрами.

Найдем поставки тетрадей. Создадим простой запрос в режиме Конструктор. После отбора таблиц и полей в том же режиме в строке Условие отбора в поле, где необходимо произвести отбор, надо указать критерии отбора. Например из таблицы ПоставкаТовара выберем условием отбора Код товара.

Этот критерий запишем в квадратных скобках в виде формулы:

[введите:Код товара].

98

Рис. 55. Окно создания запроса в режиме Конструктор

Проверим запрос или запустим его. Появится окно (рис. 56). В этом окне укажем Код товара (цифрами), например 1. Увидим на экране все записи с данными по тетрадям.

Рис. 56. Запрос с параметрами

Найдем продажи ТОО Мир по цене более 5 руб. Создадим простой

запрос в режиме Конструктор и в строке Условие отбора в столбце, где

необходимо произвести отбор, указываются критерии отбора. В поле Клиент 3 (в таблице клиент ТОО Мир), а в поле ЦенаТовараПродажа >=5.

Запрос в режиме Конструктор представлен на рис. 57.

Рис. 57. Пример запроса

99

Рассмотрим примеры создания итоговых запросов.

Создадим запрос, который произведет расчет стоимости товаров поставки. Для запроса источником данных служит таблица ПоставкаТовара, для запроса отбираются поля КодТовара,

КоличТовараПоставки, ЦенаПоставки и создается новое поле Затраты по

формуле:

Затраты: Sum([КоличТовараПоставки]*[ЦенаПоставки]).

B строке Групповая операция в поле КоличТовараПоставки установить Sum, а в поле Затраты Выражение.

На рис. 58 представлен запрос в режиме Конструктор и результат его выполнения.

Рис. 58. Окно запроса Запрос2Поставки

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

отбираются поля КодТовара, КоличПродажиТовара, ЦенаПродажиТовара и

создается новое поле Сумма по формуле:

Сумма: Sum([Продажа]![КоличТовара]*[Продажа]![ЦенаТовараПродажи])

В строке Групповая операция в поле КоличПродажиТовара установить

Sum, а в поле Сумма Выражение.

На рис. 59 представлен запрос в режиме Конструктор и результат его выполнения.

Рассмотрим создание перекрестного запроса в режиме Конструктор. Соберем информацию по количеству поступившего товара от каждого поставщика. Источником данных служат таблицы Товар,

ПоставкаТовара и Поставщик. Для запроса отбираются три поля: Товар,

КоличТовараПоставки, Поставка. На панели инструментов нажмем кнопку

100

(Тип запроса). B нижней части запроса появились разделы Групповая

операция и Перекрестная таблица.

Рис. 59. Окно запроса Запрос3Продажа

B разделе Групповая операция выберем функцию Sum напротив поля

КоличТовараПоставки. B остальных полях оставим значение Группировка.

Чтобы значения поля Товар появились в заголовке строк, в разделе

Перекрестная таблица выберем пункт Заголовки строк. А чтобы значение

поля Поставщик появилось в таблице выберем пункт Заголовки столбцов.

Для поля КоличТовараПоставки выберем параметр Значение.

На рис. 60 представлен запрос в режиме Конструктор и результат его выполнения.

Рис. 60. Пример создания перекрестного запроса

Соберем информацию по количеству товара, проданного каждому покупателю. Источником данных служат таблицы Товар, Продажа и

Клиент. Для запроса отбираются три поля: Товар, КоличПродажи, Клиент.