1. Макрогруппа Добавление
Содержит макросы «Ввод оборудования», «Ввод марки оборудования», «Ввод транспорта», « Ввод марки транспорта», «Ввод инструмента», «Ввод ГПС», «Ввод ГАУ», «Ввод ТНС», обеспечивающие ввод новой записи в соответсвющую таблицу. При этом в каждом макросе обеспечивается проверка ввода значения в каждое поле записи и проверка повторяющегося табельного номера новой записи.
В макросе «Ввод оборудования» предусмотрено автоматическое распознование кластера, к которому следует отнести новое оборудование.
Макрос «Ввод Кластера» предназначен для ввода новой записи в таблицу «Кластер», вызывается он из макроса «Ввод оборудования» в случае если новому оборудованию не соответствует ни один из кластеров.
2. Макрогруппа Удаление
Содержит в себе макросы « Удаление оборудования», « Удаление марки оборудования», «Удаление транспорта», « Удаление марки транспорта», «Удаление инструмента», «Удаление ГПС», «Удаление ГАУ», «Удаление ГПС», «Удаление ТНС», «Удаление Кластера» которые используются для удаления записи в соответствующей таблице по введенному табельному номеру. В каждом макросе обеспечивается проверка ввода пустого табельного номера.
3. Макрогруппа autoexec
Содержит в себе макрос для автоматического запуска главной формы при открытии БД.
4. Макрогруппа Главная
Содержит в себе макрос “Выход”, который выполняет действие - закрытие БД.
5. Макрогруппа Обновление – макрос «ГПС» обеспечивает обновление списка транспортного оборудования в форме «Содержимое ГПС», макрос «Замена» обеспечивает обновление списка заменяющего оборудования в форме «Замена оборудования».
6. Макрогруппа Открыть – выполняется из главной формы и содержит следующий макросы:
- Открыть Обр . Открытие формы «Обрабатывающее оборудование»
- Открыть Тр. Открытие формы «Транспортное оборудование»
- Открыть МаркаОбр. Открытие формы «Марка обрабатывающего оборудования»
- Открыть МаркаТр. Открытие формы «Марки транспортного оборудования»
- Открыть Кластер. Открытие формы «Кластер»
- Открыть ИП. Открытие формы «Инструменты, приспособления»
- Открыть ГПС. Открытие формы «ГПС»
- Открыть ГПСдоб. Открытие формы «ГПС-добавление»
- Открыть ГАУ. Открытие формы «ГАУ»
- Открыть ТНС. Открытие формы «АТНСС»
- Открыть замену. Открытие формы «Замена оборудования»
- Открыть отчет. Открытие отчета «Обрабатывающее оборудование»
- Открыть отчетТр. Открытие отчета «Транспортное оборудование»
Листинг программного кода макросов приведен в приложении.
Кроме макросов в приложении использованы 17 запросов, созданных при помощи встроенного конструктора запросов Access.
1. Запрос ДЛ,Диам,Част по Марке
Определяет параметры оборудования (Длина, диаметр обрабатываемых деталей, наибольшая частота вращения гл. шпинделя) по марке оборудования.
2. Запрос №Кластера по Марке
Определяет номера кластера по параметрам : Длина, диаметр обрабатываемых деталей и наибольшей частота вращения гл. шпинделя.
3. Запрос №Кластеров Проверка
Определяет число записей в запросе Запрос №Кластера по Марке .
4. ЗАПРОС Обрабатывающее оборудование
Объединяет две таблицы: Обрабатывающее оборудование и Марка обрабатывающего оборудования.
5. ЗАПРОС Транспортного оборудование
Объединяет две таблицы: Транспортное оборудование и Марка транспортного оборудования.
6. ЗапросМАХ№Кластера
Определяет максимальный табельный номер в таблице «Кластер»
7. ЗапросЧислоТНС
Определяет число записей в таблице «АТНСС». Необходимо для запроса ЗапросГауПолностьюСвязанные
8. ЗапросОбр
Определяет марку обрабатывающего оборудования вышедшего из строя для формы «Замена оборудования»
9. ЗапросТр
Определяет марку транспортного оборудования вышедшего из строя для формы «Замена оборудования»
10. ЗапросЗамены Обр
Используя запрос ЗапросОбр формирует список обрабатывающего оборудования, способное заменить вышедшее из строя.
11. ЗапросЗамены Тр
Используя запрос ЗапросТр формирует список обрабатывающего оборудования, способное заменить вышедшее из строя.
12. ЗапросГауСвязанные
Для кажого ГАУ определяет число связей с АТНСС. Необходимо для формы «Содержимое ГПС» , для добавления новой записи.
13. ЗапросГауПолностьюСвязанные
Определяет список ГАУ, связанных с каждым АТНСС. Необходимо для формы «Содержимое ГПС», для добавления новой записи.
14. Запрос ГАУ свободных
Определяет список ГАУ, которых могут образовывать связь хоть с одной АТНСС. Необходимо для формы «Содержимое ГПС», для добавления новой записи
15. Запрос для ГПС содержимого Подчиненный
Определяет список АТНСС связанных с выбранным ГАУ в форме «Содержимое ГПС» при добавлении новой записи.
16. Запрос для ГПС содержимого
Определяет список АТНСС не связанных с выбранным ГАУ в форме «Содержимое ГПС» при добавлении новой записи.
17. ЗАПРОС ГАУ и АТНСС
Формирует список связанных ГАУ и АТНСС. Необходимо для формы «Содержимое ГПС»
5.3 Описание приложения 5.3.1 Функциональные возможности приложенияПри помощи разработанного приложения можно:
1. Добавлять/изменять записи, характеризующие обрабатывающее оборудование, марку обрабатывающего оборудования.
2. Добавлять/изменять записи, характеризующие транспортное оборудование, марку транспортного оборудования.
3. Добавлять/изменять записи, характеризующие ГАУ.
4. Добавлять/изменять записи, характеризующие АТНСС.
5. Добавлять/изменять записи, характеризующие ГПС.
6. Добавлять/изменять записи, характеризующие Инструменты, приспособления
7. Получать отчет об обрабатывающем оборудовании.
8. Получать отчет об транспортном оборудовании.
9. Получать информацию об оборудовании способном заменить вышедшее из строя.
5.3.2 Инструкция пользователяПосле запуска БД (файл «БД.mdb») на экране появится Главная форма приложения, имеющая вид:
На ней расположены несколько групп кнопок.
Кнопка “Марки обрабатывающего оборудования” вызывает форму для изменения маркировок обрабатывающего оборудования. При нажатии левой кнопки мыши открывается следующая форма:
Для того, чтобы изменить параметры марки оборудования необходимо в верхней части окна найти запись интересующей марки, выделить изменяемый параметр и просто изменить значение.
Для того чтобы добавить новую марку необходимо в нижней части окна корректно ввести все атрибуты новой марки и нажать кнопку «Добавить новую марку оборудования». Добавление марки оборудования уже существующей в списке запрещено!
Для того чтобы удалить марку необходимо в правой-нижней части окна выбрать из списка удаляемую марку и нажать кнопку «Удалить марку из списка». Внимание удаление марки оборудования используемой каким-то оборудованием запрещено!
Эта форма аналогична предыдущей. Добавление, изменение и удалени выполняется аналогично.
Внимание! Изменение атрибута «Марка оборудования» запрещено!
Кнопка “Обрабатывающее оборудование” вызывает форму для изменения списка обрабатывающего оборудования. При нажатии левой кнопки мыши открывается форма:
Эта форма аналогична предыдущей. Добавление, изменение и удаление выполняется аналогично. Добавление оборудования с уже существующим в списке табельным номером запрещено! Удаление оборудования, к которому привязано какой-то инструмент или приспособление запрещено!
Внимание! Изменение атрибутов касающихся марки оборудования, атрибута «№ кластера» и «Табельный номер» запрещено! («Габариты», «L», «D», «Частота», «Мощность»)
Кнопка “ГАУ” предназначена для изменения списка ГАУ. При нажатии левой кнопки мыши открывается форма:
Эта форма аналогична предыдущей. Добавление, изменение и удаление выполняется аналогично. Добавление ГАУ с уже существующим в списке табельным номером запрещено! Удаление ГАУ, к которому привязано оборудование запрещено! Изменение атрибута «Табельный номер» запрещено!
Кнопку “ Кластеры” предназначена для просмотра и удаления. При нажатии левой кнопки мыши открывается форма:
Добавление и изменение записей в этой форме запрещены. Удаление выполняется также как и в предыдущих формах. Удаление кластера, к которому привязано какое-то оборудование запрещено!
Кнопка “Инструменты и приспособления” предназначена для изменения списка инструментов/приспособлений:
Добавление, изменение и удаление выполняется стандартно. Добавление Инструмента/приспособления с уже существующим в списке табельным номером запрещено! Изменение атрибута «Табельный номер» запрещено!
Кнопка “Марки транспортного оборудования” предназначена для изменения списка маркировок транспортного оборудования:
Добавление, изменение и удаление записей аналогично. Добавление марки оборудования уже существующей в списке запрещено! Удаление марки оборудования используемой каким-то оборудованием запрещено! Изменение атрибута «Марка оборудования» запрещено!
Кнопка “Транспортное оборудование” предназначена для изменения списка транспортного оборудования:
Добавление, изменение и удаление выполняется аналогично. Добавление оборудования с уже существующим в списке табельным номером запрещено!
Внимание! Изменение атрибутов касающихся марки оборудования и «Табельный номер» запрещено! («Скорость», «Габариты», «Грузоподъемность», «Вес»)
Кнопка “АТНСС” предназначены для изменения списка АТНСС.
Добавление, изменение и удаление выполняется аналогично. Добавление АТНСС с уже существующим в списке табельным номером запрещено! Изменение атрибута «Табельный номер» запрещено!
Кнопка “ГПС” предназначены для изменения списка ГПС
Добавление новой связи выполняется в пустом окне. Внимание! Вначале необходимо выбрать связываемое ГАУ, а затем АТНСС.
Изменение записей выполняется аналогично предыдущих форм. Удаление производится так: вначале выделяется удалемая связь затем нажимается кнопка Del
Кнопка “Отчет по оборудования” предназначена для вывода отчета по транспортному или обрабатывающему оборудованию в зависимости от сделанного выбора в окне-запросе:
Отчет по обрабатывающему оборудованию:
Этот отчет можно распечатать нажав правой клавишей на отчете и выбрав дейстивие «Печать…»
Кнопка “Замена оборудования” предназначена для вывода списка оборудования, способного заменить вышедшее из строя:
Для вывода списка необходима определить какое оборудование вышло из строя: обрабатывающее или транспортное и выбрать табельный номер вышедшего из строя оборудования.
По нажатии кнопки “Выход” происходит закрытие БД.
ЗАКЛЮЧЕНИЕ
В результате выполнения курсовой работы была изучена методика проектирования БД, изучены декомпозиционный и ER-методы проектирования БД, а также рассмотрены такие аспекты как системный анализ предметной области и критерии выбора СУБД.
В соответствии с методикой, применяя вышеназванные методы, была разработана БД учета основного оборудования на предприятии, а также приложение для работы с ней в среде MS Access 2003.
1. А.Ю. Гончаров Самоучитель Access 2003, Москва 2004
2. И.А. Ахмадеев, А.Х. Хайруллин, С.Ю.Юрасов Базы данных, Наб.Челны 2004
3. Конспект лекций по БД, 2010 год
4. А.С. Марков, К.Ю. Лисовский Базы Данных. Введение в теорию и методологию. Москва, 2004
Листинг программного кода:
Форма «Главная»
Private Sub КнВыход_Click()
On Error GoTo Главная_Выход_Err
DoCmd.Quit acPrompt
Главная_Выход_Exit:
Exit Sub
Главная_Выход_Err:
MsgBox Error$
Resume Главная_Выход_Exit
End Sub
Private Sub Кнопка11_Click()
On Error GoTo Открыть_Открыть_ИП_Err
DoCmd.OpenForm "Инструменты,приспособления", acNormal, "", "", , acNormal
Открыть_Открыть_ИП_Exit:
Exit Sub
Открыть_Открыть_ИП_Err:
MsgBox Error$
Resume Открыть_Открыть_ИП_Exit
End Sub
Private Sub Кнопка12_Click()
If MsgBox("Открыть отчет по обрабатывающему оборудованию?", vbYesNo, "Отчет") = vbYes Then
DoCmd.OpenReport "Обрабатывающее оборудование", acViewPreview, "", "", acNormal
Else
DoCmd.OpenReport "Транспортное оборудование", acViewPreview, "", "", acNormal
End If
End Sub
Private Sub Кнопка14_Click()
On Error GoTo Открыть_Открыть_МаркаОбр_Err
DoCmd.OpenForm "Марка обрабатывающего оборудования", acNormal, "", "", , acNormal
Открыть_Открыть_МаркаОбр_Exit:
Exit Sub
Открыть_Открыть_МаркаОбр_Err:
MsgBox Error$
Resume Открыть_Открыть_МаркаОбр_Exit
End Sub
Private Sub Кнопка15_Click()
On Error GoTo Открыть_Открыть_МаркаТр_Err
DoCmd.OpenForm "Марка транспортного оборудования", acNormal, "", "", , acNormal
Открыть_Открыть_МаркаТр_Exit:
Exit Sub
Открыть_Открыть_МаркаТр_Err:
MsgBox Error$
Resume Открыть_Открыть_МаркаТр_Exit
End Sub
Private Sub Кнопка16_Click()
On Error GoTo Открыть_Открыть_ГПСдоб_Err
DoCmd.OpenForm "ГПС", acNormal, "", "", , acNormal
Открыть_Открыть_ГПСдоб_Exit:
Exit Sub
Открыть_Открыть_ГПСдоб_Err:
MsgBox Error$
Resume Открыть_Открыть_ГПСдоб_Exit
End Sub
Private Sub Кнопка17_Click()
On Error GoTo Открыть_Открыть_Кластер_Err
DoCmd.OpenForm "Кластер", acNormal, "", "", , acNormal
Открыть_Открыть_Кластер_Exit:
Exit Sub
Открыть_Открыть_Кластер_Err:
MsgBox Error$
Resume Открыть_Открыть_Кластер_Exit
End Sub
Private Sub Кнопка27_Click()
On Error GoTo Открыть_Открыть_замену_Err
DoCmd.OpenForm "Замена оборудования", acNormal, "", "", , acNormal
Открыть_Открыть_замену_Exit:
Exit Sub
Открыть_Открыть_замену_Err:
MsgBox Error$
Resume Открыть_Открыть_замену_Exit
End Sub
Private Sub Кнопка3_Click()
On Error GoTo Открыть_Открыть_Обр_Err
DoCmd.OpenForm "Обрабатывающее оборудование", acNormal, "", "", , acNormal
Открыть_Открыть_Обр_Exit:
Exit Sub
Открыть_Открыть_Обр_Err:
MsgBox Error$
Resume Открыть_Открыть_Обр_Exit
End Sub
Private Sub Кнопка7_Click()
On Error GoTo Открыть_Открыть_ГАУ_Err
DoCmd.OpenForm "ГАУ", acNormal, "", "", , acNormal
Открыть_Открыть_ГАУ_Exit:
Exit Sub
Открыть_Открыть_ГАУ_Err:
MsgBox Error$
Resume Открыть_Открыть_ГАУ_Exit
End Sub
Private Sub Кнопка8_Click()
On Error GoTo Открыть_Открыть_ТНС_Err
DoCmd.OpenForm "АТНСС", acNormal, "", "", , acNormal
Открыть_Открыть_ТНС_Exit:
Exit Sub
Открыть_Открыть_ТНС_Err:
MsgBox Error$
Resume Открыть_Открыть_ТНС_Exit
End Sub
Private Sub Кнопка4_Click()
On Error GoTo Открыть_Открыть_Тр_Err
DoCmd.OpenForm "Транспортное оборудование", acNormal, "", "", , acNormal
Открыть_Открыть_Тр_Exit:
Exit Sub
Открыть_Открыть_Тр_Err:
MsgBox Error$
Resume Открыть_Открыть_Тр_Exit
End Sub
Private Sub Кнопка9_Click()
On Error GoTo Открыть_Открыть_ГПС_Err
DoCmd.OpenForm "ГПС-добавление", acNormal, "", "", , acNormal
Открыть_Открыть_ГПС_Exit:
Exit Sub
Открыть_Открыть_ГПС_Err:
MsgBox Error$
Resume Открыть_Открыть_ГПС_Exit
End Sub
Форма «АТНСС»
Private Sub Кнопка34_Click()
On Error GoTo Добавление_Ввод_ТНС_Err
With CodeContextObject
If (Eval("(Forms!Атнсс![ТНС] Is Null) Or (Forms!Атнсс![Пропуск] Is Null) Or (Forms!Атнсс![Площ] Is Null)")) Then
MsgBox "Введены не все данные!", vbExclamation, "Добавление нового АТНСС."
Exit Sub
End If
DoCmd.GoToControl "КодТНС"
DoCmd.FindRecord Val(Forms!Атнсс!ТНС), acEntire, False, , True, acCurrent, True
If (Val(Forms!Атнсс!ТНС) = Forms!Атнсс!КодТНС) Then
Beep
MsgBox "Такой номер уже существует!", vbExclamation, "Ошибка"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеАТНСС", acNormal, "", "", , acHidden
DoCmd.GoToRecord acForm, "ДобавлениеАТНСС", acNewRec
Forms!ДобавлениеАТНСС!КодТНС = Forms!Атнсс!ТНС
Forms!ДобавлениеАТНСС!ПропТНС = Forms!Атнсс!Пропуск
Forms!ДобавлениеАТНСС!ПлощТНС = Forms!Атнсс!Площ
DoCmd.Close acForm, "ДобавлениеАТНСС"
DoCmd.Requery ""
DoCmd.Requery "ТНСУдаления"
End With
Добавление_Ввод_ТНС_Exit:
Exit Sub
Добавление_Ввод_ТНС_Err:
DoCmd.Close acForm, "ДобавлениеАТНСС"
'MsgBox Error$
Resume Добавление_Ввод_ТНС_Exit
End Sub
Private Sub Кнопка41_Click()
On Error GoTo Удаление_Удаление_ТНС_Err
If (Eval("Forms!Атнсс!ТНСУдаления Is Null")) Then
MsgBox "Введены не все данные!", vbExclamation, "Удаление АТНСС."
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеАТНСС", acNormal, "", "", , acHidden
DoCmd.SelectObject acForm, "ДобавлениеАТНСС", False
'DoCmd.GoToControl "[КодТНС]"
DoCmd.FindRecord Forms!Атнсс!ТНСУдаления, acEntire, False, , True, acCurrent, False
DoCmd.RunCommand acCmdDeleteRecord
DoCmd.Close acForm, "ДобавлениеАТНСС"
DoCmd.Requery ""
DoCmd.Requery "ТНСУдаления"
Forms!Атнсс!ТНСУдаления = ""
Удаление_Удаление_ТНС_Exit:
Exit Sub
Удаление_Удаление_ТНС_Err:
DoCmd.Close acForm, "ДобавлениеАТНСС"
m = MsgBox("Удаление невозможно так как имеется транспортное оборудование, привязанные к данному ГАУ!", vbExclamation, "Удаление ГАУ")
'MsgBox Error$
Resume Удаление_Удаление_ТНС_Exit
End Sub
Форма «ГАУ»
Private Sub Кнопка34_Click()
On Error GoTo Добавление_Ввод_ГАУ_Err
With CodeContextObject
If (Eval("(Forms!Гау![ГАУ] Is Null) Or (Forms!Гау![Назн] Is Null) Or (Forms!Гау![Площ] Is Null)")) Then
MsgBox "Введены не все данные!", vbExclamation, "Добавление нового ГАУ."
Exit Sub
End If
DoCmd.GoToControl "КодГАУ"
DoCmd.FindRecord Val(Forms!Гау![Гау]), acStart, False, , True, acCurrent, True
If (Val(Forms!Гау![Гау]) = (Forms!Гау![КодГАУ])) Then
Beep
MsgBox "Такой номер уже существует!", vbExclamation, "Ошибка"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеГАУ", acNormal, "", "", , acHidden
DoCmd.GoToRecord acForm, "ДобавлениеГАУ", acNewRec
Forms!ДобавлениеГАУ!КодГАУ = Forms!Гау!Гау
Forms!ДобавлениеГАУ!НазнГАУ = Forms!Гау!Назн
Forms!ДобавлениеГАУ!ПлощадьГАУ = Forms!Гау!Площ
DoCmd.Close acForm, "ДобавлениеГАУ"
DoCmd.Requery ""
DoCmd.Requery "ГАУУдаления"
End With
Добавление_Ввод_ГАУ_Exit:
Exit Sub
Добавление_Ввод_ГАУ_Err:
DoCmd.Close acForm, "ДобавлениеГАУ"
'MsgBox Error$
Resume Добавление_Ввод_ГАУ_Exit
End Sub
Private Sub Кнопка41_Click()
On Error GoTo Удаление_Удаление_ГАУ_Err
If (Eval("Forms!Гау!ГАУУдаления Is Null")) Then
MsgBox "Введены не все данные!", vbExclamation, "Удаление ГАУ."
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеГАУ", acNormal, "", "", , acHidden
DoCmd.SelectObject acForm, "ДобавлениеГАУ", False
DoCmd.GoToControl "[КодГАУ]"
DoCmd.FindRecord Forms!Гау!ГАУУдаления, acEntire, False, , True, acCurrent, False
DoCmd.RunCommand acCmdDeleteRecord
DoCmd.Close acForm, "ДобавлениеГАУ"
DoCmd.Requery ""
DoCmd.Requery "ГАУУдаления"
Forms!Гау!ГАУУдаления = ""
Удаление_Удаление_ГАУ_Exit:
Exit Sub
Удаление_Удаление_ГАУ_Err:
DoCmd.Close acForm, "ДобавлениеГАУ"
m = MsgBox("Удаление невозможно так как имеется обрабатывающее оборудование, привязанные к данному ГАУ!", vbExclamation, "Удаление ГАУ")
MsgBox Error$
Resume Удаление_Удаление_ГАУ_Exit
End Sub
Форма «Содержание ГПС»
Private Sub КодГАУ_Dirty(Cancel As Integer)
On Error GoTo Обновление_Err
КодТНС.Locked = False
DoCmd.Requery "КодТНС"
Обновление_Exit:
Exit Sub
Обновление_Err:
MsgBox Error$
Resume Обновление_Exit
End Sub
Private Sub КодТНС_Dirty(Cancel As Integer)
DoCmd.Requery "КодГау"
End Sub
Private Sub КодТНС_GotFocus()
If КодГАУ.Value > 0 Then Else m = MsgBox("Введите вначале табельный номер ГАУ!", vbInformation, "Внимание"): КодТНС.Locked = True
End Sub
Форма «ГПС»
Private Sub Кнопка34_Click()
On Error GoTo Добавление_Ввод_ГПС_Err
With CodeContextObject
If (Eval("(Forms![ГПС-добавление]![ГПС] Is Null) Or (Forms![ГПС-добавление]![Назн] Is Null) Or (Forms![ГПС-добавление]![Цех] Is Null)")) Then
MsgBox "Введены не все данные!", vbExclamation, "Добавление нового ГПС."
Exit Sub
End If
DoCmd.GoToControl "КодГПС"
DoCmd.FindRecord Val(Forms![ГПС-добавление]!ГПС), acEntire, False, , True, acCurrent, True
If (Val(Forms![ГПС-добавление]!ГПС) = Forms![ГПС-добавление]!КодГПС) Then
Beep
MsgBox "Такой номер уже существует!", vbExclamation, "Ошибка"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеГПС", acNormal, "", "", , acHidden
DoCmd.GoToRecord acForm, "ДобавлениеГПС", acNewRec
Forms!ДобавлениеГПС!КодГПС = Forms![ГПС-добавление]!ГПС
Forms!ДобавлениеГПС!НазнГПС = Forms![ГПС-добавление]!Назн
Forms!ДобавлениеГПС!НаимЦех = Forms![ГПС-добавление]!Цех
DoCmd.Close acForm, "ДобавлениеГПС"
DoCmd.Requery ""
DoCmd.Requery "ГПСУдаления"
End With
Добавление_Ввод_ГПС_Exit:
Exit Sub
Добавление_Ввод_ГПС_Err:
DoCmd.Close acForm, "ДобавлениеГПС"
MsgBox Error$
Resume Добавление_Ввод_ГПС_Exit
End Sub
Private Sub Кнопка41_Click()
On Error GoTo Удаление_Удаление_ГПС_Err
If (Eval("Forms![ГПС-добавление]!ГПСУдаления Is Null")) Then
MsgBox "Введены не все данные!", vbExclamation, "Удаление ГПС."
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеГПС", acNormal, "", "", , acHidden
DoCmd.SelectObject acForm, "ДобавлениеГПС", False
DoCmd.FindRecord Forms![ГПС-добавление]!ГПСУдаления, acEntire, False, , True, acCurrent, False
DoCmd.RunCommand acCmdDeleteRecord
DoCmd.Close acForm, "ДобавлениеГПС"
DoCmd.Requery ""
DoCmd.Requery "ГПСУдаления"
Forms![ГПС-добавление]!ГПСУдаления = ""
Удаление_Удаление_ГПС_Exit:
Exit Sub
Удаление_Удаление_ГПС_Err:
DoCmd.Close acForm, "ДобавлениеГПС"
m = MsgBox("Удаление невозможно так как имеются ГАУ или АТНСС, привязанные к данному ГПС!", vbExclamation, "Удаление ГПС")
MsgBox Error$
Resume Удаление_Удаление_ГПС_Exit
End Sub
Форма «Инструменты и приспособления»
Private Sub КнМарка_Click()
On Error GoTo Добавление_Ввод_инструмента_Err
With CodeContextObject
If (Eval("(Forms![Инструменты,приспособления]![Код] Is Null) Or (Forms![Инструменты,приспособления]![Обр] Is Null) Or (Forms![Инструменты,приспособления]![Марка] Is Null) Or (Forms![Инструменты,приспособления]![Назн] Is Null)")) Then
MsgBox "Введены не все данные!", vbExclamation, "Добавление нового инструмента/приспособления."
Exit Sub
End If
DoCmd.GoToControl "КодИП"
DoCmd.FindRecord Val(Forms![Инструменты,приспособления]!Код), acEntire, False, , True, acCurrent, True
If (Val(Forms![Инструменты,приспособления]!Код) = Forms![Инструменты,приспособления]!КодИП) Then
Beep
MsgBox "Такой номер уже существует!", vbExclamation, "Ошибка"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеИП", acNormal, "", "", , acHidden
DoCmd.GoToRecord acForm, "ДобавлениеИП", acNewRec
Forms!ДобавлениеИП!КодИП = Forms![Инструменты,приспособления]!Код
Forms!ДобавлениеИП!КодОбр = Forms![Инструменты,приспособления]!Обр
Forms!ДобавлениеИП!МаркИП = Forms![Инструменты,приспособления]!Марка
Forms!ДобавлениеИП!НазнИП = Forms![Инструменты,приспособления]!Назн
Forms!ДобавлениеИП!ИнсПрисп = Forms![Инструменты,приспособления]!ИП
DoCmd.Close acForm, "ДобавлениеИП"
DoCmd.Requery ""
DoCmd.Requery "КодУдаления"
End With
Добавление_Ввод_инструмента_Exit:
Exit Sub
Добавление_Ввод_инструмента_Err:
DoCmd.Close acForm, "ДобавлениеИП"
'MsgBox Error$
Resume Добавление_Ввод_инструмента_Exit
End Sub
Private Sub Кнопка58_Click()
On Error GoTo Удаление_Удаление_инструмента_Err
If (Eval("Forms![Инструменты,приспособления]!КодУдаления Is Null")) Then
MsgBox "Введены не все данные!", vbExclamation, "Удаление инструмента/приспособления."
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеИП", acNormal, "", "", , acHidden
DoCmd.SelectObject acForm, "ДобавлениеИП", False
DoCmd.FindRecord Forms![Инструменты,приспособления]!КодУдаления, acEntire, False, , True, acCurrent, False
DoCmd.RunCommand acCmdDeleteRecord
DoCmd.Close acForm, "ДобавлениеИП"
DoCmd.Requery ""
DoCmd.Requery "КодУдаления"
Forms![Инструменты,приспособления]!КодУдаления = ""
Удаление_Удаление_инструмента_Exit:
Exit Sub
Удаление_Удаление_инструмента_Err:
DoCmd.Close acForm, "ДобавлениеИП"
m = MsgBox("Неизвестная ошибка. Удаление невозможно", vbExclamation, "Удаление инструмента или приспособления")
MsgBox Error$
Resume Удаление_Удаление_инструмента_Exit
End Sub
Форма «Кластер»
Private Sub Кнопка33_Click()
On Error GoTo Удаление_Удаление_кластера_Err
If (Eval("Forms!Кластер!Код Is Null")) Then
MsgBox "Введены не все данные!", vbExclamation, "Удаление кластера"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеКластер", acNormal, "", "", , acHidden
DoCmd.SelectObject acForm, "ДобавлениеКластер", False
DoCmd.GoToControl "[КодКласт]"
DoCmd.FindRecord Forms!Кластер!Код, acEntire, False, , True, acCurrent, False
DoCmd.RunCommand acCmdDeleteRecord
DoCmd.Close acForm, "ДобавлениеКластер"
DoCmd.Requery ""
DoCmd.Requery "Код"
Forms!Кластер!Код = ""
Удаление_Удаление_кластера_Exit:
Exit Sub
Удаление_Удаление_кластера_Err:
DoCmd.Close acForm, "ДобавлениеКластер"
m = MsgBox("Удаление кластера невозможно так как имеется оборудование, привязанное к данному кластеру!", vbExclamation, "Удаление кластера")
'MsgBox Error$
Resume Удаление_Удаление_кластера_Exit
End Sub
Форма «Марка обрабатывающего оборудования»
Private Sub КнМарка_Click()
On Error GoTo Добавление_Ввод_марки_оборудования_Err
With CodeContextObject
If (Eval("(Forms![Марка обрабатывающего оборудования]![Марка] Is Null) Or (Forms![Марка обрабатывающего оборудования]![Габарит] Is Null) Or (Forms![Марка обрабатывающего оборудования]![Длина] Is Null) Or (Forms![Марка обрабатывающего оборудования]![Диаметр] Is Null) Or (Forms![Марка обрабатывающего оборудования]![Частота] Is Null) Or (Forms![Марка обрабатывающего оборудования]![Мощность] Is Null)")) Then
MsgBox "Введены не все данные!", vbExclamation, "Добавление новой марки оборудования"
Exit Sub
End If
DoCmd.GoToControl "МаркаОбр"
DoCmd.FindRecord Val(Forms![Марка обрабатывающего оборудования]!Марка), acEntire, False, , True, acCurrent, True
If (Forms![Марка обрабатывающего оборудования]!Марка = Forms![Марка обрабатывающего оборудования]!МаркаОбр) Then
Beep
MsgBox "Такой номер уже существует!", vbExclamation, "Ошибка"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеМаркиОбр", acNormal, "", "", , acIcon
DoCmd.GoToRecord acForm, "ДобавлениеМаркиОбр", acNewRec
Forms!ДобавлениеМаркиОбр!МаркаОбр = Forms![Марка обрабатывающего оборудования]!Марка
Forms!ДобавлениеМаркиОбр!ГабарОбр = Forms![Марка обрабатывающего оборудования]!Габарит
Forms!ДобавлениеМаркиОбр!ДлДетОбр = Forms![Марка обрабатывающего оборудования]!Длина
Forms!ДобавлениеМаркиОбр!ДиамДетОбр = Forms![Марка обрабатывающего оборудования]!Диаметр
Forms!ДобавлениеМаркиОбр!ЧастотОбр = Forms![Марка обрабатывающего оборудования]!Частота
Forms!ДобавлениеМаркиОбр!МощОбр = Forms![Марка обрабатывающего оборудования]!Мощность
DoCmd.Close acForm, "ДобавлениеМаркиОбр"
DoCmd.Requery ""
DoCmd.Requery "МаркаУдаление"
End With
Добавление_Ввод_марки_оборудования_Exit:
Exit Sub
Добавление_Ввод_марки_оборудования_Err:
DoCmd.Close acForm, "ДобавлениеМаркиОбр"
MsgBox Error$
Resume Добавление_Ввод_марки_оборудования_Exit
End Sub
Private Sub Кнопка58_Click()
On Error GoTo Удаление_Удаление_марки_оборудования_Err
If (Eval("Forms![Марка обрабатывающего оборудования]!МаркаУдаление Is Null")) Then
MsgBox "Введены не все данные!", vbExclamation, "Удаление марки оборудования"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеМаркиОбр", acNormal, "", "", , acHidden
DoCmd.SelectObject acForm, "ДобавлениеМаркиОбр", False
DoCmd.GoToControl "[МаркаОбр]"
DoCmd.FindRecord Forms![Марка обрабатывающего оборудования]!МаркаУдаление, acEntire, False, , True, acCurrent, False
DoCmd.RunCommand acCmdDeleteRecord
DoCmd.Close acForm, "ДобавлениеМаркиОбр"
DoCmd.Requery ""
DoCmd.Requery "МаркаУдаление"
Forms![Марка обрабатывающего оборудования]!МаркаУдаление = ""
End
Удаление_Удаление_марки_оборудования_Exit:
Exit Sub
Удаление_Удаление_марки_оборудования_Err:
DoCmd.Close acForm, "ДобавлениеМаркиОбр"
m = MsgBox("Удаление невозможно так как имеется оборудование использующее эту марку!", vbExclamation, "Удаление марки оборудования")
'MsgBox Error$
Resume Удаление_Удаление_марки_оборудования_Exit
End Sub
Форма «Марка транспортного оборудования»
Private Sub КнДобавить_Click()
On Error GoTo Добавление_Ввод_марки_транспорта_Err
With CodeContextObject
If (Eval("(Forms![Марка транспортного оборудования]![Марка] Is Null) Or (Forms![Марка транспортного оборудования]![Скорость] Is Null) Or (Forms![Марка транспортного оборудования]![Габарит] Is Null) Or (Forms![Марка транспортного оборудования]![Груз] Is Null) Or (Forms![Марка транспортного оборудования]![Вес] Is Null)")) Then
MsgBox "Введены не все данные!", vbExclamation, "Добавление новой марки оборудования"
Exit Sub
End If
DoCmd.GoToControl "МаркаТр"
DoCmd.FindRecord Val(Forms![Марка транспортного оборудования]!Марка), acEntire, False, , True, acCurrent, True
If (Forms![Марка транспортного оборудования]!Марка = Forms![Марка транспортного оборудования]!МаркаТр) Then
Beep
MsgBox "Такой номер уже существует!", vbExclamation, "Ошибка"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеМаркиТр", acNormal, "", "", , acHidden
DoCmd.GoToRecord acForm, "ДобавлениеМаркиТр", acNewRec
Forms!ДобавлениеМаркиТр!МаркаТр = Forms![Марка транспортного оборудования]!Марка
Forms!ДобавлениеМаркиТр!СкорТр = Forms![Марка транспортного оборудования]!Скорость
Forms!ДобавлениеМаркиТр!ГабарТр = Forms![Марка транспортного оборудования]!Габарит
Forms!ДобавлениеМаркиТр!ГрузТр = Forms![Марка транспортного оборудования]!Груз
Forms!ДобавлениеМаркиТр!МассаТр = Forms![Марка транспортного оборудования]!Вес
DoCmd.Close acForm, "ДобавлениеМаркиТр"
DoCmd.Requery ""
DoCmd.Requery "МаркаУдаление"
End With
Добавление_Ввод_марки_транспорта_Exit:
Exit Sub
Добавление_Ввод_марки_транспорта_Err:
DoCmd.Close acForm, "ДобавлениеМаркиТр"
MsgBox Error$
Resume Добавление_Ввод_марки_транспорта_Exit
End Sub
Private Sub Кнопка33_Click()
On Error GoTo Удаление_Удаление_марки_транспорта_Err
If (Eval("Forms![Марка транспортного оборудования]!МаркаУдаление Is Null")) Then
MsgBox "Введены не все данные!", vbExclamation, "Удаление марки оборудования"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеМаркиТр", acNormal, "", "", , acHidden
DoCmd.SelectObject acForm, "ДобавлениеМаркиТр", False
'DoCmd.GoToControl "[МаркаТр]"
DoCmd.FindRecord Forms![Марка транспортного оборудования]!МаркаУдаление, acEntire, False, , True, acCurrent, False
DoCmd.RunCommand acCmdDeleteRecord
DoCmd.Close acForm, "ДобавлениеМаркиТр"
DoCmd.Requery ""
DoCmd.Requery "МаркаУдаление"
Forms![Марка транспортного оборудования]!МаркаУдаление = ""
Удаление_Удаление_марки_транспорта_Exit:
Exit Sub
Удаление_Удаление_марки_транспорта_Err:
DoCmd.Close acForm, "ДобавлениеМаркиТр"
m = MsgBox("Удаление невозможно так как имеется оборудование использующее эту марку!", vbExclamation, "Удаление марки оборудования")
MsgBox Error$
Resume Удаление_Удаление_марки_транспорта_Exit
End Sub
Форма «Обрабатывающее оборудование»
Private Sub КнДобавить_Click()
On Error GoTo Добавление_Ввод_оборудования_Err
With CodeContextObject
If (Eval("(Forms![Обрабатывающее оборудование]![Марка] Is Null) Or (Forms![Обрабатывающее оборудование]![Гау] Is Null) Or (Forms![Обрабатывающее оборудование]![Дата] Is Null) Or (Forms![Обрабатывающее оборудование]![Стоим] Is Null) Or (Forms![Обрабатывающее оборудование]![Код] Is Null)")) Then
MsgBox "Введены не все данные!", vbExclamation, "Добавление нового оборудования"
Exit Sub
End If
DoCmd.GoToControl "КодОбр"
DoCmd.FindRecord Val(Forms![Обрабатывающее оборудование]!Код), acEntire, False, , True, acCurrent, True
If (Val(Forms![Обрабатывающее оборудование]!Код) = Forms![Обрабатывающее оборудование]!КодОбр) Then
Beep
MsgBox "Такой номер уже существует!", vbExclamation, "Ошибка"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеОбр", acNormal, "", "", , acHidden
DoCmd.OpenForm "Запрос №Кластеров Проверка", acNormal, "", "", , acHidden
DoCmd.OpenForm "Запрос №Кластера по Марке", acNormal, "", "", , acHidden
DoCmd.GoToRecord acForm, "ДобавлениеОбр", acNewRec
If (Forms![Запрос №Кластеров Проверка]!CountКодКласт = 0) Then
DoCmd.OpenForm "ДобавлениеКластер", acNormal, "", "", , acHidden
DoCmd.GoToRecord acForm, "ДобавлениеКластер", acNewRec
DoCmd.OpenForm "ФормаЗапросМАХ№Кластера", acNormal, "", "", , acHidden
Forms!ДобавлениеКластер!КодКласт = Forms!ФормаЗапросМАХ№Кластера!MaxКодКласт + 1
Forms!ДобавлениеОбр!КодКласт = Forms!ФормаЗапросМАХ№Кластера!MaxКодКласт + 1
DoCmd.Close acForm, "ФормаЗапросМАХ№Кластера"
DoCmd.OpenForm "ФормаЗапросДЛ,Диам,ЧастМарке", acNormal, "", "",, acHidden
Forms!ДобавлениеКластер!ЧастКласт = Forms![ФормаЗапросДЛ,Диам,ЧастМарке]!ЧастотОбр
Forms!ДобавлениеКластер!ДлинКласт = Forms![ФормаЗапросДЛ,Диам,ЧастМарке]!ДлДетОбр
Forms!ДобавлениеКластер!ДиамКласт = Forms![ФормаЗапросДЛ,Диам,ЧастМарке]!ДиамДетОбр
Forms!ДобавлениеКластер!ОтклКласт = 17
DoCmd.Close acForm, "ФормаЗапросДЛ,Диам,ЧастМарке"
DoCmd.Close acForm, "ДобавлениеКластер"
End If
If (Forms![Запрос №Кластеров Проверка]!CountКодКласт = 1) Then
Forms!ДобавлениеОбр!КодКласт = Forms![Запрос №Кластера по Марке]!КодКласт
End If
DoCmd.Close acForm, "Запрос №Кластеров Проверка"
DoCmd.Close acForm, "Запрос №Кластера по Марке"
Forms!ДобавлениеОбр!КодОбр = Forms![Обрабатывающее оборудование]!Код
Forms!ДобавлениеОбр!МаркаОбр = Forms![Обрабатывающее оборудование]!Марка
Forms!ДобавлениеОбр!ДатаОбр = Forms![Обрабатывающее оборудование]!Дата
Forms!ДобавлениеОбр!СтоимОбр = Forms![Обрабатывающее оборудование]!Стоим
Forms!ДобавлениеОбр!КодГАУ = Forms![Обрабатывающее оборудование]!Гау
DoCmd.Close acForm, "ДобавлениеОбр"
DoCmd.Requery ""
DoCmd.Requery "КодУдаления"
End With
Добавление_Ввод_оборудования_Exit:
Exit Sub
Добавление_Ввод_оборудования_Err:
DoCmd.Close acForm, "ФормаЗапросМАХ№Кластера"
DoCmd.Close acForm, "ФормаЗапросДЛ,Диам,ЧастМарке"
DoCmd.Close acForm, "ДобавлениеКластер"
DoCmd.Close acForm, "Запрос №Кластеров Проверка"
DoCmd.Close acForm, "Запрос №Кластера по Марке"
DoCmd.Close acForm, "ДобавлениеОбр"
MsgBox Error$
Resume Добавление_Ввод_оборудования_Exit
End Sub
Private Sub Кнопка33_Click()
On Error GoTo Удаление_Удаление_оборудования_Err
If (Eval("Forms![Обрабатывающее оборудование]!КодУдаления Is Null")) Then
MsgBox "Введены не все данные!", vbExclamation, "Удаление оборудования"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеОбр", acNormal, "", "", , acHidden
DoCmd.SelectObject acForm, "ДобавлениеОбр", False
DoCmd.GoToControl "[КодОбр]"
DoCmd.FindRecord Forms![Обрабатывающее оборудование]!КодУдаления, acEntire, False, , True, acCurrent, False
DoCmd.RunCommand acCmdDeleteRecord
DoCmd.Close acForm, "ДобавлениеОбр"
DoCmd.Requery ""
DoCmd.Requery "КодУдаления"
Forms![Обрабатывающее оборудование]!КодУдаления = ""
Удаление_Удаление_оборудования_Exit:
Exit Sub
Удаление_Удаление_оборудования_Err:
DoCmd.Close acForm, "ДобавлениеОбр"
m = MsgBox("Удаление невозможно так как имеются инструменты или приспособления, привязанные к данному оборудованию!", vbExclamation, "Удаление оборудования")
Resume Удаление_Удаление_оборудования_Exit
End Sub
Форма «Транспортного оборудования»
Private Sub КнДобавить_Click()
On Error GoTo Добавление_Ввод_транспорта_Err
With CodeContextObject
If (Eval("(Forms![Транспортное оборудование]![Марка] Is Null) Or (Forms![Транспортное оборудование]![Атнсс] Is Null) Or (Forms![Транспортное оборудование]![Код] Is Null) Or (Forms![Транспортное оборудование]![Стоим] Is Null)")) Then
MsgBox "Введены не все данные!", vbExclamation, "Добавление нового оборудования"
Exit Sub
End If
DoCmd.GoToControl "КодТр"
DoCmd.FindRecord Val(Forms![Транспортное оборудование]!Код), acEntire, False, , True, acCurrent, True
If (Val(Forms![Транспортное оборудование]!Код) = Forms![Транспортное оборудование]!КодТр) Then
Beep
MsgBox "Такой номер уже существует!", vbExclamation, "Ошибка"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеТр", acNormal, "", "", , acHidden
DoCmd.GoToRecord acForm, "ДобавлениеТр", acNewRec
Forms!ДобавлениеТр!КодТр = Forms![Транспортное оборудование]!Код
Forms!ДобавлениеТр!МаркаТр = Forms![Транспортное оборудование]!Марка
Forms!ДобавлениеТр!КодТНС = Forms![Транспортное оборудование]!Атнсс
Forms!ДобавлениеТр!СтоимТр = Forms![Транспортное оборудование]!Стоим
DoCmd.Close acForm, "ДобавлениеТр"
DoCmd.Requery ""
DoCmd.Requery "КодУдаления"
End With
Добавление_Ввод_транспорта_Exit:
Exit Sub
Добавление_Ввод_транспорта_Err:
DoCmd.Close acForm, "ДобавлениеТр"
'MsgBox Error$
Resume Добавление_Ввод_транспорта_Exit
End Sub
Private Sub Кнопка33_Click()
On Error GoTo Удаление_Удаление_транспорта_Err
If (Eval("Forms![Транспортное оборудование]!КодУдаления Is Null")) Then
MsgBox "Введены не все данные!", vbExclamation, "Удаление оборудования"
Exit Sub
End If
DoCmd.OpenForm "ДобавлениеТр", acNormal, "", "", , acHidden
DoCmd.SelectObject acForm, "ДобавлениеТр", False
DoCmd.GoToControl "[КодТр]"
DoCmd.FindRecord Forms![Транспортное оборудование]!КодУдаления, acEntire, False, True, acCurrent, False
DoCmd.RunCommand acCmdDeleteRecord
DoCmd.Close acForm, "ДобавлениеТр"
DoCmd.Requery ""
DoCmd.Requery "КодУдаления"
Forms![Транспортное оборудование]!КодУдаления = ""
Удаление_Удаление_транспорта_Exit:
Exit Sub
Удаление_Удаление_транспорта_Err:
DoCmd.Close acForm, "ДобавлениеТр"
m = MsgBox("Неизвестная ошибка. Удаление невозможно!", vbExclamation, "Удаление оборудования")
''MsgBox Error$
Resume Удаление_Удаление_транспорта_Exit
End Sub
Форма «Замена оборудования»
Private Sub Кнопка6_Click()
If [Forms]![Отчет]![Flag].Value = Null Then m = MsgBox("Введите табельный номер", vbExclamation, "Ошибка"): Exit Sub
If [Forms]![Отчет]![Flag].Value = 1 Then
ЗапросОбр
Else
ЗапросТр
End If
End Sub
Private Sub Список0_Click()
DoCmd.Requery "Table"
End Sub
Private Sub Флажок4_Click()
If Флажок4.Value Then
[Список0].RowSource = "Обрабатывающее оборудование"
Table.SourceObject = "Запрос.ЗапросЗамены Обр"
Else
[Список0].RowSource = "Транспортное оборудование"
Table.SourceObject = "Запрос.ЗапросЗамены Тр"
End If
[Список0].Value = Null
End Sub
... учета не только в масштабах российской экономики, но и отдельных ее отраслей, отдельных хозяйствующих субъектов. Это, в частности, относится к организации учета на предприятиях пищевой промышленности, особенно организация бухгалтерского учета основных средств в свете требований новых нормативных документов, таких как "Положение по бухгалтерскому учету основных средств (ПБУ/6), "Методические ...
... Автоматизация учета основных средств отличается тем, что здесь наблюдается стабильность информации. Для автоматизации учета основных средств применяются коды: · синтетических счетов и субсчетов и объектов аналитического учета, · структурных подразделений предприятия; · инвентарных объектов, норм амортизационных отчислений; · бухгалтерских операций и др. ...
... (кроме автотранспорта) при полной или частичной их ликвидации. 4. Форма № ОС-4 “Акт на списание автотранспортных средств”. Этим документом оформляют списание грузового или легкового автомобиля, прицепа или полуприцепа при их ликвидации. 5. Форма № ОС-6 “Инвентарная карточка учета основных средств”. Применяется для учета всех видов основных средств. Карточки ведут в бухгалтерии на каждый объект; ...
... налогообложения [36]. Для целей налогообложения прибыли в соответствии со ст.313 НК РФ организация должна самостоятельно разработать регистры налогового учета амортизируемых основных средств. В случае, когда бухгалтерский и налоговый учет основных средств ведутся в организации таким образом, что данные бухгалтерского учета полностью совпадают с данными налогового учета, у налогоплательщика нет ...
0 комментариев