8. Список доставок по заказам. По каждой доставке в БД хранятся следующие характеристики

·  Дата доставки

·  Время доставки

·  Суммарный вес заказа

·  Суммарный объем заказа

·  Статус доставки

·  Вид доставки

·  Удаленность от МКАД – км. (0, если в пределах)

·  Стоимость доставки

Доступ к данному разделу БД имеют менеджеры по продажам, администраторы, клиенты, курьеры, менеджеры отдела доставки. Редактирование данного раздела могут осуществлять администраторы и менеджеры

Для предметной области существуют следующие ограничения целостности:

Условия обязательного наличия определенных полей рассмотрены выше в описании характеристик различных разделов БД. Ограничения на доступ сотрудников к определенным таблицам контролируются запросом на ввод пароля. Необходимые пароли сотрудникам предоставляются администратором.

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

Среди входных документов и других источников формирования внутренней базы данных интернет-магазина мы выделили:

1) Прайс-лист (поступает от поставщиков)

Номер Артикул Название Категория Цена Габариты Гарантия Кол-во

2) Корзина заказов (поступает с сайта)

№ Заказа
Категория товара
Подкатегория товара
Название товара

3) Оформленный заказ (поступает с сайта)

№ заказа
Логин
Дата заказа
Время заказа
Стоимость заказа
Способ оплаты
Способ получения
Суммарный вес заказа
Суммарный объем заказа
Дата доставки
Время доставки
Удаленность от МКАД
Стоимость доставки
Вид доставки

4) Регистрация клиентов (поступает с сайта)

Логин
Пароль
E-mail
ФИО
Адрес
Дата рождения
Пол
Образование
Телефон 1
Телефон 2
Телефон 3
Дата регистрации
Номер кредитной карты
Имя владельца
Проверочный код
Срок истечения

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

Среди выходных документов мы выделили:

1)  Товарный чек

Товарный чек

www.boris.ru

(495) 666-66-66

Товарный чек №

Дата

Продавец: ООО Борис

ID Наименование Кол-во Цена

Всего: сумма

Сумма прописью:

Оформлено: ООО Борис (печать)

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

Получил:______________________(Подпись)

2)  Гарантийный талон

Гарантийный талон

www.boris.ru

Гарантийный талон №

Дата

ID Наименование Кол-во Гарантия мес.

Оформлено: ООО Борис (печать)

3) Маркетинговый отчет

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

Дата

Категория товара Пол Количество

4) Отчет о новинках интернет-магазина

Новинки

Дата

Наименование товара Средняя оценка Цена

5) Сводка доходности по категориям товара

Сводка доходности по категориям

Дата

Категория Сумма

Всего

6) Отчет по самым рейтинговым товарам магазина

Товары с наивысшими оценками

Дата

Наименование Средняя оценка

7) Отчет по самым популярным товарам магазина

Хиты продаж

Дата

Наименование Продано

8) История заказов

История заказов

Дата

Логин

№ заказа Дата заказа Стоимость заказа

9) История покупок

История покупок

Дата

№ заказа

Логин

Наименование Цена

Сумма

10) Отчет по точкам выдачи (для сайта)

Точки выдачи

Название точки Адрес точки Время работы
2. Выбор средств/методологии проектирования и СУБД

При проектировании базы данных интернет-магазина после описания предметной области необходимо выбрать метод построения инфологической модели (ER-модели) и СУБД, в которой будет реализован проект.

Для построения ER-модели была выбрана программа CA ERwin Data Modeler 7.3 (ERwin). Мы выбрали эту программу, потому что она позволяет наглядно отображать сложные структуры данных. Удобная в использовании графическая среда упрощает разработку базы данных и автоматизирует множество трудоемких задач, уменьшая сроки создания высококачественных и высокопроизводительных транзакционных баз данных. Наиболее важными для нас являются следующие возможности данного CASE-средства.

·  Поддержка нотации IDEF1x

·  Возможность совместной работы группы проектировщиков

