Разработка базы данных в среде Microsoft Access
Информация - Компьютеры, программирование
Другие материалы по предмету Компьютеры, программирование
-
-
-
-Счётчик
Числовой Числовой
Числовой
Числовой
Дата\Время
Для таблицы “Тара”:
Код тары
Наименование тары
Грузоподъёмность, кг
Вес единицы тары, кг-
-
-
-Числовой Текстовый
Числовой
Числовой
Для таблицы “Прейскурант товаров”:
Код товара
Наименование товара
Цена закупки, руб/кг
Цена продажи, руб/кг-
-
-
-Счётчик Текстовый
Денежный
Денежный
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 [Покупатель товара].[Код покупателя товара] = [Журнал