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

Автор: Пользователь скрыл имя, 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 Мб (Скачать)

      При добавлении цеха все данные, кроме  даты реконструкции, являются обязательными!

      Внимание! При удалении цеха будут удалены все изделия с планами выпуска без возможности восстановления. Будьте внимательными!

      В.3.4 Редактирование изделий

 

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

      При добавлении изделия все данные являются обязательными!

      Внимание! При удалении изделия будут удалены планы выпуска без возможности восстановления. Будьте внимательными!

      В.3.5 Архивация и восстановление данных

 

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

  1. Выполнить архивацию
  2. Восстановить все из архива
  3. Очистить архив

      При архивации в таблицу "АРХИВ" будут занесены все планы выпуска  изделий с годом выпуска меньшим, чем текущий!

      Очистка архива удаляет все данные без возможности восстановления! 

     В.4 Планы выпуска  

      Из  главного окна можно попасть на форму "Управление планами выпуска". Здесь можно просмотреть существующие и добавить новые планы выпуска 

 

       В.4.1 Просмотр планов

 

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

      В.4.2 Добавление плана на месяц

 

      Нажав на кнопку "Добавление плана выпуска" мы переходим к первой стадии добавления плана - добавлению плана на месяц. Здесь находится список текущих планов на месяц и есть возможность добавить новый (кнопка "Добавить") или удалить ненужный (кнопка "Удалить"). Также есть возможность просмотреть или распечатать отчет по выделенному плану на месяц или для всех планов на месяца (причем данные будут либо для всех предприятий, если вы Администратор, либо для одного предприятия, если вы - Менеджер предприятия).

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

      В.4.3Добавление плана на изделие

 

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

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

     В.5 Отчеты  

      Из  главного окна можно попасть на форму "Просмотр информации СУБД". В открывшемся окне нам предлагается просмотреть следующие отчеты:

  1. Каталог предприятий и ассортимент
  2. Отчет выпуска изделий по предприятиям
  3. Отчет выпуска изделий по месяцам

      Это окно — единственное, доступное пользователю с уровнем доступа "Гость". 
 

 

Приложение  Г 

ЛИСТИНГ ПРОГРАММНЫХ МОДУЛЕЙ 

' Функция  выполняет открытие главной и  сервисной форм

Function Go2MainForm()

   

    Dim Flag As Boolean

    Dim rst As Recordset

   

    ' Открытие сервисной формы и  скрытие ее с экрана

    DoCmd.Close acForm, "Service"

    DoCmd.OpenForm "Service"

    [Form_Service].Visible = False

   

    ' Переходим к считыванию таблицы

    Set rst = CurrentDb.OpenRecordset("Доступ - Пользователи", dbOpenTable, dbReadOnly)

    rst.MoveFirst

    Flag = False

    ' Пока не просмотрены все записи  ищем по паре логин-пароль

    Do While Not (rst.EOF)

        ' Если нашли пользователя, то  вывести данные на сервисную  форму

        If ((rst.Fields(0) = [Form_Вход в СУБД].Поле_Логин) And (rst.Fields(1) = [Form_Вход в СУБД].Поле_Пароль)) Then

            If (rst.Fields(2) = "Администратор") Then

                [Form_Service].КП.Value = "1"

            Else:

                [Form_Service].КП.Value = "2"

            End If

            [Form_Service].КПр.Value = rst.Fields(3)

            Flag = True

        End If

        If (Flag = True) Then

            GoTo m1

        End If

        rst.MoveNext

    Loop

    ' Если нет исходных данных - низший  уровень доступа

    If (Flag = False) Then

        [Form_Service].КП.Value = 3

        [Form_Service].КПр.Value = ""

    End If

   

    GoTo m1

   

m1:

    ' Закрываем форму входа

    DoCmd.Close acForm, "Вход в СУБД"

    DoCmd.OpenForm "Главная форма" 

End Function 

' Устанавливаем  параметры форм в зависимости  от уровня доступа

' Входные  данные: название открытой формы

Function SetFormParams(ChangeFormName As String) 

    Select Case ChangeFormName

        Case "Главная форма"

        ' Настройки главной формы

            Select Case [Form_Service].КП.Value

                Case 1

                    [Form_Главная форма].Кнопка_ОткрытьБД.Enabled = True

                    [Form_Главная форма].Кнопка_ОткрытьПредприятия.Enabled = True

                    [Form_Главная форма].Кнопка_ОткрытьПланы.Enabled = True

                Case 2

                    [Form_Главная форма].Кнопка_ОткрытьБД.Enabled = False

                    [Form_Главная форма].Кнопка_ОткрытьПредприятия.Enabled = True

                    [Form_Главная форма].Кнопка_ОткрытьПланы.Enabled = True

                Case 3

                    [Form_Главная форма].Кнопка_ОткрытьБД.Enabled = False

                    [Form_Главная форма].Кнопка_ОткрытьПредприятия.Enabled = False

                    [Form_Главная форма].Кнопка_ОткрытьПланы.Enabled = False

            End Select

        Case "Работа с предприятиями"

        ' Настройки формы работы с предприятиями

            Select Case [Form_Service].КП.Value

                Case 1

                    [Form_Работа с предприятиями].Кнопка_ОткрытьСписокПредприятий.Enabled = True

                    [Form_Работа с предприятиями].Кнопка_ОткрытьАрхив.Enabled = True

                Case 2

                    [Form_Работа с предприятиями].Кнопка_ОткрытьСписокПредприятий.Enabled = False

                    [Form_Работа с предприятиями].Кнопка_ОткрытьАрхив.Enabled = False

            End Select

    End Select

End Function 

' Функция,  выполняющая добавление отсутствующих  данных в справочную таблицу

' Входные  данные: cbo - объект типа ComboBox, NewData - новое  значение

' Выходные  данные: результат работа функции  (константы acDataErrContinue и acDataErrAdded)

Public Function AppendLookupTable(cbo As ComboBox, NewData As String) As Integer

On Error GoTo m1

   

    Dim rst As DAO.Recordset

     

    AppendLookupTable = acDataErrContinue

    ' Если данные присутствуют, то  выполнить проверку и добавление данных

    If Not (IsNull(NewData)) Then

        ' Спрашиваем разрешение у пользователя

        Response = MsgBox("Значение [" & NewData & "] отсутствует в списке." & vbCrLf & "Для добавления нажмите  ОК.", vbOKCancel + vbQuestion, "Добавление  отсутствующего значения")

        Select Case Response

            Case 1

                ' добавляем данные

                Set rst = CurrentDb.OpenRecordset(cbo.RowSource)

                rst.AddNew

                rst(1) = NewData

                rst.Update

                rst.Close

                AppendLookupTable = acDataErrAdded

            Case 2

                Exit Function

        End Select

    End If 

m2:

    Set rst = Nothing

    Exit Function

m1:

    MsgBox "Ошибка " & Err.Number & ": " & Err.Description, vbInformation, " в функции AppendLookupTable"

    Resume m2

   

End Function 

' Функция,  которая спрашивает у пользователя  разрешение на выход из приложения

Public Function Go2Bed()

   

    If MsgBox("Вы действительно хотите  выйти?", vbOKCancel, "Подтверждение  выхода") = vbOK Then

        DoCmd.Quit

    End If

   

End Function 

' Функция  перехода между формами

' Входные  данные: название открываемой формы

Public Function Redirect2Form(openFormName As String)

           

    Dim stLinkCriteria As String

    ' Закрываем текущую форму

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