Пример использования СУБД Access для разработки базы данных




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

· получение полной информации о потребителе и его реквизитах;

· учет, обработка и оформление заказов поступивших от менеджеров;

· учет сведений о заказах;

· расчет перегруза и вместимости товара;

· ведение отчетности.

На основании решаемых задач можно выделить следующие массивы данных:

· Потребители;

· Сотрудники;

· Перевозчики;

· Товар;

· Ж/Д станции;

· Тарифы Ж/Д;

· Заказано;

· Заказы.

Определим атрибуты объектов БД и связи между ними. Можно задать следующие атрибуты объектов:

 

Потребители
Код потребителя (КП) Число
Краткое наименование Текст
Полное наименование Текст
Юридический адрес Текст
Код сотрудника (КСТР) Число
Код ж/д станции (КС) Число
Ж/д реквизиты адр. получателя Текст
Почтовый адрес Текст

 

Сотрудники
Код сотрудника (КСТР) Число
ФИО Текст
Должность Текст
Телефон Число
Доп. информация Текст

 

 

Перевозчики
Код транспортной кампании (КТК) Число
Транспортная компания Текст
Телефон Текст
Контактное лицо Текст
Номер договора Текст
Договор действует до Дата

 

Товар
Код товара (КТ) Число
Наименование товара Текст
Литраж Текст
Кол. бут в коробе Число
Вес короба с гот. продукцией Число

 

Ж/Д станции
Код станции (КС) Число
Ж/Д станция Текст
Доп. данные Текст

 

Тарифы Ж/Д
Код транспортной компании (КТК) Число
Код станции (КС) Число
Цена Число

 

Заказано
Код заказа (КЗ) Число
Код товара (КТ) Число
Количество Число
Цена Число

 

Заказы
Код заказа (КЗ) Число
Код покупателя (КП) Число
Код транспортной компании (КТК) Число
Код сотрудника (КСТР) Число
Дата Исполнения Дата
Стоимость Утепления Число
Номер Контейнера Текст
Дата Прибытия Дата
Номер ТТН (товарно-транспортной накладной) Текст

 

В рассматриваемом примере объекты вступают во взаимоотношения «один-ко-многим». Это означает, например, что один сотрудник может оформить несколько заказов и работать со многими потребителями, один товар может входить во многие заказы, один перевозчик может осуществлять доставку многих заказов, но один и тот же заказ не могут выполнять несколько перевозчиков. Связи между объектами проектируемой БД представлены на рис. 2.23.

 

Рис. 2.23. Связи между объектами БД

На основании модели изображенной на рис. 2.23 построим логическую модель данных. Для реляционной модели данных каждый объект преобразуется в набор отношений (таблиц), построенных по определенным строго заданным правилам. Таблица состоит из столбцов (полей) и строк (записей).

Для этого требуется выполнить следующие действия:

· Создать по одной таблице для каждого объекта.

· Для каждого объекта, вступающего во взаимоотношениях с другими объектами как «один-ко-многим», указать один столбец в качестве первичного ключа.

· Задать первичный ключ для каждого объекта, выступающего
во взаимоотношениях как «многие-к-одному».

Выполним это преобразование для нашего примера. На основании модели изображенной на рис. 2.23 можно построить 8 таблиц: Потребители, Сотрудники, Перевозчики, Товар, Ж/Д станции, Тарифы Ж/Д, Заказано,

Заказы. Зададим первичные ключи для этих таблиц, выступающих в связях как «один-ко-многим». Таблица Заказы имеет в своем составе уникальное для каждой строки поле — это Код заказа. Таблицам Потребители, Сотрудники, Перевозчики, Товар, Ж/Д станции, назначим первичные ключи:

· Код потребителя (КП);

· Код сотрудника (КСТР);

· Код транспортной кампании (КТК);

· Код товара (КТ);

· Код станции (КС);

· Код товара (КТ).

Таким образом, таблицы Заказы, Потребители, Заказано, Тарифы Ж/Д будут иметь внешние ключи. Логическая модель для связи отношений представлена на рис. 2.24.

 

Рис. 2.24. Логическая схема данных

 

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

Рассмотрим более подробно структуру таблиц.

