Разработка базы данных для магазина сувениров

Автор работы: Пользователь скрыл имя, 17 Мая 2013 в 02:03, курсовая работа

Краткое описание

В данном курсовом проекте в качестве предметной области рассматривается магазин сувениров «Сказка». Основная деятельность магазина – оптовая продажа другим компаниям, которые заносятся в базу данных магазина. В данном примере рассматривается только функции отдела продаж. К таким функциям относится работа с клиентами, то есть утверждение определенного заказа, цен на товары, а также стоимости всего заказа.

Вложенные файлы: 1 файл

Отчет.docx

— 3.04 Мб (Скачать файл)

В данном курсовом проекте в качестве предметной области  рассматривается магазин сувениров  «Сказка». Основная деятельность магазина – оптовая продажа другим компаниям, которые заносятся в базу данных магазина. В данном примере рассматривается  только функции отдела продаж. К  таким функциям относится работа с клиентами, то есть утверждение  определенного заказа, цен на товары, а также стоимости всего заказа.

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

 

 

Пользователи

БД

Автоматизируемые функции

Требуемые

данные

Объект БД

Менеджер

  • Формирование справочника товаров
  • Формирование данных о клиентах (заказчиках)
  • Формирование заказов
  1. Справочник товаров
  2. Клиенты

Формы (Договоры, Заказчики, Справочник товаров)

Бухгалтер

  • Формирование отчетности

1. Справочник товаров

2. Клиенты

3. Заказы

Запросы

Формы (Договоры, Заказчики, Справочник товаров)

Отчеты (Прибыль за месяц, Продажи за все время)

Запросы (Продажи, Выборка  товаров по заказчику, Проданные  товары, Самый популярный товар)

Директор

  • Определение успешной/безуспешной деятельности магазина

1. Отчеты

Формы (Договоры, Заказчики, Справочник товаров)

Отчеты (Прибыль за месяц, Продажи за все время)

Запросы (Продажи, Выборка  товаров по заказчику, Проданные  товары, Самый популярный товар)


 

 

 

 

 

 

ER-схема данной базы данных:

 

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

Таблицы, входящие в базу данных магазина:

1.

2.

 

 

 

 

 

3.

4.

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

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

Одной из форм является форма «Договоры»:

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

Private Sub Кнопка13_Click()

CurrentDb.Execute "DELETE * FROM Договоры"

End Sub

Также на форме присутствует кнопка «Запросы», при нажатии на которую, открывается форма с одноименным  названием, в которой находятся  все созданные запросы.

Код программы для кнопки «Выборка товаров по заказчикам»:

Private Sub Кнопка0_Click()

On Error GoTo Err_Кнопка0_Click

Dim stDocName As String

stDocName = ChrW(1042) & ChrW(1099) & ChrW(1073) & ChrW(1086) & ChrW(1088) & ChrW(1082) & ChrW(1072) & ChrW(32) & ChrW(1090) & ChrW(1086) & ChrW(1074) & ChrW(1072) & ChrW(1088) & ChrW(1086) & ChrW(1074) & ChrW(32) & ChrW(1087) & ChrW(1086) & ChrW(32) & ChrW(1079) & ChrW(1072) & ChrW(1082) & ChrW(1072) & ChrW(1079) & ChrW(1095) & ChrW(1080) & ChrW(1082) & ChrW(1072) & ChrW(1084)

DoCmd.OpenQuery stDocName, acNormal, acEdit

Exit_Кнопка0_Click:

Exit Sub

Err_Кнопка0_Click:

MsgBox Err.Description

Resume Exit_Кнопка0_Click

End Sub

Также с Меню можно просмотреть  сформированные отчеты:

Именно эти отчеты являются выходной информацией.

В нижней части меню расположены  две кнопки для вывода на печать с подтверждением от пользователя:

Private Sub Кнопка31_Click()

On Error GoTo Err_Кнопка31_Click

Dim stDocName As String

Dim MyForm As Form

stDocName = ChrW(1047) & ChrW(1072) & ChrW(1082) & ChrW(1072) & ChrW(1079) & ChrW(1099)

Set MyForm = Screen.ActiveForm

