Разработка базы данных в среде Microsoft Access

Нижегородский Государственный

Политехнический Университет

Нижегородский Вечерний Факультет

Зачётная работа по курсу

"Информационные технологии"

Разработка базы данных в среде

Microsoft Access

Выполнили: Греков В.В.

Певченко Г.П.

Группа ИКУ – 99

Проверил: Штанюк А.А.

Кстово

2002

    Задание

Спроектировать базу данных для хранения и обработки данных о товарообороте овощной базы «Галина».

    Таблицы и схема данных

Таблица - Владелец товара

Код владельца Наименование Город Улица Дом Телефон

1 ЧП"Суслов" Москва Северная 56 455655

2 ЧП"Иванов" Н.Новгород Гагарина 52 353632

3 ЧП"Петров" Кстово Победы 1 32658

4 ЧП"Сидоров" Н.Новгород Бекетова 41 353231

5 ЧП"Петренко" Петербург Раздольная 66 665544

6 ЧП"Геленко" Кстово Заводская 3 53537

7 ЧП"Павленко" Н.Новгород Ларина 19 665599

8 ЧП"Глуменко" Кстово Зелёная 4 53638

9 ЧП"Хохленко" Москва Ленина 78 456598

10 ЧП"Сидоренко" Кстово Заводская 35 45283

11 ЧП"Калентеенко" Москва Ванеева 11 456596

Таблица - Журнал приёма товаров

записи Владелец товара Товар Количество товара, тонн Дата приёмки

1 ЧП"Иванов" Дыня 5 14.02.02

2 ЧП"Суслов" Капуста 5 15.02.02

3 ЧП"Петров" Картофель 12 15.02.02

4 ЧП"Сидоров" Перец 20 15.02.02

5 ЧП"Петренко" Яблоки 6 15.02.02

6 ЧП"Геленко" Огурцы 10 16.02.02

7 ЧП"Хохленко" Яблоки 11 16.02.02

8 ЧП"Павленко" Помидор 16 17.02.02

9 ЧП"Глуменко" Капуста 7 18.02.02

10 ЧП"Сидоренко" Лук 9 18.02.02

11 ЧП"Калентеенко" Арбуз 2 20.02.02

12 ЧП"Петров" Морковь 10 21.02.02

Таблица –Тара

Код тары Наименование тары Грузоподъёмность, кг Вес единицы тары, кг

1 Ящик 30 0,5

2 Мешок 25 0,1

3 Сетка 30 0,1

4 Контейнер 500 50

Таблица - Журнал расхода товаров

№ записи Покупатель Товар Количество товара, тонн Вид тары Дата отпуска

1 ЧП"Смирнов" Дыня 2 Ящик 15.01.02

2 ЧП"Круглов" Дыня 3 Ящик 18.02.02

3 ЧП"Смирнов" Картофель 4 Мешок 18.02.02

4 ЧП"Зайков" Перец 5 Ящик 18.02.02

5 ЧП"Смирнов" Яблоки 6 Сетка 19.02.02

6 ЧП"Горбачёв" Огурцы 7 Сетка 19.02.02

7 ЧП"Слюньков" Морковь 8 Ящик 19.02.02

8 ЧП"Абрамов" Помидор 9 Контейнер 23.02.02

9 ЧП"Андронов" Капуста 6 Мешок 23.02.02

10 ЧП"Карташов" Лук 4 Контейнер 23.02.02

11 ЧП"Кондрашов" Арбуз 1 Сетка 25.02.02

13 ЧП"Зайков" Капуста 12 Мешок 12.03.02

Таблица - Покупатель товара

Код покупателя Наименование Город Улица Дом Телефон

1 ЧП"Круглов" Москва Ленина 2 456598

2 ЧП"Зайков" Кстово Зелёная 3 563212

3 ЧП"Воротников" Н.Новгород Талалушкина 56 874565

4 ЧП"Слюньков" Выкса Гагарина 45 123225

5 ЧП"Горбачёв" Павлово Кутузова 23 585652

6 ЧП"Смирнов" Владимир Суворова 2 548765

7 ЧП"Карташов" Чкалов Суетинская 9 122345

8 ЧП"Кондрашов" Пенза Торговая 8 656719

9 ЧП"Андронов" Пермь Набережная 23 193372

10 ЧП"Абрамов" Владивосток Бекетова 89 462845

11 ЧП"Кондрашов" Чкалов Торговая 8 585652


Таблица – Прейскурант товаров

Код товара Наименование товара Цена закупки, руб/кг Цена продажи, руб/кг

1 Арбуз 3,00р. 3,50р.

2 Дыня 5,00р. 5,60р.

3 Капуста 1,00р. 1,60р.

4 Картофель 6,50р. 7,00р.

5 Лук 15,00р. 16,00р.

6 Морковь 3,00р. 3,50р.

7 Огурцы 15,00р. 16,10р.

8 Перец 10,00р. 11,10р.

9 Помидор 15,00р. 16,20р.

10 Яблоки 5,00р. 5,80р.