Таблица Товар содержит поля - характеризующие тип товара и имеет связь типа «один ко многим» с таблицей Заказано. Это означает, что в одной заявке на заказ может числиться товар различных типов, но ни одна заявка не может содержать больше одного типа товара.

Таблица Заказано содержит поля наименование товара, количество и цену. Помимо связи с таблицей Товары, имеет связь «один ко многим» с таблицей Заказы. Это означает, что в одном заказе на перевозку может быть много заявок, но в одном заказе не может быть двух одинаковых заявок.

Таблица Заказы содержит реквизиты товара, данные перевозчика, пункт назначения, стоимость услуги. Помимо связи с таблицей Заказано имеет связь типа «многие к одному» с таблицей Сотрудники. Это означает, что один сотрудник может оформить несколько заказов, но два и более сотрудника не могут оформлять один и тот же заказ.

Таблица Сотрудники содержит информацию о менеджерах компании и помимо связи с таблицей Заказы имеет связь «один ко многим с таблицей «Потребители». Это означает, что один менеджер может иметь контакт со многими заказчиками, но два менеджера не могут работ с одним и тем же клиентом.

Таблица Потребители содержит информацию о контрагентах их реквизитах. Помимо связи с таблицей Сотрудники имеет связь типа «многие к одному» с таблицей Ж/Д станции. Это означает, что один контрагент может заказывать товар по разным адресам, но два и более контрагента не могут заказывать товар по одному и тому же адресу.

Таблица Ж/Д станции, помимо связи с таблицей Потребители имеет связь типа «один ко многим» с таблицей Тарифы на ж/д. Это означает, что стоимость доставки для одного и того же пункта назначения может быть различной но одинаковые тарифы не могут быть для различных станций назначения.

Таблица Перевозчики имеет связь типа «один ко многим» с таблицами Заказы и Тарифы на ж/д.

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

Формы предназначены для создания пользователю комфортного интерфейса и дают возможность выводить на экран данные в виде электронного бланка. Для рассматриваемого примера создадим следующие формы: «Главная», «Заказы», «Поиск по дате исполнения», «Поиск по № контейнера», «Отгрузки за период», «Сверка по перевозчикам», «Сотрудники», «Потребители», «Товар», «Ж/д станции», «Тарифы по ж\д». В качестве иллюстрации рассмотрим создание формы «Товар», предназначенную для ввода данных о перевозимых товарах. Для этого, перейдем на вкладку создание и выберем мастер форм. В открывшемся окне выберем таблицу «Товар» и соответствующие поля рис.2.25. Нажимаем «Далее» выбираем внешний вид,

Рис. 2.25. Создание формы «Товар»

требуемый стиль и задаем название формы «Товар». Закрываем форму и выбираем режим «Конструктор». Раздвигаем область данных, регулируем размер полей, выбираем тип оформления, создаем кнопку «найти запись» и т.д. (рис. 2.26).

Рис.2.26. Форма «Товар»

 

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

· «Заявка на контейнер» (необходимо ввести № заказа), содержит поля: код заказа, реквизиты покупателя, дату исполнения, стоимость специальных услуг;

· «Отгрузки», содержит поля: полное наименование заказчика, пункт назначения, доп. данные пункта назначения, название компании перевозчика, дата исполнения, цена контейнера;

· «Отгрузки за период» (необходимо ввести начальную и конечную даты), содержит поля: полное наименование заказчика, ж/д станция, транспортная компания, номер контейнера, дата исполнения, дата прибытия, сумма за услуги;

· «Поиск номера контейнера» (необходимо ввести № контейнера), содержит поля: полное наименование (таб. Потребители), Ж/Д станция, транспортная компания (таб. Перевозчики), № контейнера (таб. Заказы), Дата Исполнения (таб.Заказы), Дата Прибытия (таб.Заказы);

· «Поиск по дате исполнения» (введите дату) содержит поля: полное наименование (таб. Потребители), Ж/Д станция, транспортная компания (таб. Перевозчики), № контейнера (таб. Заказы), Дата Исполнения (таб.Заказы), Дата Прибытия (таб.Заказы);

· «Промежуточные данные заказа» содержит поля: код заказа (таб. заказано), Дата Исполнения (таб. заказы), промежуточная стоимость (количество*заказано), всего мест (количество*товар), тоннаж (количество*товар);

