Автор Анна Евкова
Преподаватель который помогает студентам и школьникам в учёбе.

Проектирование БД для работника склада

Содержание:

Введение

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

Но для того, чтобы пользователь мог ввести свои данные в БД и при необходимости вывести это данные на экран, были разработаны СУБД. СУБД – совокупность программных и лингвистических средств общего или специального назначения, обеспечивающих управление созданием и использованием баз данных.

На рынке программного обеспечения (далее ПО) есть много различных СУБД, такие как Oracle, MS SQL, My SQL, Firebird, PostgreSQL. Использование данных СУБД зависит от возлагаемых на них задач. В крупных фирмах и организациях могут использоваться Oracle или MS SQL или другие аналоги, обрабатывающие миллионы транзакций к БД. Данные СУБД отличаются от того же My SQL. Это огромные программные решения, имеющие в своем составе инструментарий для создания форм, без использования конкретного языка программирования, или для интуитивной и понятной разработки отчетности для пользователей.

1. Аналитическая часть

1.1. Описание предметной области

Ведение базы товара, хранящегося на складах. Ведение информации о сотрудниках, работающих на складе. Учет товара, поступающего на склад посредством накладных. Хранение информации о накладных.

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

  1. товару,
  2. складу,
  3. сотруднику склада,
  4. накладным.

Пользователю будут доступны следующие формы отчетов:

  1. Общая информация по товару, хранящемуся на конкретном складе.
  2. Информация о поступившей накладной и товаре в ней указанном.
  3. Информация по сотрудникам, работающим на конкретном складе.

Данная БД будет многопользовательской. БД должна поддерживать одновременный доступ нескольких пользователей к ней.

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

  1. Сотрудник кадрового отдела;
  2. Сотрудник склада;
  3. Директор склада.
  4. Директор фирмы складов.

Для роли Сотрудник кадрового отдела должна быть доступна формы заполнения информации о сотруднике склада и его должности.

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

Для роли Директор склада должны быть доступны формы и информация по складу, к которому привязан директор.

Для роли Директор фирмы складов должны быть доступны все формы и информация по товару на складах.

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

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

Критерии отбора:

  1. Цена;
  2. Интерфейс разработки
  3. Перенос разработанной схемы под конкретную СУБД.
  4. Избыточность в интерфейсе.

Сравнение инструментария представлено в таблице 1:

Таблица 1. Сравнение инструментария

Инструментарий

Цена

Интерфейс

Перенос

Избыточность

MS Visio

11927 рублей

Интуитивно понятный

-

Нет

Erwin

от 60000 рублей

Сложный в освоении неподготовленным пользователям

+

Да

MySQL Workbench

Бесплатно

Сложный в освоении неподготовленным пользователям

+

Да

dbForge Studio

от 11000 тыс рублей

Сложный в освоении неподготовленным пользователям

+

Да

HeidiSQL

Бесплатно

Сложный в освоении неподготовленным пользователям

+

Да

Мой выбор пал на MS Visio. Не смотря на его цену, он входит в состав набора офисных программ MS Office. В нем нет лишних функций, за которые можно переплатить, и которые нужно долго осваивать, обладает интуитивно понятным интерфейсом. В рамках разработки MS Visio подойдет лучше всего. Остальные программные комплексы требуют небольшого или долгого освоения по времени.

Мой выбор для использования СУБД пал на следующие СУБД:

  1. Oracle,
  2. MS SQL,
  3. MS Access;
  4. My SQL.

При первичном рассмотрении Oracle, MS Access, MS SQL и MY SQL от MS SQL и MY SQL пришлось отказаться по причине того, что для них нужно будет создавать отдельно формы на определенном языке программирования. Oracle и MS Access уже имеют встроенный функционал по разработке форм. Но при более глубоком анализе использование Oracle имеет свои подводные камни, такие как вычислительные ресурсы. Для данной СУБД нужно будет разворачивать отдельную серверную электронно-вычислительную машину (далее ЭВМ). Из данного списка остается MS Access.

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

На начальном этапе выделено четыре базовые сущности:

  1. Сотрудник;
  2. Накладная;
  3. Склад;
  4. Товар.

