СУБД Предприятия

Автор: Пользователь скрыл имя, 10 Сентября 2011 в 22:43, курсовая работа

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

В данном курсовом проекте объектом исследования является БД промышленных предприятий.
Объектом автоматизации является доступ и хранение информации о производственной деятельности предприятий.
Целью создания БД является:
— надежное хранение информации;
— изменение (добавление, удаление, обновление) информации о предприятиях, цехах и выпускаемой продукции;
— уменьшение времени доступа к необходимой информации по предметной области.

Оглавление

Введение ………………………………………………………………………. 6
1 Описание функционирования промышленных предприятий …………… 7
2 Постановка задачи ………………………………………………………….. 9
3 Концептуальное программирование СУБД ………………………………. 10
3.1 Описание схемы объект-отношение …………………………………….. 10
3.2 Обоснование выбора модели данных …………………………………… 11
3.3 Нормализация таблиц ……………………………………………………. 15
4 Программная реализация СУБД
4.1 Анализ существующих СУБД
4.2 Описание таблиц
4.3 Описание реализованных запросов к БД
4.4 Описание разработанных форм
4.5 Описание сформированных отчетов
4.6 Описание макросов и модулей
4.7 Функционально-логическая схема СУБД
5 Уровни доступа к СУБД
6 Архивация и восстановление данных
6.1 Архивация и восстановление устаревших данных
6.2 Восстановление данных при аппаратных сбоях
Выводы
Список использованных источников
Приложение А Техническое задание
Приложение Б Отчеты
Приложение В Руководство пользователя, инсталляция, реализация
Приложение Г Листинг программных модулей

Файлы: 1 файл

Курсовой проект (Предприятие).doc

— 2.05 Мб (Скачать)

       При условии: [Формы]![Service]![КП] <> 3. Параметры  «ЗапускПрограммы»:

      — Имя функции: Redirect2Form ("Просмотр планов выпуска")

       При условии: [Формы]![Service]![КП] = 3. Параметры «Сообщение»:

      — Сообщение: Доступ запрещен!

      — Сигнал: Да

      — Тип: Предупреждающее!

      — Заголовок: Внимание!

    2) «ДобавитьМеню». Параметры:

      — Название меню: Добавление

      — Имя макроса: Подменю - Добавить план

         — Текст строки состояния: Добавление

      Название  макроса: «Подменю – Добавить план».

      Макрос  содержит в себе команды, которые  затем используются в подменю  в макросе «Подменю – Планы  выпуска».

      Макрокоманды  с параметрами:

    1. Имя макрокоманды: «План на месяц».

       При условии: [Формы]![Service]![КП] <> 3. Параметры «ЗапускПрограммы»:

      — Имя функции: Redirect2Form ("Добавление плана - Шаг 1")

       При условии: [Формы]![Service]![КП] = 3. Параметры  «Сообщение»:

      — Сообщение: Доступ запрещен!

      — Сигнал: Да

      — Тип: Предупреждающее!

         — Заголовок: Внимание!

    1. Имя макрокоманды: «План на изделие».

       При условии: [Формы]![Service]![КП] <> 3. Параметры  «ЗапускПрограммы»:

      — Имя функции: Redirect2Form ("Добавление плана - Шаг 2")

       При условии: [Формы]![Service]![КП] = 3. Параметры  «Сообщение»:

      — Сообщение: Доступ запрещен!

      — Сигнал: Да

      — Тип: Предупреждающее!

         — Заголовок: Внимание!

      Название  макроса: «Смещение».

      Макрос  выполняет смещение и/или изменение  размеров окна, для которого он вызван.

      Макрокоманды  с параметрами:

    1. «СдвигРазмер». Параметры:

      — По правому краю: 2см

      — По левому краю: 2см

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

      Название  макроса: «Уровень доступа».

      Макрос  выполняет вывод сообщения о  текущих привилегиях пользователя.

      Макрокоманды  с параметрами:

    1. Условие: ([InExitState]=0) And ([Список_УровеньДоступа]=1). Макрокоманда «Сообщение». Параметры:

      — Сообщение: Внимание! Вы зашли как  Администратор! Вам доступно изменение любых данных СУБД "Предприятие"

      — Сигнал: Да

      — Тип: Предупреждающее!

      — Заголовок: Уровень доступа

    1. Условие: ([InExitState]=0) And ([Список_УровеньДоступа]=2). Макрокоманда «Сообщение». Параметры:

      — Сообщение: Внимание! Вы зашли как  Менеджер предприятия! Вы можете изменять и просматривать информацию по собственному предприятию!

      — Сигнал: Да

      — Тип: Предупреждающее!

      — Заголовок: Уровень доступа

    1. Условие: ([InExitState]=0) And ([Список_УровеньДоступа]=3). Макрокоманда «Сообщение». Параметры:

      — Сообщение: Внимание! Вам доступна только статистическая информация о предприятиях базы!

      — Сигнал: Да

      — Тип: Предупреждающее!

      — Заголовок: Уровень доступа

      Макрос  выполняется при выходе из формы  «Вход в СУБД».

      Результат выполнения макроса показан на рисунке 4.61. 

