Проект и разработка база данных "Продуктовый магазин"
Создание реляционной базы данных, содержащей основные объекты данной предметной области: товары и их продажа, поставщики и накладные принятия товара в магазин, расчёт остатка товара на складе. Функции по обработке данных (редактирование, вставка).
Рубрика | Программирование, компьютеры и кибернетика |
Вид | практическая работа |
Язык | русский |
Дата добавления | 18.04.2017 |
Размер файла | 612,1 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Проект и разработка база данных "Продуктовый магазин"
Введение
Сегодня при работе с большими объёмами данных и различной документацией обычно встаёт вопрос, как и где, хранить всю эту информацию, как обеспечить максимально быстрый и удобный доступ к данным. Решение кроется в применении технологии реляционных баз данных. Оно является наиболее рациональным, так как предоставляет достаточно быстрый и удобный доступ к необходимым упорядоченным данным. Но также существуют некоторые трудности при использовании данного подхода - это необходимость разработки программного комплекса для обслуживания базы данных максимально ориентированного на необходимую предметную область.
Предметная область проекта - продуктовый магазин. Она имеет довольно сложную структуру, включающую в себя различные товары, контакты с поставщиками товара и покупателями. Каждая новая поставка товара оформляется накладной. Прибывший товар отправляется на склад и учитывается товароведом. Каждый товар поставщик отпускает по определенной цене, указанной в накладной поставки товара. Как правило, эта цена ниже, чем та, по которой товар отпускается потребителям.
Продуктовый магазин может закупать и реализовывать огромнейшее разнообразие продуктов. Это требует обязательного серьёзного учёта и контроля и удобнее всего использовать в этих целях базы данных.
Поэтому проект посвящен созданию реляционной базы данных, содержащей основные объекты данной предметной области. К ним относятся собственно товары и их продажа, поставщики и накладные принятия товара в магазин, расчёт остатка товара на складе.
Анализ технического задания.
Анализируя техническое задание, были выделены основные требования по разработке проекта:
· Разработать БД
· Разработать клиентское приложение
· Реализовать основные функции по обработке данных (чтение, редактирование, вставка, удаление)
· Реализовать функции печати отчетов
· Реализовать всю бизнес-логику работы приложения на уровне БД (использование представлений, хранимых процедур, триггеров, внешних функций пользователя, ограничений, доменов и т.п.)
· Реализовать ролевой доступ к данным (разграничение прав пользователя, авторизация)
Описание предметной области:
Условная фирма, в которой будет эксплуатироваться база данных, занимается розничной продажей товара, т.е. ведется работа по приему товара от поставщиков, продажа товара, возможность установление скидок на товар. В базе данных должен храниться полный перечень поставщиков и поставок товара в магазин. Также в базе данных должен храниться весь перечень товаров имеющихся на данный момент, список всех накладных поставок товара, информация об остатках товара на складе, иметься возможность добавление товаров и накладных.
Определим первоначальные данные:
Поставщики - организации или физические лица, с которыми заключаются договора на поставку товара
Накладные - создаются на основании получения заказа от поставщиков, для приёма товара в магазин
Товар - присутствует на основании поставки от поставщика
Чек - создаётся на основании продажи товара
Исходя из этих требований, программа должна содержать следующие функциональные возможности:
- добавление/редактирование товара: название товара, цена товара, скидка на товар;
- добавление/редактирование накладных: название товаров, количество, цена;
- создание отчетов о продаже товара за месяц;
- создание чека о продаже товара.
Исходя из функциональных возможностей, разрабатываемое приложение должно соответствовать следующим требованиям:
- Приложение должно предоставлять добавление/редактирование данных о товарах, поставках товара, накладных, а также иметь возможность формирования отчетов и печать чека о продаже товара.
- Программа должна иметь визуальный интерфейс для работы с базой данных, это достигается путем использования визуальных компонентов;
- Обеспечивать корректность и надежность функционирования программы.
Для разработки программы необходимо использовать некоторый набор приложений, что позволит создать программу, сочетающую в себе все требования к работе и интерфейсу для учета товара.
Для разработки базы данных необходимо выбрать систему управления базами данных (СУБД), в которой будет разработана база. В настоящее время существует достаточно большое количество различных СУБД, позволяющих создавать и управлять разного рода базами данных.
Для разработки БД "Продуктовый магазин" выбрана СУБД Firebird, которая имеет множество достоинств, таких как простота установки, бесплатное распространение, а также функции СУБД Firebird, удовлетворяют всем функциональным возможностям данного предложения.
В качестве среды для разработки прикладной программы для работы с созданной в Firebird базой данных была выбрана среда объектно-ориентированного программирования Visual Studio 2010. Visual Studio включает в себя полный набор новых и улучшенных функций, упрощающих все этапы процесса разработки от проектирования до развертывания.
Разрабатываемое программное средство должно обеспечить получение из базы данных всей необходимой пользователю информации в полном объеме. Причем информация эта должна быть абсолютно достоверной и соответствующей состоянию дел.
В курсовой работе будет использована технология Windows Forms. Данная технология упрощает доступ к элементам интерфейса Microsoft Windows, что значительно упрощает создание визуального представления и интерфейса приложения. реляционный товар редактирование
Для достижения поставленных задач был выбран объектно-ориентированный язык программирования C#. Главной особенностью этого языка является его ориентированность на платформу Microsoft .NET -создатели C# ставили своей целью предоставление разработчикам естественных средств доступа ко всем возможностям платформы.NET.
Исходя из приведенного анализа, выделены основные концепции разработки приложения:
- разработка реляционной БД;
- использование СУБД Firebird;
- реализация на языке C#;
- реализация приложения в среде разработки Microsoft VS 2010;
- использование технологии Windows Forms.
Проектирование базы данных
При проектировании базы данных были выделены следующие таблицы:
1) Таблица "Накладная поставки товара" включает следующие поля:
Номер накладной (целочисленный)
Номер поставки товара (целочисленный)
Номер товара (целочисленный)
Количество товара (целочисленный)
Цена товара(с плавающей точкой)
Сумма по накладной (с плавающей точкой)
Дата накладной поставки товара (дата)
2) Таблица "Поставщики"
Номер поставщика (целочисленный)
Наименование фирмы (строка)
Название поставляемого товара (строка)
3) Таблица "Поставка товара"
Номер поставки товара (целочисленный)
Дата поставки товара (дата)
Номер поставщика (целочисленный)
Поле указывающее проведена накладная или нет (булевский)
4) Таблица "Товар"
Номер товара (целочисленный)
Цена товара с наценкой (с плавающей точкой)
Название товара (строка)
Скидка на товар, в % (Число с десятичной точкой)
Цена со скидкой (с плавающей точкой)
5) Таблица "Остатки товара на складе"
Номер договора(целочисленный)
Номер товара (целочисленный)
Количество оставшегося товара на складе (целочисленный)
6) Таблица "Продажа товара"
Номер продажи товара (целочисленный)
Номер товара (целочисленный)
Номер чека (целочисленный)
Количество проданных товаров (целочисленный)
7) Таблица "Чек"
Номер чека (целочисленный)
Дата продажи товара (дата)
ФИО владельца магазина (строка)
Сумма к оплате (с плавающей точкой)
Разработаны следующие триггеры:
· Триггер по приходу товара срабатывает при добавлении товара и увеличивает количество товара в магазине
· Триггер по расходу товара срабатывает при продаже товара и уменьшает количество товара в магазине
Так же были разработаны следующие процедуры:
· Процедура оформления новой продажи
· Процедура создания новой накладной, принимает товар от указанного поставщика в заданном количестве и добавляет его в таблицу ITEM.
Разработка базы данных.
В начале разработки БД "Продуктовый магазин" были созданы следующие таблицы:
1) Таблица SUPPLIER включает следующие поля:
ID_SUPPLIER (BIGINT, первичный ключ)-уникальный номер поставщика
FIRM_NAME - (VARCHAR 40) - название фирмы поставщика
ITEM_NAME - (VARCHAR 40) - название поставляемого товара
2)Таблица SUPPLY включает следующие поля:
ID_SUPPLY (BIGINT, первичный ключ) - уникальный номер поставки
DATE (DATE) - дата поставки товара
ID_SUPPLIER - (BIGINT, внешний ключ)
STATUS - (SMALLINT(0, 1)) - указывает произведена данная поставка товара или нет
3) Таблица SUPPLY_STR
ID_SUPPLY_STR (BIGINT, первичный ключ) - уникальный номер накладной поставки товара
ID_SUPPLY (BIGINT, внешний ключ)
ITEM (BIGINT, внешний ключ)
QTY (INTEGER) - Количество поставляемого товара
COST (NUMERIC (16,2)) - цена за единицу поставляемого товара
SUMMA (NUMERIC (18,2)) - сумма поставляемого товара
DATE_SUP (DATE) - дата накладной поставки
4)Таблица ITEM
ID (BIGINT, первичный ключ) - уникальный номер товара
COST (NUMERIC (16,2)) - цена товара на продажу, с наценкой
ITEM_NAME (VARCHAR 40) - Название товара
DISCOUNT (DECIMAL (16,2)) - скидка на товар в %
DISC_COST (NUMERIC (15,2)) - цена на товар со скидкой
5) Таблица ITEM_TO_DRAFT
ID (BIGINT, первичный ключ)
ITEM_ID (BIGINT, внешний ключ)
DRAFT_ID (BIGINT)
QTY (INTEGER) - количество проданного товара
6) Таблица DRAFT
ID (BIGINT, первичный ключ)
DATE (DATE) - дата продажи товара
MAG_OWNER (VARCHAR 100) - Владелец магазина
SUMMA (NUMERIC (18,2)) - сумма по чеку
7) Таблица REST
ID (BIGINT, первичный ключ) - уникальный номер остатка
ITEM (BIGINT, внешний ключ)
QTY (INTEGER) - количество оставшегося товара
После того как таблицы были созданы и связи между ними установлены можно построить диаграмму базы данных:
Рисунок 1. Диаграмма базы данных.
Разработаны в базе следующие триггеры:
1) Триггер DRAFT_BI0 срабатывает при продаже товара, уменьшает количество товара на складе в таблице REST.
2) Триггер SUPPLY_STR_AI0 срабатывает при обновление таблицы SUPPLY и изменяет поле STATUS с 0 на 1 при проведении поставки нового товара.
Так же разработаны следующие процедуры:
1) Процедура NEW_BILL, которая создаёт новую накладную, принимая товар от указанного поставщика в заданном количестве и добавляет его в таблицу ITEM, с увеличением стоимости на 20%.
2) Процедура NEW_SALE, служит для оформления новой продажи, создания чека, и расчёта стоимости по чеку.
Разработка клиентского приложения
Для визуального представления разработанной базы данных реализовано клиентское приложение в среде MS Visual Studio 2010. Данное приложение включает в себя различные функции по работе с данными, такие как: добавление, изменение, удаление, отображение отчетов. Далее будут представлены основные модули программы:
Модуль "Главная форма"
На главной форме расположен компонент MenuStrip.
1) Пункт меню "Файл" включает в себя такой подпункт как: Выход.
2) Пункт меню "Окна" позволяет выполнять типовые операции с окнами приложения определенные в платформе.Netframework.
3) Пункт меню "Приёмщик" включает в себя опции работы с поставками товара.
4) Пункт меня "Продавец" включает в себя опции работы с продаже товара.
Модуль "Продажа" предназначен для розничной продажи товара.
На модуле расположены следующие компоненты:
· Datagridview
· Bindingnavigator с двумя кнопками
Модуль "Товары" служит для отображения всех товаров в магазине.
На модуле расположены следующие компоненты:
· Datagridview
Модули "Поставщики", "Новая поставка" и "Продажи за месяц" аналогичны модулю "Товары".
Тестирование программного продукта
Последним этапом создания программного продукта является его тестирование и отладка. В ходе тестирования программы выявляются все ее недостатки и особенности работы. Обнаруженные недостатки устраняются в ходе отладки.
В результате было создано приложение, в котором реализованы различные функции:
- Добавление/удаление/редактирование записей;
- Работа с базой данных через визуальные компоненты.
- Формирование отчетов
Авторизация пользователя.
Рисунок 1.Авторизация пользователя.
Продажи за месяц
Рисунок 2. Продажи за месяц.
Продажа товара, форма, где заполняются товары, их количество, для последующей продажи.
Рисунок 3. Продажа товара.
Товары, отображает все товары, имеющиеся в магазине.
Рисунок 4. Товары.
Поставщики товара.
Рисунок 5. Поставщики товара.
Новая поставка товара.
Рисунок 6. Поставка товара.
Принятие заказа, на приход товара.
Рисунок 7. Принять заказ.
Добавление товара.
Рисунок 8. Добавление товара.
Руководство администратора
Приложение БД "Продуктовый магазин" предназначено для обеспечения розничной продажи товара, хранения информации о товарах, поставщиках, формирование отчетов о продаже товара, а так же учёта данных по расходу товара.
Для работы приложения необходимо наличие на компьютере СУБД Firebird 2.5 (необходимое место на диске 9 Мб).
Также для корректной работы программы требуется установить.NET Framework версии 4.0.
Минимальные требование для работы приложения:
- Процессор Pentium IV - совместимый процессор с тактовой частотой 1,2GHz
- Оперативная память (RAM) 256 MB
- Объем жесткого диска (HDD) 500 MB
Для работы клиентского приложения необходим.NET Framework не ниже чем 4.0 версия.
Руководство пользователя.
Для запуска приложения нужно открыть файл ProductMagazin.exe. После этого появится форма авторизации пользователя, где после корректно введенных данных откроется главная форма приложения, на которой будут доступны пункты меню "Продавец", либо "Приёмщик", в зависимости от того, под каким пользователем вошли в приложение.
Меню программы можно выбрать:
- меню "Продавец", в котором можно продавать товары, и смотреть остатки товара на складе;
- меню "Приёмщик", в котором можно посмотреть информацию о поставщиках, поставках, накладных поставках товара, принять товар, посмотреть продажи за последние 30 дней и список товаров.
- меню "Файл", в которым есть меню "Выход".
Для того, чтобы заказать товар, нужно нажать пункт меню "Заказать поставку", и выбрать поставщика товара.
Чтобы принять заказанный товар, нужно выбрать в меню пункт "Принять заказ", и выбрать количество товара для поставки и цену.
В пункте меню "Продажи за последние 30 дней" можно составить отчёт для печати о продажах за последний месяц.
При приёме товара в магазин, цена на товар устанавливается с увеличением на 20% от стоимости товара по накладной поставки товара.
При продаже товара, пробивается товарный чек продажи, с суммой всех покупок.
Заключение
В курсовом проекте была разработана БД "Продуктовый магазин". Данная система отвечает основным требованиям, предъявленным в задании к проекту. Программа была разработана на основе базового алгоритма работы с базой данных, была протестирована и отлажена. Данная работа выполнена в среде Visual Studio 2010, и в дальнейшем может быть изменена и усовершенствована.
В ходе проекта были рассмотрена деятельность продуктового магазина, поставлены и выполнены многие задачи. Спроектирована база данных. Разработана база данных, разработано клиентское приложение, реализующее функции хранения/добавления/изменения информации о товарах, поставщиках, накладных, и чеках.
Проект отвечает тем требованиям, которые были предъявлены к нему изначально, а именно:
- создано приложение позволяющие пользователям использовать данные хранимые в базе данных;
- предоставлены средства для добавления, редактирования, удаления данных;
- предоставлены средства просмотра данных;
- формирование отчетов и вывод на печать чека;
- создан интерфейс пользователя для работы с базой данных;
- разграничение прав пользователей.
В результате разработки получилось приложение, которое позволяет просматривать, добавлять и редактировать данные о товарах, поставщиках, накладных, а также предоставляет возможность печатать чек по продаже товара. В дальнейшем приложение можно дополнить. Например, реализовать добавления сотрудников, чтобы более подробно описать работу с товарами.
Список литературы
1. Работа с базами данных на языке C#. Технология ADO.NET: Учебное пособие / сост. О.Н, Евсеева, А.Б. Шамшев. - Ульяновск: УлГТУ. 2009, -170 с.
2. Зиборов В.В.MS Visual C++ в среде.NET. Библиотека программиста. - Спб. : Питер, 2012 - 320 с. : ил
3. Словарик по Firebird[сайт], URL: http://firebirdsql.su
4. Методические указания к выполнению лабораторных работ по дисциплине "Базы данных".
Размещено на Allbest.ru
...Подобные документы
Анализ предметной области - магазин "Канцелярские товары". Проектирование и реализация учебной базы данных магазина. Перечень хранимой информации: таблицы, поля, типы. Выделение сущностей, атрибутов, ключей, связей. Создание и запуск базовых запросов SQL.
курсовая работа [2,4 M], добавлен 09.08.2015Анализ предметной области и введение ограничений. Выделение базовых сущностей. Концептуальная модель данных. Построение схемы реляционной модели базы данных магазина одежды в третьей нормальной форме. Описание физической БД. Проектирование интерфейса.
курсовая работа [2,6 M], добавлен 20.11.2013Анализ предметной области - магазин "Канцелярские товары". Проектирование и реализация базы данных в MS SQL Server. Перечень хранимой информации: таблицы, поля, типы. Моделирование предметной области. Выделение сущностей, атрибутов, ключей, связей.
курсовая работа [2,2 M], добавлен 05.02.2015Цель создания информационной системы. Описание программного обеспечения. Ввод и редактирование информации о поставщиках и поставках товара. Создание базы данных "Магазин по продаже одежды". Разработка механизмов доступа ко всем построенным объектам.
курсовая работа [1,1 M], добавлен 16.11.2012Описание предметной области "Магазин по продаже компьютерных комплектующих". Построение ER и реляционной модели данных, сущности и связи. Создание ER и реляционной модели данных, запросов, представлений, хранимых процедур для предметной области.
курсовая работа [32,2 K], добавлен 15.06.2014Применение Microsoft Access в базах данных. Создание системы управления базами данных, обеспечивающей информационную работу магазина "Автозапчасти" и позволяющей сотрудникам магазина быстро просматривать ассортимент товара, наличие его на складе, цены.
курсовая работа [2,7 M], добавлен 13.10.2012Основные функции системы управления базами данных - описание структуры базы данных, обработка данных и управление данными. Компьютерный магазин как предметная область, ее технико-экономические характеристики. Построение логической и физической моделей.
курсовая работа [3,7 M], добавлен 02.07.2012Отличительные особенности языков программирования PHP и CSS. Возможности компактного многопоточного сервера баз данных MySQL. Системный анализ предметной области, проектирование ее инфологической модели. Создание базы данных и web-страниц сайта магазина.
курсовая работа [1,0 M], добавлен 15.01.2013Освоение методов проектирования баз данных и работы с базами данных в среде СУБД. Ведение точного учета поступивших и реализованных товаров и определение их остатка с помощью БД "Оптовый магазин". Преимущества и недостатки спроектированной базы данных.
курсовая работа [4,8 M], добавлен 12.01.2015Создание базы данных в СУБД MS ACCESS 2007 для оптимизации продаж в музыкальном магазине. Описание предметной области, разработка инфологической модели данных. Пользовательский интерфейс: информация о товаре, производителях, продавцах, отчет по чекам.
курсовая работа [847,3 K], добавлен 10.02.2014Проект предметной области комплекса задач базы данных по оплате отгруженного товара в рамках процесса планирования и учета выпуска изделий предприятия, их сдачи на склады и отгрузки готовой продукции заказчикам. База данных анализа отгруженного товара.
курсовая работа [66,8 K], добавлен 30.11.2010Разработка базы данных, позволяющей определять месторасположение на полке и код товаров в магазинных складах, количество и качество товаров. Концепция баз данных. Модели данных, описание данных проектирования. Разработка программного приложения.
курсовая работа [1,1 M], добавлен 13.06.2014Разработка базы данных магазина косметики, позволяющей вести учёт и анализ поставок и продаж. Описание предметной области, составление словаря понятий и терминов и системы функциональных зависимостей. Запись минимизированных запросов на языке SQL.
курсовая работа [612,6 K], добавлен 18.07.2012Описание состава реляционной базы данных как системы связанной информации, сохраняемой в двумерных таблицах. Основные функции CMS и изучение структуры сервера MySQL. Разработка системы выборок данных по товарам для интернет-магазина, таблицы покупателей.
курсовая работа [2,0 M], добавлен 21.04.2015Определение понятия и общее описание базы данных как упорядоченной информационной системы на носителе информации. Описание предметной области и разработка приложения базы данных, содержащей информацию о расписании занятий, для преподавателей кафедры.
курсовая работа [1,3 M], добавлен 08.08.2012Разработка базы данных "Учет движения товара в магазине", ее основные функции. Разработка инфологической, концептуальной и физической моделей, предметная область. Определение объектов и связей между объектами. Структура программного обеспечения.
курсовая работа [1023,7 K], добавлен 05.12.2012Концептуальное и инфологическое проектирование базы данных в системе управления базами данных Microsoft Access. Физическое проектирование базы данных "Магазин спорттоваров". Тестирование и отладка базы данных, составление руководства пользователя.
курсовая работа [6,7 M], добавлен 22.11.2022Описание объекта информатизации и предметной области. Анализ параметров объектов предметной области, сбор исходных данных. Архитектура проекта, создание интерфейса базы данных. Поиск по объектам, датам. Редактирование, отчеты. Назначение программы.
курсовая работа [2,3 M], добавлен 20.01.2016Исследование структуры и практическая разработка проектной модели реляционной базы данных "Аптечный склад" в MS Microsoft SQL Server 2005. Характеристика и создание возможностей по просмотру, редактированию, добавлению данных и обработке запросов в БД.
курсовая работа [793,3 K], добавлен 21.06.2011Выполнение операций, хранения, редактирования, систематизации данных. Рассмотрение подсистем разрабатываемой системы управления базами данных продуктового магазина. Разработка алгоритма функционирования системы и приложения для работы с базой данных.
курсовая работа [399,1 K], добавлен 26.08.2019