·  Описание структуры БД с помощью визуальных средств

·  Автоматическая генерация файлов данных для любого типа СУБД

·  Уменьшение числа рутинных операций, что облегчает и сокращает работу

Существует большое число СУБД. По функциональным возможностям СУБД бывают настольные (FoxPro, MS Access, Paradox) и корпоративные (Oracle, MS SQL Server, MySQL). Сравнивая настольные и корпоративные СУБД, можно отметить следующее: настольные СУБД просты в использовании, стоимость их эксплуатации дешевле; корпоративные СУБД имеют возможности администрирования, работы в Интернете, поддерживают большой объем данных и быстродейственны.

Для построения самой базы данных нами была выбрана СУБД MS Access. Поскольку целью данной работы не является разработка и внедрение масштабной базы интернет-магазина и разработка интернет-сайта, а база разрабатывается в учебных целях – выбирать корпоративную СУБД нецелесообразно. Microsoft Access является наиболее популярной системой управления базами данных для операционной системы Windows. Возможности разработчиков программного обеспечения, а также методы и технологии решения этих задач постоянно изменяются и совершенствуются. И с каждой новой версией Access такие решения становятся достоянием самого широкого сообщества разработчиков и пользователей.

Очень важным для нас является возможность просматривать и редактировать данные не только в виде таблицы, но и в виде формы. Представление БД в виде таблицы позволяет наблюдать сразу несколько записей одновременно, однако часто вид Таблица не позволяет полностью видеть всю информацию на экране. Формы позволяют забыть о неудобствах, возникающих при работе с таблицами, имеющими большое количество полей. В режиме Форма можно все внимание уделить одной записи, не пользуясь прокруткой для поиска нужного поля в длинной череде столбцов таблицы, а имея перед глазами всю информацию. Также для удобства работы с формой на ней можно разместить Элементы управления, например кнопки. Хочется отметить, что, так как мы проектируем базу данных интернет-магазина, то формы хорошо подойдут для эмуляции работы сайта.

При печати таблиц и запросов информация выдается практически в том виде, в котором хранится. Часто возникает необходимость представить данные в виде отчетов, которые имеют традиционный вид и легко читаются. Подробный отчет включает всю информацию из таблицы или запроса, но содержит заголовки и разбит на страницы с указанием верхних и нижних колонтитулов. Их можно создавать как самостоятельно (в режиме конструктора), так и с помощью мастера.

Мастер баз данных Microsoft Access автоматически формирует таблицы, запросы, формы и отчеты из шаблонов стандартных типов. Это полнофункциональные приложения с оптимизированной структурой данных и полным набором необходимых таблиц, форм, запросов и отчетов. Мастер запросов отбирает информацию базы данных, включая данные из нескольких таблиц, и затем определяет, как представить эти данные в соответствии с требованиями пользователей.

3. Построение инфологической (концептуальной) модели предметной области

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

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

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

-  должна быть понятна лицам, принимающим участие в создании и использовании.

Описание объектов ПО и связей между ними оказывает наибольшее влияние на проектирование структуры базы данных. Представим описание объектов и связей между ними в виде Базовой ER-модели:

Представим описание объектов и связей между ними в виде логической ER-модели, основанной на методологии IDEF1X и созданной в выбранном для проектирования CASE-средстве CA ERwin Data Modeler.


4. Проектирование логической структуры базы данных

На этапе логического проектирования необходимо определить типы и длины полей. После построения ER-модели в среде CA ERwin Data Modeler следует использовать метод прямого инжиниринга, позволяющий автоматически сгенерировать описание и структуру спроектированной базы данных в среде выбранной СУБД. Схема базы данных Интернет-магазина в среде MS ACCESS будет выглядеть следующим образом:


