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

Информация - Компьютеры, программирование

Другие материалы по предмету Компьютеры, программирование

-

-

-

-Счётчик

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

Числовой

Числовой

Дата\Время

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

 

Код тары

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

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

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

-

-

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

Числовой

Числовой

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

 

Код товара

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

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

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

-

-

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

Денежный

Денежный

 

 

 

 

 

 

 

 

 

 

3. Формы

 

 

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

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

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

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

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  1. Запросы

 

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

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

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

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

 

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

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 [Покупатель товара].[Код покупателя товара] = [Журнал