Для сущности Сотрудник определены следующие атрибуты:

  1. Идентификатор;
  2. Имя;
  3. Фамилия;
  4. Имя отчество;
  5. Должность;
  6. Дата приема на работу.

Для сущности Накладная определены следующие атрибуты:

  1. Идентификатор накладной;
  2. Идентификатор работника, принявшего накладную;
  3. Идентификатор склада;
  4. Номер накладной;
  5. Дата приема;
  6. Дата создания накладной.

Для сущности Склад определены следующие атрибуты:

  1. Идентификатор склада;
  2. Наименование склада;
  3. Адрес склада;
  4. Размер склада.

Для сущности Товар определены следующие атрибуты:

  1. Идентификатор;
  2. Наименование товара;
  3. Размер товара;
  4. Количество товара;
  5. Описание товара;
  6. Категория товара.

Отношение сущностей показано на рисунке 1:

Рисунок 1. Первичные связи и атрибуты.

На рисунке 1 есть не разрешенные связи многие ко многим, данные связи нужно привести в отношения один ко многим, так же нужно внести две справочные сущности по Сотруднику и по Товару и ввести дополнительную сущность для Накладной.

Для разрешения связей многим ко многим определены следующие сущности:

  1. Товар склад;
  2. Сотрудник-склад.

Для корректного ввода информации по товару и сотруднику определены сущности:

  1. Категория;
  2. Должность;

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

Для сущности Категория определены атрибуты:

  1. Идентификатор
  2. Категория.

Для сущности Должность определены атрибуты:

  1. Идентификатор;
  2. Должность.

Для сущности Товар в накладной определены атрибуты:

  1. Идентификатор;
  2. Наименование товара;
  3. Размер товара;
  4. Количество товара;
  5. Описание товара;
  6. Идентификатор категории.
  7. Идентификатор накладной

Для сущности Товар-склад определены атрибуты:

  1. Идентификатор склада;
  2. Идентификатор товара.

Для сущности Сотрудник-склад определены атрибуты:

  1. Идентификатор склада;
  2. Идентификатор сотрудника.

На рисунке 2 представлено отображение всех связей и отношений сущности с определенными им атрибутами.

Рисунок 2. Связи, атрибуты, сущности.

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

На рисунке 3 представлена общая схема разработанной базы данных в среде СУБД MS Access.

Рисунок 3. Общая схема БД в MS Access.

На рисунке 4 представлена структура таблицы Product (Товар) в среде MS Access.

Рисунок 4. Схема таблицы Product (Товар).

На рисунке 5представлена структура таблицы Categories (Категории) в среде MS Access.

Рисунок 5. Схема таблицы Categories (Категории).

На рисунке 6 представлена структура таблицы Store (Склад) в среде MS Access.

Рисунок 6. Схема таблицы Store (Склад).

На рисунке 7 представлена структура таблицы WorkStore (Сотрудник-Склад) в среде MS Access.

Рисунок 7. Схема таблицы WorkStore (Сотрудник-Склад).

На рисунке 8 представлена структура таблицы Worker (Сотрудник) в среде MS Access.

Рисунок 8. Схема таблицы Worker (Сотрудник).

На рисунке 9 представлена структура таблицы Positinon (Должность) в среде MS Access.

Рисунок 9. Схема таблицы Positinon (Должность).

На рисунке 10 представлена структура таблицы Invoice (Накладная) в среде MS Access.

Рисунок 10. Схема таблицы Invoice (Накладная).

На рисунке 11 представлена структура таблицы ProdStore (Товар-Склад) в среде MS Access.

Рисунок 11. Схема таблицы ProdStore (Товар-Склад).

На рисунке 12 представлена структура таблицы ProdInInvoice (Товар в накладной) в среде MS Access.

Рисунок 12. Схема таблицы ProdInInvoice (Товар в накладной).

2. Инструкция по работе с базой данных.

2.1 Последовательность шагов по заполнению данных вручную.

На начальном этапе должны быть заполнены справочные таблицы Должность и Категории. Данные в таблицах можно заполнить следующими способами:

  1. Вручную через заполнение полей в таблице;
  2. С помощью оператора языка SQL Insert.

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

