Формирование нескольких баз данных «Хранение», «Поставщики», «Продукция», страница 2

Кол_заказа – объем заказа на имеющуюся продукцию.

Таблицы в базе связаны следующим образом:

Таблицы Produkciya  и Покупатели имеют связь «от одного ко многим» по полям

Produkciya .покуп_id и Покупатели.покуп_id.

Таблицы Produkciya и Поставщики имеют связь «от одного ко многим» по полям Produkciya.пост_id и Поставщики.пост_id.

Таблицы Хранение и Produkciya имеют связь «от одного ко многим» по полям Хранение.наименов_id и Produkciya .наименов_id.

Иллюстрация описанной базы данных приведена на рисунке 1.

Рис.1 База данных

Записи

Созданные таблицы были заполнены следующими записями.

Рис.2 Записи таблицы Покупатели

Рис.3 Записи таблицы Поставщики

Рис.4 Записи таблицы Продукция

Рис.5 Записи таблицы Хранение

Формы и меню

Для оформления запросов были созданы следующие формы:

На рисунках 7-11 представлена основная форма, по средствам которой происходит отображение данных хранимых в базе, манипуляции с этими данными, а также формирование запросов по заданию.

Также в проекте используется форма, вызываемая из меню, представленная на рисунке 6.

Рис.6 Форма, вызываемая из меню

Рис.7 Основная форма, вкладка первая

Рис.8 Основная форма, вкладка вторая

Рис.9 Основная форма, вкладка третья

Рис.10 Основная форма, вкладка четвертая

Рис.11 Основная форма, вкладка пятая

Рис.12  Основное меню приложения

SQL - Код

Для реализации заданных запросов были написаны следующие процедуры на языке SQL:

Составить список, в котором для каждой секции указать сведения об овощах, их поставщиках, и покупателях – оптовиков этой продукции.

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

Выдача по возрастанию:

Выдача по убыванию:

Выдача по наименованию:

Общие сведения:

Составить список, в котором для каждого поставщика указать вид продукции, цену, количество, качество (цена различна в зависимости от качества).

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

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

Заполнение секции.  В процентах, количественно, в зависимости от вида продукции.

В процентах:

Количественно:

В зависимости от вида продукции:

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

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

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

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

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

Выводы

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

При закупки новых видов овощей происходит кропотливая работа по заполнению таблиц. Produkciya– идентификатор наименования, наименование, поставщик, покупатель, режим хранения и т. д. После того, как вся информация о имеющихся овощах заполнена, происходит заполнение таблицы Хранение. Таким образом, нет необходимости повторно заполнять большие объемы информации. А за счет созданных связей всегда можно узнать общие показатели операций с продукцией.

Для работы с данными создана форма, в которой имеется средства для редактирования базы и формирования различных запросов к ней.

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

Список используемой литературы

1.  Трошина Г.В. Методические указания к лабораторному практикуму. – НГТУ 2004.

2.  Электронный учебник по Visual FoxPro.