Нижегородский
Государственный
Политехнический
Университет
Нижегородский
Вечерний Факультет
Зачётная
работа по курсу
"Информационные
технологии"
Разработка
базы данных
в среде
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
С
Владелец
товара
Код
владельца
Наименование
владельца
Город
Улица
Дом
Телефон
Журнал
приёма товаров
№
записи
Код
владельца
товара
Код
товара
Количество
товара, тонн
Дата приёмки
Журнал
расхода товаров
№
записи
Код
покупателя
товара
Код
товара
Количество
товара, тонн
Код
тары
Дата
отпуска
Прейскурант
товаров
Код
товара
Наименование
товара
Цена
закупки, руб/кг
Цена
продажи, руб/кг
Тара
Код
тары
Наименование
тары
Грузоподъёмность,
кг
Вес
единицы тары,
кг
Приход
товара - запрос
Код
товара
Количество
товара, тонн
Расход
товара - запрос
Код
товара
Количество
товара, тонн
Запрос
Прибыль
по товарам
Код
товара
Приход
товара – запрос.Количество
товара, тонн
Расход
товара – запрос.Количество
товара, тонн
Остаток
на базе, тонн
Прибыль,
руб
хема данных
Покупатель
товара
Код
покупателя
Город
Улица
Дом
Телефон
|