Ручное заполнение данных в таблицах осуществляется следующим образом:

  1. Открываете файл с БД. Файл имеет названия DataB.accdb.
  2. В списке таблиц нужно найти таблицу Position или Categories. В каком порядке заполнять таблицы не имеет значения.
  3. Двойным нажатием по таблице откроется окно для ручного заполнения данных в БД.
  4. В строки таблицы нужно внести данные и нажать Сохранить(Save) или комбинацию клавиш CTRL+S.

Для данных таблиц оператор Insert будет иметь следующий вид:

  1. Для таблицы Должность – INSERT INTO Position (Posname) VALUES ('Ведущий специалист');
  2. Для таблицы Категория – INSERT INTO Categories ( Catname ) VALUES ('Компьютер');

После заполнения таблиц Должность и Категории нужно заполнить данными таблицы Работник и Склад. Данные таблицы необходимо заполнить данными, чтобы была возможность заполнять данные по Товару и Накладным.

Данные в таблицах Работник и Склад можно заполнить следующими способами:

  1. Вручную через заполнение полей в таблице;
  2. С помощью оператора языка SQL Insert.

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

Ручное заполнение данных в таблицах Работник и Склад осуществляется следующим образом:

  1. Открываете файл с БД. Файл имеет названия DataB.accdb.
  2. В списке таблиц нужно найти таблицу Worker или Store. Сначала заполняются данные по таблице Store, затем по таблицы Worker.
  3. Двойным нажатием по таблице откроется окно для ручного заполнения данных в БД.
  4. В строки таблицы нужно внести данные и нажать Сохранить(Save) или комбинацию клавиш CTRL+S.

Для данных таблиц оператор Insert будет иметь следующий вид:

  1. Для таблицы Работник – INSERT INTO Worker ( Name, Lastname, Midname,IDPosition,Workexp,IDStore) VALUES ('Иван', 'Иванов', 'Иванович', 1, '01.10.2016', 1);
  2. Для таблицы Склад – INSERT INTO Store ( NameStore,Address, Size ) VALUES ('Основной склад','Узбекистан, Ташкент, Ташкент г., Богишамол улица, 12','200 кв. м');
  3. Между данными таблиц Работник и Склад должна быть быть установлена связь через таблицу Сотрудник-Склад – INSERT INTO WorkStore ( Idworker, Idstore ) VALUES (1,1).

Заполнение всех остальных таблиц будет осуществляться через формы, описанные в разделе 2.2.

2.2. Описание заполнения данных в таблицы через формы.

Ввод данных в таблицу Должность осуществляется с помощью формы, представленной на рисунке 13.

C:\Users\Денис\Desktop\Гавно Крава\Скриншоты форм\Добавление должности.bmp

Рисунок 13. Добавление данных в Должность.

В текстовое поле вводится определенное значение и нажимается кнопка Добавить. По нажатию кнопки введенное значение будет занесено в таблицу Должность.

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

C:\Users\Денис\Desktop\Гавно Крава\Скриншоты форм\Добавление категории.bmp

Рисунок 14. Добавление данных в Категории.

В текстовое поле вводится определенное значение и нажимается кнопка Добавить. По нажатию кнопки введенное значение будет занесено в таблицу Категории.

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

C:\Users\Денис\Desktop\Гавно Крава\Скриншоты форм\Добавление работника.bmp

Рисунок 15. Добавление данных в таблицу Сотрудник.

Нужно заполнить поля, представленные на рисунке 15, и нажать кнопку Добавить. По нажатию кнопки введенное значение будет занесено в таблицу Сотрудник и будут внесены данные в таблицу Сотрудник-Склад для установления связи между таблицами Сотрудник и Склад.

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

Рисунок 16. Добавление данных в таблицу Склад.

Нужно заполнить поля, представленные на рисунке 16, и нажать кнопку Добавить. По нажатию кнопки введенное значение будет занесено в таблицу Склад.

Ввод данных в таблицу Товар осуществляется с помощью формы, представленной на рисунке 17.

C:\Users\Денис\Desktop\Гавно Крава\Скриншоты форм\Добавление товара.bmp