Рисунок 4.61 — Сообщение при входе в СУБД администратором 

      4.6.2 Модули 

      В курсовом проекте реализован один модуль под названием «myFunctions». Рассмотрим функции, которые в нем реализованы. 

      Функция Go2MainForm(). Функция вызывается при нажатии на кнопку «Вход» в форме «Вход в СУБД». Выполняет чтение таблицы «Доступ – Пользователи» и проверку введенных значений «Логин» и «Пароль» с хранящимися в таблице. Если значения не совпали, то код пользователя становится равным «3». Далее происходит открытие формы «Service» и передача параметров код пользователя и код предприятия (если необходимо). Затем сервисная форма скрывается и открывается «Главная форма».

      Функция SetFormParams(ChangeFormName As String). ChangeFormName — название формы (строковая переменная). Функция вызывается при открытии форм «Главная форма» и «Работа с предприятиями», в которых выполняет блокирование кнопок в зависимости от уровня доступа.

      Функция AppendLookupTable(cbo As ComboBox, NewData As String) As Integer. cbo — элемент типа ComboBox, NewData  — новое значение (строковая переменная). Функция выполняет добавление отсутствующего значения в справочную таблицу. Используется для добавления новых значений в таблицы «Город» и «Тип изделия». Функция возвращает идентификатор acDataErrAdded, если значение было успешно добавлено или acDataErrContinue и сообщение об ошибке в противном случае.

      Функция Go2Bed. Функция спрашивает у пользователя подтверждение на выход из приложения и в случае положительного ответа завершает работу MS Access.

      Функция Redirect2Form(openFormName As String). openFormName – название открываемой формы (строковая переменная). Функция выполняет закрытие текущей и открытие новой формы с названием openFormName. Также в зависимости от значения openFormName, некоторым формам передаются дополнительные параметры.

      Функция CompareDate() As Boolean. Функция выполняет сравнение дат открытия и реконструкции для добавляемого цеха (форма «Список цехов – Добавление»), а также сравнение дат открытия нового цеха и предприятия, в котором цех открывается. Если дата открытия предприятия старше даты открытия цеха или дата открытия цеха старше даты реконструкции, то функция возвращает False, иначе — True. 

      4.7 Функционально-логическая схема  СУБД 

      Функционально-логическая схема представлена ниже. Все переходы к формам (кроме открытия форм «… - Добавить», «Главная форма», «О программе») происходят с помощью функции Redirect2Form. 
 
 
 
 
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Рисунок 4.62 — Функционально-логическая схема  СУБД 
5 УРОВНИ ДОСТУПА К СУБД
 

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

     Главным пользователем любой СУБД является администратор, которому предоставляется  возможность изменять и редактировать  любые данные в СУБД и выполнять  архивацию устаревших данных. Также  в данном ПП реализованы еще два уровня доступа: менеджер предприятия и просмотр статистики. Рассмотрим реализацию подробнее.

     При входе в СУБД пользователю предоставляется возможность ввести логин и пароль для входа с одним из двух уровней доступа: «Администратор» или «Менеджер предприятия». При входе происходит проверка логина и пароля по таблице «Доступ – Пользователи» и при нахождении соответствия, считываются уровень доступа и предприятие, если необходимо. При неправильном вводе или отсутствии данных происходит открытие БД с самым низким уровнем доступа.

     Для реализации была создана дополнительная форма «Service», в которой хранятся текущий код пользователя и код предприятия. Передача параметров осуществляется функцией Go2MainForm. В процессе работы с приложением эта форма скрыта (параметр Visible = False).

     При открытии форм «Главная форма» и «Работа  с предприятиями» вызывается функция SetFormParams, которая блокирует на них кнопки в зависимости от уровня доступа:

     1) уровень «Менеджер предприятия». На форме «Главная форма» недоступна кнопка «Открыть БД». На форме «Работа с предприятиями» недоступны кнопки «Список предприятий» и «Архивация и восстановление».

     2) уровень «Просмотр статистики».  Доступна лишь одна кнопка  на форме «Главная форма» —  «Просмотр информации СУБД».

     Пользователь с уровнем доступа «Менеджер предприятия» может изменять данные, добавлять планы выпуска и просматривать отчеты только для своего предприятия (параметры указываются администратором в таблице «Доступ – Пользователи»). 
 

 

6 АРХИВАЦИЯ  И ВОССТАНОВЛЕНИЕ ДАННЫХ 

      6.1 Архивация и восстановление устаревших  данных 

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

     В зависимости от предметной области  некоторую информацию архивируют стандартными архиваторами, другую пересылают в новую БД (таким образом, уменьшается время доступа к нужной информации). Новая БД может быть как точной копией оригинала, так и содержать лишь ее часть. Некоторая информация с определенной периодичностью удаляется и из архива, т.к. абсолютно не нужна пользователю. В данной БД была выбрана реализация архивации в специальную таблицу.

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

     Архивация производится в специально предназначенную  для этого таблицу «АРХИВ». Данные переносятся из таблиц «План выпуска  на месяц» и «План выпуска».

     Все процессы архивации, восстановления и  очистки архива зависят от администратора СУБД «Предприятия» и выполняются  через форму «Архивация и восстановление». 

      6.2 Восстановление данных при аппаратных  сбоях 

      Компьютерная  техника имеет достаточно сложную структуру и принципы функционирования. И хотя ее создатели стараются сделать периферию как можно надежней, а работу программного обеспечения бессбойной и оперативной, тем не менее, возможны ситуации, когда данные могут быть физически повреждены (вирусная атака; физическое повреждение носителя данных; неаккуратное использование приложения, приведшее к удалению БД). Причины сбоев и поломок могут и не зависеть от разработчиков, например внезапное отключение электроэнергии. Но, создавая БД, необходимо учесть и эти варианты путем сохранения все либо часть таблиц БД.

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

Информация о работе СУБД Предприятия