1. Месяц
-Текстовое;
- Размер 8;
- Обязательное поле, так как все изделия выпускаются в каком-то месяце;
- Совпадения допускаются, так как изделия могли быть выпущены в один и тот же месяц.
2. Количество изделий
-Тип длинное целое;
-Размер 4;
-Совпадения допускаются, так как могло быть выпущено одинаковое количество изделий;
-Пустых строк нет, так как в любом случае было выпущено какое-либо количество изделий.
3. Цена изделия
-Тип длинное целое;
-Размер 5;
-Совпадения допускаются, так как цена может быть одинаковой у разных изделий;
-Пустых строк нет, у всех изделий есть своя цена.
4. Цех
-Тип длинное целое;
-Размер 2;
-Обязательное поле, так как любое изделие выпускается на каком-то цеху;
-Совпадения допускаются, так как разные изделия выпускаются на одном цеху;
-Подстановка: из таблицы «Цех», поле «Название цеха»
-Внешний ключ.
5. Изделие
-Тип длинное целое;
-Размер 2;
-Обязательное поле, так как обязательно выпускается како-то изделие;
-Совпадения допускаются, так как может выпускаться одно и то же изделие;
-Подстановка: из таблицы «Изделие», поле «Название изделия»;
-Внешний ключ.
Таблица 6.2.6
Выпускает | |||||
Месяц | Количество изделий | Цена изделия | Цех | Изделие | Код Выпуска |
Январь | 2568 | 107 | Любительский | Бочки | 2 |
Февраль | 78 | 34 | Любительский | Чайники | 7 |
Март | 1000 | 100 | Любительский | Болты | 9 |
Апрель | 200 | 101 | Любительский | Чайники | 12 |
Май | 567 | 754 | Любительский | Бочки | 13 |
Июнь | 155 | 24 | Любительский | Бочки | 24 |
Июль | 4535 | 788 | Любительский | Двигатели | 29 |
Август | 636 | 235 | Любительский | Бочки | 30 |
Сентябрь | 42 | 520 | Любительский | Шайбы | 31 |
Октябрь | 453 | 445 | Любительский | Кровати | 32 |
Январь | 535 | 53 | Конечный | Шайбы | 33 |
Февраль | 539 | 278 | Конечный | Чайники | 34 |
Март | 455 | 876 | Конечный | Болты | 35 |
Апрель | 41 | 7786 | Конечный | Кровати | 36 |
Октябрь | 572 | 963 | Конечный | Столы | 37 |
Ноябрь | 754 | 912 | Конечный | Сковородки | 38 |
Декабрь | 476 | 724 | Конечный | Двигатели | 39 |
Январь | 336 | 26 | Промежуточный | Двигатели | 40 |
Февраль | 561 | 54 | Промежуточный | Бочки | 41 |
Сентябрь | 513 | 35 | Промежуточный | Болты | 42 |
Август | 45 | 96 | Промежуточный | Двигатели | 44 |
Март | 4 | 5468 | Промежуточный | Сковородки | 45 |
Апрель | 8462 | 33 | Древний | Столы | 46 |
Сентябрь | 545 | 56543 | Древний | Болты | 47 |
Ноябрь | 654 | 377 | Любительский | Компьютеры | 48 |
Декабрь | 8974 | 850 | Любительский | Двигатели | 49 |
Май | 6463 | 55 | Конечный | Компьютеры | 50 |
Июнь | 543 | 12 | Конечный | Шайбы | 51 |
Июль | 894 | 4856 | Конечный | Чайники | 52 |
Август | 5641 | 861 | Конечный | Болты | 53 |
Сентябрь | 563 | 48 | Конечный | Столы | 54 |
Апрель | 521 | 265 | Промежуточный | Компьютеры | 55 |
Май | 23 | 2645 | Промежуточный | Сковородки | 56 |
Июнь | 452 | 52 | Промежуточный | Чайники | 57 |
Июль | 553 | 83 | Промежуточный | Компьютеры | 58 |
Декабрь | 441 | 333 | Промежуточный | Кровати | 59 |
Ноябрь | 478 | 599 | Промежуточный | Бочки | 60 |
Приложение Б
РУКОВОДСТВО ПОЛЬЗОВАТЕЛЯ
Б.1 Общие сведения
Разработанная БД предназначена для предоставления пользователю всей необходимой информации для автоматизации производительной деятельности промышленного предприятия.
Данная БД имеет удобный графический интерфейс. При запуске программы, появляется главное меню, содержащее все пункты, необходимые для работы с приложением (см. Приложение Д рис. Д.1). При необходимости добавить, просмотреть или изменить информацию нужно выбрать помощью клавиш управления курсором или <Tab> необходимую кнопку с названием формы, и нажать <Enter> или открыть форму кликом мыши.
Для запуска программы требуется запустить файл «Course.mdb» в СУБД MS Access.
Б.2 Ввод, удаление, добавление и редактирование данных
Ввод данных осуществляется в формах с помощью клавиатуры. Для ввода данных необходимо выделить указателем мыши необходимое поле или перейти на него с помощью клавиш управления курсором или <Tab>, и ввести данные. Аналогичным образом осуществляется редактирование данных.
Добавление данных осуществляется в формах так же, как и во всех БД.
На удаление записей пользователи «Guest» не имеют права. Удалять записи из таблиц или форм могут только пользователи «Adminstrator» и «User», используя соответствующие клавиши в формах.
Б.3 Просмотр отчетов
Для просмотра отчетов необходимо вызвать пункт меню Главное меню->открыть отчет. Либо пункт меню Главное меню->открыть форму->отчеты.
Б.4 Использование справочной информации и выход из программы
Справочная информация в БД. В целом для осуществления необходимых действий требуется читать надписи на кнопках или рядом с ними и нажимать на эти кнопки.
Выход из приложения MS Access осуществляется при выборе пункта меню Главное меню->Выход.
Приложение В
ЛИСТИНГИ ПРОГРАММНЫХ МОДУЛЕЙ
1. Модуль: контроль над вводом данных.
Option Compare Database
Sub c()
Dim t As Integer
DoCmd.OpenForm "Предприятие1", acNormal
DoCmd.OpenForm "Цех1", acNormal
If [Forms]![Предприятие1]![дата открытия] < [Forms]![Цех1]![дата ввода в строй] Then
t = MsgBox("Данные введены, верно", vbOKOnly, " Сообщение")
Else: t = MsgBox("Сообщение: цех был введен в строй, до открытия предприятия", vbOKOnly, " Сообщение")
End If
End Sub
2. Модуль: группы пользователей.
Private Sub Form_Open(Cancel As Integer)
myvalue = InputBox("Если вы администратор либо пользователь, введите свой пароль, если гость – нажмите ОК")
If myvalue = "" Then
Кнопка 13.Visible = False
Кнопка 15.Visible = False
Кнопка 23.Visible = False
Кнопка 16.Visible = False
Кнопка 45.Visible = False
Кнопка 48.Visible = False
Кнопка 49.Visible = False
Кнопка 50.Visible = False
Кнопка 51.Visible = False
Кнопка 52.Visible = False
Кнопка 53.Visible = False
Else
If myvalue = "I am admin" Then
Кнопка 16.Visible = True
Кнопка 23.Visible = True
Кнопка 15.Visible = True
Кнопка 13.Visible = True
Кнопка 33.Visible = True
Кнопка 8.Visible = True
Кнопка 38.Visible = True
Else
If myvalue = "User" Then
Кнопка 48.Visible = False
Кнопка 49.Visible = False
Кнопка 50.Visible = False
Кнопка 51.Visible = False
Кнопка 52.Visible = False
Кнопка 53.Visible = False
Else: MsgBox ("введите правильный пароль!!!")
DoCmd.Close acForm, "Главная"
End If
End If
End If
End Sub
3. Модуль: добавление в форму.
Option Compare Database
Sub Verifying() 'Процедура добавления элемента в список
Dim str, tmp1, tmp2 As String
Dim c, i, t, f As Integer
Dim rst As DAO.Recordset
Dim flag As Boolean
str = ""
Do While str = ""
str = InputBox("Введите название", "Ввод данных") 'Вводим новый элемент
If str = "" Then 'Предотвращение пустой строки
t = MsgBox("Строка не может быть пустой", vbInformation, "Инфо")
End If
Loop
DoCmd.OpenForm "Предприятие1", acNormal 'Открываем форму
DoCmd.GoToRecord acDataForm, "Предприятие1", acNewRec
Set rst = Forms("Предприятие1").Recordset
flag = False
rst.MoveFirst
While Not rst.EOF
If rst![Название предприятия] = str Then
flag = True
GoTo m001:
End If
rst.MoveNext
Wend
m001:
If flag Then
t = MsgBox("Такой элемент в списке уже есть. Добавление невозможно.", vbCritical)
Else
t = MsgBox("Вы действительно желаете добавить новый элемент списка?", vbQuestion + vbYesNo, "Вы уверены?")
If t = 6 Then
rst.AddNew
rst![Название предприятия] = str
rst.Update
z = MsgBox("Добавленно новое название: " & str, vbInformation)
ElseIf t = 7 Then 'отказ от добавления
t = MsgBox("Прервано пользователем!", vbOKOnly + vbCritical, "Error")
End If
End If
DoCmd.OpenForm "Предприятие1", acNormal 'Открываем форму
End Sub