Рисунок 17. Добавление данных в таблицу Товар.

Нужно заполнить поля, представленные на рисунке 17, и нажать кнопку Добавить. По нажатию кнопки введенное значение будет занесено в таблицу Товар и будут внесены данные в таблицу Товар-Склад для установления связи между таблицами Товар и Склад.

Ввод данных в таблицу Накладная осуществляется с помощью формы, представленной на рисунке 18.

Рисунок 18. Добавление данных в таблицу Накладная и таблицу Товар в Накладной.

Нужно заполнить поля, представленные на рисунке 18, и нажать кнопку Добавить. По нажатию кнопки введенные значения будут занесены в таблицу Накладная, Товар в накладной. После занесения данных в таблицу Товар в накладной занесенные данные будут реплицированы в таблицу Товар.

2.3. Разработка интерфейса и реализация проекта

На рисунке 19 представлен полный концепт интерфейса. Для роли Директора склада и роли Директора складов доступен одинаковый интерфейс за исключением, что роль Директор склада взаимодействует с данными только по своему складу.

Рисунок 19. Полное представление интерфейса.

На рисунке 20 представлен интерфейс для роли Сотрудник склада.

Рисунок 20. Интерфейс сотрудника отдела кадров.

На рисунке 21 представлен интерфейс для роли Сотрудник склада.

Рисунок 21. Интерфейс сотрудника склада.

В дальнейшем будут представлены общие формы для каждой роли. На рисунке 22 представлена форма для просмотра списка сотрудников.

Рисунок 22. Форма просмотра списка сотрудников

На рисунке 23 представлена форма для просмотра списка сотрудников.

Рисунок 23. Форма просмотра списка накладных и списка товара, входящих в накладную

На рисунке 24 представлена форма просмотра списка товаров.

Рисунок 24. Форма просмотра списка товаров.

На рисунке 25 представлена форма для просмотра списка складов.

Рисунок 25. Форма просмотра списка складов

На рисунке 26 представлена форма для просмотра списка категорий.

Рисунок 26. Форма просмотра списка категорий.

На рисунке 27 представлена форма для просмотра справочника должностей.

Рисунок 27. Форма просмотра списка должностей.

На Рисунок 28 представлена форма для добавления должности.

C:\Users\Денис\Desktop\Гавно Крава\Скриншоты форм\Добавление должности.bmp

Рисунок 28. Форма добавления должности.

На рисунке 29 представлена форма для добавления категории.

C:\Users\Денис\Desktop\Гавно Крава\Скриншоты форм\Добавление категории.bmp

Рисунок 29. Форма добавления категории.

На рисунке 30 представлена форма для добавления сотрудника.

C:\Users\Денис\Desktop\Гавно Крава\Скриншоты форм\Добавление работника.bmp

Рисунок 30. Форма добавления сотрудника.

На рисунке 31 представлена форма для добавления данных по складу.

Рисунок 31. Форма добавления склада

На рисунке 32 представлена форма для добавления данных по товару.

C:\Users\Денис\Desktop\Гавно Крава\Скриншоты форм\Добавление товара.bmp

Рисунок 32. Форма добавления товара.

На рисунке 33 представлена форма для добавления данных по накладным.

Рисунок 33. Форма добавления накладной.

Заключение

В рамках курсового проекта по дисциплине «Базы данных» был разработан программный продукт прикладного уровня «Проектирование БД для работника склада» при использовании системы управления базами данных Microsoft Office Access.

В ходе работы были приобретены практические навыки создания и модификации структуры таблиц, создания связей между таблицами, навыки редактирования данных и проектирования форм для реальных баз данных, а также навыки создания отчётов и запросов в режиме конструктора СУБД MS Access.

Список литературы

1. Видеосамоучитель. Microsoft Access 2007, А. Днепров, Питер, 2008

2. Access 2007. Эффективное использование , В. Е. Кошелев, Бином-Пресс, 2008 г.

3. Кренке, Д. Теория и практика построения баз данных / Д. Кренке. – СПб: ПИТЕР, 2005 г.

4. Википедия – Свободная энциклопедия [электронный ресурс]. – Режим доступа: ru.wikipedia.org