· «Услуги перекрестный» содержит поля: транспортная компания, итого за год, по месяцам.

Для примера рассмотрим создание запроса «Отгрузки». Запустим режим создания запроса с помощью мастера (Простой запрос) и произведем выборку полей как показано на рис. 2.27. Нажимаем «Далее», выбираем тип запроса и задаем имя запроса «Отгрузки». Завершаем работу мастера, нажав кнопку «Готово».

 

Рис.2.27. Создание запроса «Отгрузки» с помощью мастера.

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

 

Рис.2.28. Бланк запроса

 

В седьмом столбце создадим поле «Стоимость контейнера». Наберем название поля, правой кнопкой мыши кликнем на седьмой графе строки Поля, откроется окно Построитель выражений. В левом окне обзора раскроем папку Таблицы и в ней последовательно вложенную папку «Тариф на ж/д» (поля таблицы будут представлены в среднем окне построителя запросов) и папку «Заказы». Введем формулу для вычисляемого поля согласно схеме рис. 2.29.

Рис.2.29. Использование построителя выражений

Отчет позволяет представить информацию на печать в удобном виде. Его можно дополнить диаграммами и рисунками, которые сделают данные более наглядными. Для рассматриваемого примера, необходимо разработать два отчета «Заявка на контейнер» с полями: покупатель; перевозчик; дата исполнения; всего мест; тоннаж; ж/д назначения; дополнительные данные; полное наименование заказчика; ж/д реквизиты. И «Отчет по услугам», который содержит поля: транспортная компания; итого за год; по месяцам.

Более подробно механизм создания отчетов, запросов и форм рассмотрен в [2].

Для комфортной эксплуатации БД и учитывая, что не все сотрудники компании владеют необходимыми навыками работы в Access, очень удобно создавать главную кнопочную форму. Она позволяет, не вникая в детали структуры БД выводить нужные объекты на экран монитора, производить корректировку данных, печатать отчеты и т.д. Для её создания на вкладке «Работа с базами данных» выберем команду «Диспетчер кнопочных форм», Access сообщит о том, что не может найти кнопочную форму и предложит ее создать. Кликнем кнопку «Да» для продолжения работы «Диспетчера кнопочных форм» и перейдем к редактированию формы. Щелкнем мышью кнопку «Изменить», на экране появляется окно «Изменение страницы кнопочной формы». Для создания новой команды меню кликнем мышью кнопку «Создать». На экран выводится меню «Изменение элемента кнопочной формы». Для создания команды меню необходимо ввести текст, появляющийся на форме, и команду, которую нужно выполнить при нажатии кнопки. Введем текст «Заказы», выбираем команду «Открыть форму для добавления» и в окне формы выбираем форму «Заказы». Повторяем последовательность действий и создаем кнопочные формы «Главная», «Отчеты и таблицы», «Исходные данные» рис 2.30.

 

 

Рис.2.30. Элементы главной кнопочной формы

Теперь необходимо создать подчиненные формы для кнопок «Отчеты, таблицы» и «Исходные данные», которые бы позволяли выводить отчеты, просматривать и добавлять данные и т. п. Для создания элементов кнопочной формы "Исходные данные" нужно выделить ее в окне «Диспетчер кнопочных форм» и щелкнуть на кнопке «Изменить», откроется окно диалога «Изменение страницы кнопочной формы». В этом окне щелкаем на кнопке «Создать», откроется новое окно «Изменение страницы кнопочной формы», набираем текст «Сотрудники», выбираем из раскрывающегося списка команду «Открыть форму для добавления» и выбираем из списка форму «Сотрудники». После создания по такой же технологии элементов «Потребители», «Товар», «Ж/Д станции», «Тарифы Ж/Д» они также будут отображаться в окне страницы кнопочной формы. Аналогично создаем подчиненные элементы для кнопочной формы «Отчеты, таблицы». Закрываем диспетчер кнопочных форм и открываем «Главную форму» в режиме конструктор рис.2.31.

 

Рис 2.31. Главная кнопочная форма

 