DoCmd.SelectObject acTable, stDocName, True

DoCmd.PrintOut

DoCmd.SelectObject acForm, MyForm.Name, False

Exit_Кнопка31_Click:

Exit Sub

Err_Кнопка31_Click:

MsgBox Err.Description

Resume Exit_Кнопка31_Click

End Sub

 

Запросы

  1. Выборка товаров по заказчикам – происходит выборка проданных товаров для определенного заказчика.

PARAMETERS Наименование Text ( 255 );

SELECT [Справочник товаров].[Наименование товара], Sum([Товар по договору].Количество) AS [Sum-Количество], Sum([Цена за единицу]*[Количество]) AS Стоимость

FROM [Справочник товаров] INNER JOIN (Заказчики  INNER JOIN (Заказы INNER JOIN [Товар по договору] ON Заказы.[Номер договора] = [Товар  по договору].Договор) ON Заказчики.ИНН = Заказы.Заказчик) ON [Справочник товаров].КодТовара = [Товар по договору].Товар

GROUP BY [Справочник товаров].[Наименование  товара], Заказчики.Наименование

HAVING (((Заказчики.Наименование)=[Наименование]));

  1. Продажи – указывается заказчик и денежная сумма, которую он заплатил за товар.

SELECT Заказчики.Наименование, Sum([Количество]*[Цена за единицу]) AS [Сумма к оплате]

FROM [Справочник товаров] INNER JOIN (Заказчики  INNER JOIN (Заказы INNER JOIN [Товар по договору] ON Заказы.[Номер договора] = [Товар  по договору].Договор) ON Заказчики.ИНН = Заказы.Заказчик) ON [Справочник товаров].КодТовара = [Товар по договору].Товар

GROUP BY Заказчики.Наименование;

  1. Проданные товары – для отбора товаров с указанием их количества и цены, проданных магазином.

SELECT [Справочник товаров].[Наименование товара], [Справочник товаров].[Цена за единицу], Sum([Товар по договору].Количество) AS [Sum-Количество], Sum([Цена за единицу]*[Количество]) AS Сумма

FROM [Справочник товаров] INNER JOIN (Заказы INNER JOIN [Товар по договору] ON Заказы.[Номер договора] = [Товар по договору].Договор) ON [Справочник товаров].КодТовара = [Товар по договору].Товар

GROUP BY [Справочник товаров].[Наименование товара], [Справочник товаров].[Цена за единицу];

  1. Самый популярный товар – определение самого продаваемого товара.

SELECT Max([Проданные товары].[Наименование товара]) AS [Max-Наименование товара], Max([Проданные товары].[Sum-Количество]) AS Количество

FROM [Проданные товары];

  1. Прибыль за месяц – расчет денежной суммы, полученной за последний месяц.

SELECT Заказы.[Номер договора], [Товар по договору].Товар, [Товар по договору].Количество, [Количество]*[Цена за единицу] AS Сумма

FROM [Справочник товаров] INNER JOIN (Заказчики  INNER JOIN (Заказы INNER JOIN [Товар по договору] ON Заказы.[Номер договора] = [Товар  по договору].Договор) ON Заказчики.ИНН = Заказы.Заказчик) ON [Справочник товаров].КодТовара = [Товар по договору].Товар

WHERE (((Month([Дата]))=11))

GROUP BY Заказы.[Номер договора], [Товар по договору].Товар, [Товар по договору].Количество, [Количество]*[Цена за единицу];

 

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное 

образовательное учреждение

высшего профессионального  образования

«Санкт-Петербургский  государственный

инженерно-экономический  университет»

 

Кафедра информационных систем в экономике

 

 

 

КУРСОВОЙ  ПРОЕКТ

по дисциплине «Базы данных»

на тему:

«Разработка базы данных для магазина сувениров»

 

 

Выполнил: Лапицкая А.

студент 3 курса   спец. 080801

                             

Преподаватель: Голоскоков К.П.

 

Должность: Профессор, доктор технических наук

 

Оценка: __________ Дата:  

Подпись: 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Санкт-Петербург

2012


Информация о работе Разработка базы данных для магазина сувениров