Товар (id_товара (счетчик(Длинное целое)), Цена_товара (Денежный), Возврат_разр (Логический), Вес_товара (Числовой(Одинарное с плавающей точкой)), Длина (Числовой(Одинарное с плавающей точкой)), Ширина (Числовой(Одинарное с плавающей точкой)), Высота (Числовой(Одинарное с плавающей точкой)), Изображение_товара (Поле объекта OLE), Уник_хар-ки (Поле МЕМО), Название_товара (Текстовый(200)), Категория_товара (Текстовый(100)), Подкатегория_товара (Текстовый(100)), Гарантия_мес (Числовой(Байт)))

Поставщик (Назв_поставщика (Текстовый(18)), E-mail (Текстовый(100)), Факс (Текстовый(30)), Телефон(Текстовый(50)), Прайс_лист (Гиперссылка))

Поставщик/категория (Категория_товара (Текстовый(100)), Назв_поставщика (Текстовый (18)))

Товар/оценка (id_товара (Числовой(Длинное целое)), Логин (Текстовый(30)), Оценка(Числовой(байт)))

Покупатель (Логин (Текстовый(30)), Пароль (Текстовый(30)), E-mail (Текстовый(100)), ФИО (Текстовый(100)), Адрес (Поле МЕМО), Дата_рождения (Дата/время), Дата_регистрации (Дата/время), Пол (Текстовый(1)), Образование (Текстовый(30)))