Выполняем редактирование формы, добавляем управляющие кнопки, оформляем дизайн и создаем необходимые макросы для открытия нужных объектов подробная технология создания кнопочных форм описана в [ ].

В меню параметры Access выбираем команду «Текущая база данных» и в окне «Форма просмотра» указываем главная форма. Теперь после запуска БД на экране отобразится форма показанная на рис. 2.23.

Рис.2.32. Главная кнопочная форма

На главной кнопочной форме расположено три вкладки:

Главная, где расположена кнопка, которая открывает форму, содержащую данные о заказах.

Отчеты, таблицы – в этой вкладке расположены кнопки, которые позволяют формировать отчеты или таблицы по заданным параметрам.

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

Выход – это кнопка с помощью, которой осуществляется закрытие приложения Microsoft Access.

При нажатии кнопки Заказы открывается форма Заказы рис.2.24.

 

Рис. 2.24. Форма Заказы

Данная форма отображает все данные о заказе: № заказа, покупатель, перевозчик, менеджер, дата исполнения, стоимость спец. услуг, № контейнера, дата прибытия, номер товарно-транспортной накладной, наименование товара, количество, цену за единицу продукции и сумму партии. С помощью данной формы можно распечатать и посмотреть отчет «Заявка на контейнер», используя соответственно кнопки и .

При нажатии кнопки Поиск по дате исполнения на экран выводится окно рис. 2.25.

Рис. 2.25. Окно ввода параметра

При вводе параметра необходимо придерживаться заданного числового формата (ДД-ММ- ГГГГ).

После ввода параметра на экран выводится форма (в случае если в это время была отправка), представленный на рис.2.26.

 

Рис. 2.26. Отчет Поиск по дате исполнения

 

Форма содержит все данные о поставщиках и потребителях, контейнере и дате исполнения.

При нажатии кнопки Поиск номера контейнера на экран выводится окно рис. 2.27.

Рис. 2.27. Окно ввод параметра

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

После ввода параметра на экран выводится форма (в случае если такой контейнер существует), представленный на рис.2.28.

 

 

Рис.2.28 Форма Поиск по № контейнера

Он содержит данные о пункте назначения, перевозчике, стоимости и т.д.

При нажатии кнопки Отгрузки за период на экран выводится первый параметр рис.2.29.

Рис.2.29. Окно ввода начальной даты

После ввода начальной даты (ДД-ММ-ГГГГ), на экран выводится окно для ввода конечной даты рис.2.30.

 

Рис.2.30. Окно ввода конечной даты

 

После ввода конечной даты (в формате ДД-ММ-ГГГГ), на экран выводится форма «Отгрузки за период» содержащая поля представленные на рис.2.31.

 

Рис. 2.31. Форма «Отгрузки за период»

При нажатии кнопки Сверка по перевозчикам на экран выводится перекрестный запрос, содержащий поля представленные на рис.2.32.

рис. 2.32. Запрос «Сверка по перевозчикам»

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

При нажатие кнопки на вкладке отчеты и таблицы, запрос Сверка по перевозчикам выводится на печать рис.2.33.

Рис. 2.34. Отчет «Услуги»

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

· сотрудники;

· потребители;

· товар;

· ж/д станции;

· тарифы по ж/д.

При нажатии кнопки Сотрудники на экран выводится форма сотрудники рис. 2.35.

Рис. 2.35. Форма «Сотрудники»

При нажатии кнопки Потребители на экран выводится форма содержащая все данные о заказчике товара рис. 2.36.

 

Рис. 2.37. Форма «Потребители»

При нажатии кнопки товар на экран выводятся данные о товаре подлежащим транспортировки рис. 2.38.

Рис. 2.38. Форма «Товар»

При нажатии кнопки «Ж/д станции» выводится информация о пункте назначения товара рис. 2.39.

Рис. 2.39. Форма «Ж/Д станции»

При нажатии кнопки Тарифы по ж/д на экран выводится форма информирующая о ценах за доставку товара рис.2.40.

Рис. 2.40. Форма «Тарифы»

Таким образом, при запуске программы запускается главная кнопочная форма - в ней расположены следующие пункты меню:

· Потребители;

· Заявка;

· Отчеты;

· Товар;

· Выход из меню;

· Выход из Microsoft Access.

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-10-12 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: