- •Содержание
- •Введение
- •1. Проектирование базы данных
- •1.1. Анализ существующего программного обеспечения
- •Управление системой ценообразования, скидок и наценок:
- •Банк и касса:
- •Оперативная отчетность:
- •Аналитическая отчетность.
- •1.2. Концептуальное проектирование базы данных
- •1.3. Логическое проектирование базы данных
- •1.4.Физическое проектирование базы данных
- •2. Разработка программного продукта
- •2.1. Структура программного продукта
- •2 .2. Реализация бизнес-правил
- •2.3. Руководство программиста
- •2.4. Руководство оператора
- •2.5. Тестирование программного продукта
- •Библиографический список
- •Техническое задание на разработку программного продукта.
- •Примеры отчетов и графиков генерируемой программы.
2. Разработка программного продукта
2.1. Структура программного продукта
Разработанная база данных обладает интуитивно понятным интерфейсом. Все элементы управления и информации имеют однозначно понятные подписи. Меню программы включает в себя следующие пункты:
Формы (Рис. 2.4.)- это структурированное окно, которое можно представить так, чтобы оно повторяло форму бланка, создаются из набора отдельных элементов управления. Форма предоставляет возможности для:
ввода и просмотра информации базы данных
изменения данных
печати
создания сообщений
Рис.2. 4. Список форм программы
Отчеты (Рис.2.5.) - это форматированное представление данных, которое выводится на экран, в печать или файл. Они позволяют извлечь из базы нужные сведения и представить их в виде, удобном для восприятия, а также предоставляют широкие возможности для обобщения и анализа данных.
Рис. 2.5. Список отчетов программы
Таблицы (Рис.2.6.) - способ передачи содержания, заключающийся в организации структуры данных, в которой отдельные элементы помещены в ячейки, каждой из которых сопоставлена пара значений — номер строки и номер колонки. Таким образом устанавливается смысловая связь между элементами, принадлежащими одному столбцу или одной строке
Рис. 2.6. Список таблиц в программе
Запросы (Рис.2.7.) - это средство выбора необходимой информации из базы данных. Вопрос, сформированный по отношению к базе данных, и есть запрос. Применяются два типа запросов: по образцу (QBE – Query by example) и структурированный язык запросов (SQL – Structured Query Language).
Рис.2.7. Список запросов программы
Связь между элементами меню таблицы можно представить так:
Схема 2.1.
Схема меню программы
Продажи товары (таблица) - количество
проданных товаров
Продажи (отчет)
Продажа заказанных товаров (таблица)
Продажи (таблица)
Товары (отчет)
Товары (таблица) – название, срок
годности, наценка
Товары (форма)
Виды товаров (таблица)
Виды товаров (отчет)
Категории товаров (таблица)
Категории товаров (форма)
Товары заказы (таблица) – количество
заказанных товаров
Заказы (таблица) – дата заказа, дата
выполнения
Заказы (форма)
Сотрудники (таблица)
Сотрудники (форма)
Должности (форма)
Должности (таблица)
Покупатели (таблица)
Покупатели (форма)
Покупатели (отчет)
2 .2. Реализация бизнес-правил
В данной курсовой работе были реализованы следующие запросы:
Запрос «виды товаров».
Запрос «виды товаров» выводит информацию о «Категории товаров», «Наименование Видов товаров», «Наименование товара», «Срок годности», «Критическая норма» и «Наценка».
SELECT Виды_Товаров.Категории_Товаров, Виды_Товаров.Наименование_Виды_Товаров, Товары. Наименование_Товара, Товары.Срок_Годности, Товары.Критическая_Норма, Товары.Наценка
FROM Виды_Товаров INNER JOIN Товары ON Виды_Товаров.ID_ВТ = Товары.id_вт;
Запрос объекты «Должности»
Запрос «Должности» выводит информацию о «Наименование должности», «Имя», «Отчества», «Фамилия», «Дата поступления», «Стаж», «Год рождения», «Образование», «Адрес», Телефон».
SELECT Должности.[Наименование должности], Сотрудники.Имя, Сотрудники.Отчество, Сотрудники.Фамилия, Сотрудники.Дата_Поступления_На_Работу, Сотрудники.Стаж, Сотрудники.[Год рождения], Сотрудники.Образование, Сотрудники.Адрес, Сотрудники.Телефон
FROM Должности INNER JOIN Сотрудники ON Должности.[id Должности] = Сотрудники.[id Должность];
Запрос «Покупатели»
Запрос «Покупатели» выводит информацию о «Фамилия» «Имя», «Отчества», «Фамилия», «Адрес», Телефон», «Дата заказа», «Наименование товара» и «Время продажи».
«Фамилия», SELECT [Покупатели].[Фамилия], [Покупатели].[Имя], [Покупатели].[Отчество], [Покупатели].[Адрес], [Покупатели].[Телефон], [Заказы].[Дата_Заказа], [Товары].[Наименование_Товара], [Продажи].[Время_Продажи]
FROM (Товары INNER JOIN ((Покупатели INNER JOIN Заказы ON Покупатели.[id Покупатели]=Заказы.[id Покупатель]) INNER JOIN Товары_Заказы ON Заказы.[id Заказа]=Товары_Заказы.[id Заказа]) ON Товары.id_товара=Товары_Заказы.[id Товары]) INNER JOIN ((Продажи INNER JOIN Продажи_Товары ON Продажи.[id Продажи]=Продажи_Товары.[id Продажи]) INNER JOIN Продажа_Заказанных_Товаров ON ((Продажи_Товары.[id Продажи]=Продажа_Заказанных_Товаров.[id Продажи]) And (Продажи_Товары.[id Поставки]=Продажа_Заказанных_Товаров.[id Поставки])) AND (Продажи_Товары.[id Товары]=Продажа_Заказанных_Товаров.[id Товары])) ON Товары_Заказы.[id продажи]=Продажа_Заказанных_Товаров.[id Продажи];
Запрос «Поставки»
Запрос «Поставки» выводит информацию о «Дата поступления» «Наименование поставщика», «Адрес», Телефон», «Электронная почта», «Номер лицензии» и «Наименование товаров».
SELECT Поставки.Дата_Поставки, Поставщики.Наименование_Поставщика, Поставщики.Адрес, Поставщики.Телефон, Поставщики.[Электронный адресс], Поставщики.Номер_Лицензии, Товары.Наименование_Товара
FROM Товары INNER JOIN (Поставщики INNER JOIN (Поставки INNER JOIN Товары_Поставки ON Поставки.[id Поставки] = Товары_Поставки.[id Поставки]) ON Поставщики.[id Поставщик] = Поставки.idПоставщик) ON Товары.id_товара = Товары_Поставки.[id Товары];
Запрос «Продажи»
Запрос «Продажи» выводит информацию о «Дата продажи» «Время продажи», «Количество», «Наименование товаров» и «Наценка».
SELECT Продажи.Дата_Продажи, Продажи.Время_Продажи, Продажи_Товары.Количество, Товары.Наименование_Товара, Товары.Наценка
FROM (Товары INNER JOIN Товары_Поставки ON Товары.[id_товара] = Товары_Поставки.[id Товары]) INNER JOIN (Продажи INNER JOIN Продажи_Товары ON Продажи.[id Продажи] = Продажи_Товары.[id Продажи]) ON (Товары_Поставки.[id Товары] = Продажи_Товары.[id Товары]) AND (Товары_Поставки.[id Поставки] = Продажи_Товары.[id Поставки]);