Типы данных в полях
Для таблицы “Владелец товара”:

Код владельца

Наименование владельца

Город

Улица

Дом

Телефон

-

-

-

-

-

-

Счётчик

Текстовый Текстовый

Текстовый

Текстовый

Числовой

Для таблицы “Покупатель товара”:

Наименование покупателя

Город

Улица

Дом

Телефон

-

-

-

-

-

Текстовый

Текстовый

Текстовый Текстовый

Числовой

Для таблицы “Журнал приёма товаров”:

записи

Код владельца товара

Код товара

Количество товара, тонн Дата приёмки

-

-

-

-

-

Счётчик

Числовой Числовой

Числовой

Дата\Время

Для таблицы “Журнал расхода товаров”:

записи

Код покупателя товара

Код товара

Количество товара, тонн

Код тары

Дата отпуска

-

-

-

-

-

-

Счётчик

Числовой Числовой

Числовой

Числовой

Дата\Время

Для таблицы “Тара”:

Код тары

Наименование тары

Грузоподъёмность, кг

Вес единицы тары, кг

-

-

-

-

Числовой Текстовый

Числовой

Числовой

Для таблицы “Прейскурант товаров”:

Код товара

Наименование товара

Цена закупки, руб/кг

Цена продажи, руб/кг

-

-

-

-

Счётчик Текстовый

Денежный

Денежный

3. Формы

Форма – это диалоговое окно, через которое осуществляется интерфейс пользователя. Формы используются для различных целей:

    для ввода данных в таблицу;

    как кнопочная форма для открытия других форм или отчётов;

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

Большая часть данных, представленных в форме, берётся из таблицы или запроса. Другая информация, не связанная ни с таблицей, ни с запросом, хранится в макете формы.

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

В данной базе используется главная кнопочная форма для открытия форм "Владелец товара", " Покупатель товара", "Журнал приёмки товара", " Журнал расхода товара", “Прейскурант товаров”, “Тара - список”. Через эти формы осуществляется ввод данных пользователем.

    Запросы

С помощью запросов можно просматривать, анализировать и изменять данные из нескольких таблиц. Они также используются в качестве источника данных для форм и отчётов.

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

Запрос можно создать с помощью мастера или самостоятельно.

В базе данных использованы запросы на выборку и перекрёстные запросы.

Приход товара на овощную базу – выдаёт количество каждого вида товара, принятого на овощную базу для реализации:

SELECT DISTINCTROW [Журнал приёма товаров].[Код товара], Sum([Журнал приёма товаров].[Количество товара, тонн]) AS [Количество товара, тонн]

FROM [Журнал приёма товаров]

GROUP BY [Журнал приёма товаров].[Код товара];

Расход товара – выдаёт количество реализованного товара:

SELECT DISTINCTROW [Журнал расхода товаров].[Код товара], Sum([Журнал расхода товаров].[Количество товара, тонн]) AS [Количество товара, тонн]

FROM [Журнал расхода товаров]

GROUP BY [Журнал расхода товаров].[Код товара];

Прибыль по товарам – выдаёт прибыль по каждому виду товара (подсчитывается по разнице закупочной и продажной цены товара, зарегистрированного в прейскуранте):

SELECT [Приход товара - запрос].[Код товара], [Приход товара - запрос].[Количество товара, тонн], [Расход товара - запрос].[Количество товара, тонн], Sum([Приход товара - запрос]![Количество товара, тонн]-[Расход товара - запрос]![Количество товара, тонн]) AS [Остаток на базе, тонн], Sum([Расход товара - запрос]![Количество товара, тонн]*([Прейскурант]![Цена продажи, руб/кг]-[Прейскурант]![Цена закупки, руб/кг]))*1000 AS [Прибыль, руб]

FROM (Прейскурант INNER JOIN [Приход товара - запрос] ON Прейскурант.[Код товара] = [Приход товара - запрос].[Код товара]) INNER JOIN [Расход товара - запрос] ON Прейскурант.[Код товара] = [Расход товара - запрос].[Код товара]

GROUP BY [Приход товара - запрос].[Код товара], [Приход товара - запрос].[Количество товара, тонн], [Расход товара - запрос].[Количество товара, тонн] ORDER BY Sum([Расход товара - запрос]![Количество товара, тонн]*([Прейскурант]![Цена продажи, руб/кг]-[Прейскурант]![Цена закупки, руб/кг]))*1000 DESC;

Запрос на прибыльность по покупателям – выдаёт зависимость прибыли, полученной при товарных сделках с каждым покупателем:

SELECT DISTINCTROW [Покупатель товара].[Наименование покупателя], Sum([Количество товара, тонн]*([Прейскурант]![Цена продажи, руб/кг]-[Прейскурант]![Цена закупки, руб/кг]))*1000 AS [Прибыль, руб]

FROM Прейскурант INNER JOIN ([Покупатель товара] INNER JOIN [Журнал расхода товаров] ON [Покупатель товара].[Код покупателя товара] = [Журнал расхода товаров].[Код покупателя товара]) ON Прейскурант.[Код товара] = [Журнал расхода товаров].[Код товара]