Покупатель/телефон (Телефон (Текстовый(50)), Логин (Текстовый(30))

Кредитная_карта (Номер_кред_карты (Текстовый(16)), Имя_владельца (Текстовый(100)), Проверочный_код (Числовой(Целое)), Срок_истечения (Дата/время), Логин (Текстовый(30)))

Заказ/товар (№_заказа (Числовой(Длинное целое)), id_товара (Числовой(Длинное целое))

Заказ (№_заказа (Числовой(Длинное целое)), Дата_заказа (Дата/время), Время_заказа (Дата/время), Статус_заказа (Текстовый(50)), Стоимость_заказа (Числовой(Длинное целое)), Способ_оплаты (Текстовый(30)), Способ_получения (Текстовый(30)), Логин (Текстовый(30)), Табельный_номер (Числовой(Длинное целое)), Название_точки(Текстовый(50)))

Доставка (№_заказа (Числовой(Длинное целое)), Суммарный_вес_заказа (Числовой(целое)), Суммарный_объем_заказа (Числовой(Длинное целое)), Дата_доставки(Дата/время), Время_доставки (Текстовый(30)), Удаленность_МКАД_км (Числовой (байт)), Стоимость_доставки (Денежный), Табельный_номер (Числовой(Длинное целое)), Статус_доставки (Текстовый(30)), Вид_доставки (Текстовый(40)))

Сотрудник (Табельный_номер (Счетчик(Длинное целое)), ФИО (Текстовый(100)), E-mail (Текстовый(100)), Должность (Текстовый(50)), Факс (Текстовый(30)), Телефон(Текстовый(50)))

Точка_выдачи (Название_точки (Текстовый(50)), Адрес_точки (Поле МЕМО), Время работы (Текстовый(15)), Схема_проезда(Поле объекта OLE))

Точка_выдач/Телефон (Телефон (Текстовый(50), Название_точки (Текстовый(50))

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

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

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

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

Помимо упомянутых нами на стадии описания предметной области ограничений целостности, во время разработки базы данных интернет-магазина нами также были выявлены многие другие ограничения. Большинство из них контролируются непосредственно в таблицах. Поскольку ввод всех данных в таблице осуществляется через разработанные нами вспомогательные формы, также существует достаточно большое количество ограничений, которые контролируются средствами конструктора форм, а также при помощи встроенного в среду MS ACCESS визуального объектно-ориентированного языка Visual Basic. Далее будут перечислены все ограничения целостности, которые будут контролироваться в данном курсовом проекте, а также выбранные способы реализации контроля целостности для каждого из ограничений.

Ограничения, контролируемые в таблицах:

1. Текстовое поле «E-mail» в таблице «Покупатель» не может содержать пробелов или кириллических символов

Аналогичным образом ограничение на данное поле контролируется в таблицах «Сотрудник» и «Поставщик»

2. Текстовое поле «ФИО» в таблице «Покупатель» не может содержать цифр

Аналогичным образом ограничение на данное поле контролируется в таблице «Сотрудник»

3. Значения поля «Дата_рождения» в таблице «Покупатель» не может превышать текущую дату и должно быть определенного вида, что контролируется маской ввода

4. Поле «Дата_регистрации» в таблице «Покупатель», как правило, содержит дату добавления записи в таблицу, не должно превышать текущую дату и должно быть определенного вида, который контролируется маской ввода

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

6. Поле «Образование» в таблице «Покупатель» содержит фиксированный набор значений, контролируемый списком подстановки

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

Аналогичным образом ограничение на данное поле контролируется в таблицах «заказ», «кредитная карта» и «товар/оценка»

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

Аналогичным образом ограничение на данное поле контролируется в таблицах «поставщик», «сотрудник» и «точка выдачи». Ограничение подобного рода установлено и на поле «факс» в таблицах «сотрудник» и «точка выдачи»

9. Поле «id_товара» в таблице «Товар/оценка» содержит фиксированный набор значений, источником которых является таблица «товар»

Аналогичным образом ограничение на данное поле контролируется в таблице «Заказ товар»

10. Поле «Оценка» в таблице «Товар/оценка» содержит фиксированный набор значений и позволяет оценить клиенту выбранный товар в диапазоне от 1 до 10

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

12.Поле «Название_точки» в таблице «Точка выдачи/телефон» содержит фиксированный набор значений, источником которых является таблица «Точка выдачи»

Аналогичным образом ограничение на данное поле контролируется в таблице «заказ»

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

14. Поле «Номер_кред_карты» в таблице «Кредитная карта» должно содержать только цифры и быть определенного вида, который контролируется маской ввода

15. Поле «Имя_владельца» в таблице «Кредитная карта» должно содержать только латинские буквы

16. Поле «Проверочный_код» в таблице «Кредитная карта» должно быть определенного вида, который контролируется маской ввода

17. Поле «Срок_истечения» в таблице «Кредитная карта» должно быть определенного вида, который контролируется маской ввода. При этом для использования кредитной карты срок её истечения должен превышать текущую дату или быть равным ей

18. Поле «№_заказа» в таблице «Заказ» содержит фиксированный набор значений, источником которых является таблица «Заказ товар»

Аналогичным образом ограничение на данное поле контролируется в таблице «доставка»

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

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

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

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

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

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

Аналогичным образом ограничение на данное поле контролируется в таблице «доставка»

25. Поле «Удаленность_МКАД» в таблице «Доставка» содержит ограничение на дальность расстояния осуществляемой доставки. Доставка ограничена радиусом 60-ти км. От МКАД

26. Поле «Статус_доставки» в таблице «Доставка» содержит фиксированный набор значений, контролируемый списком подстановки

27. Поле «Вид_доставки» в таблице «Доставка» содержит фиксированный набор значений, контролируемый списком подстановки

Ограничения, контролируемые на формах посредством Visual Basic:

1. Для организации ограничений на доступ определенных сотрудников к различным таблицам через формы на них предусмотрен ввод пароля (1111)

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

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

Dim stDocName As String

Dim stLinkCriteria, pas As String

pas = InputBox("Введите пароль", "Пароль")

If pas = "1111" Then

stDocName = ChrW(1055) & ChrW(1086) & ChrW(1089) & ChrW(1090) & ChrW(1072) & ChrW(1074) & ChrW(1097) & ChrW(1080) & ChrW(1082) & ChrW(47) & ChrW(1082) & ChrW(1072) & ChrW(1090) & ChrW(1077) & ChrW(1075) & ChrW(1086) & ChrW(1088) & ChrW(1080) & ChrW(1103)

DoCmd.OpenForm stDocName, , , stLinkCriteria

Else

MsgBox ("Пароль неверный")

End If

2. При редактировании формы «Доставка» осуществляется пересчет всех вычисляемых полей (Стоимость, Суммарный вес, Суммарный объем) при смене номера заказа, а также определяется вид доставки в зависимости от влияющих на его выбор факторов (Стоимость, Суммарный вес, Суммарный объем)

Private Sub №_заказа_Click()

Суммарный_вес_заказа.Requery

Суммарный_вес_заказа = Суммарный_вес_заказа.ItemData(0)

Суммарный_объем_заказа.Requery

Суммарный_объем_заказа = Суммарный_объем_заказа.ItemData(0)

Стоимость_заказа.Requery

Стоимость_заказа = Стоимость_заказа.ItemData(0)

If Удаленность_МКАД_км.Value = 0 Then Вид_доставки.Value = "Курьер"

If (Стоимость_заказа.Value > 30000) Or (Суммарный_вес_заказа.Value >= 2.5) Or (Суммарный_объем_заказа.Value > 4000) Then Вид_доставки.Value = "Легковой транспорт"

If (Суммарный_вес_заказа.Value >= 23) Or (Суммарный_объем_заказа.Value > 25000) Then Вид_доставки.Value = "Грузовой транспорт"

If Вид_доставки.Value = "Курьер" Then Стоимость_доставки.Value = 250

If Вид_доставки.Value = "Легковой транспорт" Then Стоимость_доставки.Value = 350 + Удаленность_МКАД_км.Value * 15

If Вид_доставки.Value = "Грузовой транспорт" Then Стоимость_доставки.Value = 450 + Удаленность_МКАД_км.Value * 20

3. При редактировании поля «Удаленность_от_МКАД_км» на форме «Доставка» осуществляется пересчет стоимости доставки в зависимости от его значения

Private Sub Удаленность_МКАД_км_LostFocus()

If Вид_доставки.Value = "Курьер" Then Стоимость_доставки.Value = 250

If Вид_доставки.Value = "Легковой транспорт" Then Стоимость_доставки.Value = 350 + Удаленность_МКАД_км.Value * 15

If Вид_доставки.Value = "Грузовой транспорт" Then Стоимость_доставки.Value = 450 + Удаленность_МКАД_км.Value * 20

End Sub

4. При обращении к форме «заказ» на основании номера заказа автоматически пересчитывается стоимость заказа

Private Sub №_заказа_Click()

Стоимость_заказа.Requery

End Sub

5. При обращении к форме «заказ» при определении способа получения заказа контролируется возможность ввода точки доставки в зависимости от его выбора

Private Sub Способ_получения_Click()

If Способ_получения.Value = "Доставка" Then

Название_точки.Value = " "

Название_точки.Visible = False

End If

If Способ_получения.Value = "Самовывоз" Then

Название_точки.Visible = True

End If


Информация о работе «Проектирование базы данных интернет-магазина в СУБД MS ACCESS»
Раздел: Информатика, программирование
Количество знаков с пробелами: 50692
Количество таблиц: 14
Количество изображений: 18

Похожие работы

Скачать
77159
2
0

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

Скачать
184575
9
11

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

Скачать
17787
0
9

... работы. Поэтому мы будем заострять внимание в первую очередь на вопросах, связанных с организацией системы управления базой данных нашего проекта, который будет называться «Интернет-м@г@зин – Техника для жизни». Вся необходимая для работы информация, а точнее все данные будут содержаться в специальных таблицах-отношениях. Все таблицы являются связанными мужду собой, при этом выполняются все ...

Скачать
37906
3
17

... описании предметной области (п.1.2), а также путём опроса экспертов и изучения документальных источников,/8,9,10/ определим круг запросов и задач, которые предполагается решать с использованием базы данных "Отдел Сбыта Преприятия". Задачи: ·          сведения о поставщиках и заказчиках; ·          сведения о накладных, договорах и счетах; ·          сведения о товарах; ·          возможность ...

0 комментариев


Наверх