GROUP BY [Покупатель товара].[Наименование покупателя]

ORDER BY Sum([Количество товара, тонн]*([Прейскурант]![Цена продажи, руб/кг]-[Прейскурант]![Цена закупки, руб/кг]))*1000 DESC;

Перекрёстный запрос – прибыльность по потребителям и товарам – выдаёт зависимость полученной прибыли от конкретного покупателя и приобретённого им продукта:

TRANSFORM Sum([Количество товара, тонн]*([Прейскурант]![Цена продажи, руб/кг]-[Прейскурант]![Цена закупки, руб/кг]))*1000 AS Выражение1

SELECT [Покупатель товара].[Наименование покупателя]

FROM Прейскурант INNER JOIN ([Покупатель товара] INNER JOIN [Журнал расхода товаров] ON [Покупатель товара].[Код покупателя товара] = [Журнал расхода товаров].[Код покупателя товара]) ON Прейскурант.[Код товара] = [Журнал расхода товаров].[Код товара]

GROUP BY [Покупатель товара].[Наименование покупателя]

PIVOT Прейскурант.[Наименование товара];

Перекрёстный запрос – прибыль по месяцам и товарам – выдаёт зависимость полученной прибыли по каждому товару и в зависимости от месяца его приобретения:

TRANSFORM Sum([Количество товара, тонн]*([Прейскурант]![Цена продажи, руб/кг]-[Прейскурант]![Цена закупки, руб/кг]))*1000 AS Выражение1

SELECT Month([Дата отпуска]) AS Месяц

FROM Прейскурант INNER JOIN ([Покупатель товара] INNER JOIN [Журнал расхода товаров] ON [Покупатель товара].[Код покупателя товара] = [Журнал расхода товаров].[Код покупателя товара]) ON Прейскурант.[Код товара] = [Журнал расхода товаров].[Код товара]

WHERE (((Year([Дата отпуска]))=2002))

GROUP BY Month([Дата отпуска]), Year([Дата отпуска])

ORDER BY Month([Дата отпуска])

PIVOT Прейскурант.[Наименование товара];

Отчёт № 2

Прибыль по товарам

Товар Прибыль, руб

Помидор 10800

Капуста 10800

Огурцы 7700

Перец 5500

Яблоки 4800

Морковь 4000

Лук 4000

Дыня 3000

Картофель 2000

Арбуз 500

5 марта 2002 г. Страница 1 из 1

6. Выводы

В деловой или личной сфере часто приходится работать с данными из разных источников, каждый из которых связан с определённым видом деятельности. Для координации всех этих данных необходимы определённые знания и организационные навыки. Microsoft Access объединяет сведения из разных источников в одной реляционной базе данных. Создаваемые формы, запросы и отчёты позволяют быстро и эффективно обновлять данные, получать ответы на вопросы, осуществлять поиск нужных данных, анализировать данные, печатать отчёты, диаграммы и почтовые наклейки.

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

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

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

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

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

5. Отчёты

Отчёт № 1

Прибыль по потребителям и товарам

Наименование Арбуз Дыня Капуста Картофель Лук Морковь Огурцы Перец Помидор Яблоки

покупателя

ЧП"Абрамов" 10 800,00р.

ЧП"Андронов" 3 600,00р.

ЧП"Горбачёв" 7 700,00р.

ЧП"Зайков" 7 200,00р. 5 500,00р.

ЧП"Карташов" 4 000,00р.

ЧП"Кондрашов" 500,00р.

ЧП"Круглов" 1

ЧП"Слюньков" 4 000,00р.

ЧП"Смирнов" 1 2 000,00р. 4 800,00р.

5 марта 2002 г. Страница 1 из 1

Отчёт 2

Прибыль по товарам

Товар Прибыль, руб

Помидор 10800

Капуста 10800

Огурцы 7700

Перец 5500

Яблоки 4800

Морковь 4000

Лук 4000

Дыня 3000

Картофель 2000

Арбуз 500

5 марта 2002 г. Страница 1 из 1

С

Владелец товара

Код владельца

Наименование владельца

Город

Улица

Дом

Телефон

Журнал приёма товаров

записи

Код владельца товара

Код товара

Количество товара, тонн Дата приёмки

Журнал расхода товаров

записи

Код покупателя товара

Код товара

Количество товара, тонн

Код тары

Дата отпуска

Прейскурант товаров

Код товара

Наименование товара

Цена закупки, руб/кг

Цена продажи, руб/кг

Тара

Код тары

Наименование тары

Грузоподъёмность, кг

Вес единицы тары, кг

Приход товара - запрос

Код товара

Количество товара, тонн

Расход товара - запрос

Код товара

Количество товара, тонн

Запрос

Прибыль по товарам

Код товара

Приход товара – запрос.Количество товара, тонн

Расход товара – запрос.Количество товара, тонн

Остаток на базе, тонн

Прибыль, руб

хема данных


Покупатель товара

Код покупателя

Город

Улица

Дом

Телефон