- •Введение
- •1. Постановка задачи
- •2. Анализ задачи
- •2.1. Приём работника
- •2.1.1. Выводы
- •2.2. Работа с учащимся
- •2.2.1. Выводы
- •2.3.1. 1С Кадры и Зарплата
- •2.3.2. HRM-системы «КОМПАС: Управление персоналом»
- •2.3.3. Выводы
- •2.4.1.1. Microsoft SQL Server
- •2.4.1.2. Interbase
- •2.4.1.3. Firebird (FirebirdSQL)
- •2.4.1.4. MySQL
- •2.4.2.2. Microsoft Access
- •2.4.2.3. OpenOffice.org Base
- •2.4.3. Вывод
- •3.1.2. Даталогическая модель данных
- •3.2. Проектирование базы данных по учащимся общеобразовательного учреждения
- •3.1.1. Инфологическая модель данных
- •3.2.2. Даталогическая модель данных
- •3.3. Физическая модель данных
- •3.4. Разработка интерфейса
- •3.4.1. Главная форма
- •3.4.2. Форма «Работники»
- •3.4.3. Форма «Анкетные данные»
- •3.4.4. Форма «Учащиеся»
- •3.4.5. Форма «Учащийся»
- •3.4.6. Форма «Родитель»
- •3.4.7. Форма «Связать с родителями»
- •4. Результаты испытаний
- •Заключение
- •Список источников
- •Приложение 1. Техническое задание
- •Приложение 2. Коды программ
Приложение 2. Коды программ
Главная форма
Option Compare Database
Private Sub Кнопка2_Click() 'Открытие Формы Работники
On Error GoTo Err_Кнопка2_Click
Dim stDocName As String
Dim stLinkCriteria As String stDocName = "Форма Работники"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Кнопка2_Click:
Exit Sub
Err_Кнопка2_Click:
MsgBox Err.Description
Resume Exit_Кнопка2_Click
End Sub
Private Sub Кнопка6_Click() 'Кнопка Выход
On Error GoTo Err_Кнопка6_Click
DoCmd.Close
Exit_Кнопка6_Click:
Exit Sub
Err_Кнопка6_Click:
MsgBox Err.Description
Resume Exit_Кнопка6_Click
End Sub
62
Private Sub Кнопка9_Click() 'Открытие Формы Учащиеся
On Error GoTo Err_Кнопка9_Click
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Форма Учащиеся"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Кнопка9_Click:
Exit Sub
Err_Кнопка9_Click:
MsgBox Err.Description Resume Exit_Кнопка9_Click
End Sub
Форма «Работники»
Option Compare Database
Private Sub Form_Activate() Список0.Requery
End Sub
Private Sub КнопкаВыбрать_Click() 'Выборка
Список0.RowSource = "SELECT Анкетные_данные.Таб_№, Анкетные_данные.Фамилия, Анкетные_данные.Имя, Анкетные_данные.Отчество FROM Анкетные_данные WHERE
(((Анкетные_данные.Фамилия) Like " + """" + "*" + Фамилия.Value + "*" + """" + "));"
End Sub
63
Private Sub КнопкаЗакрыть_Click() 'Закрытие формы
On Error GoTo Err_КнопкаЗакрыть_Click
DoCmd.Close
Exit_КнопкаЗакрыть_Click:
Exit Sub
Err_КнопкаЗакрыть_Click:
MsgBox Err.Description
Resume Exit_КнопкаЗакрыть_Click
End Sub
Private Sub КнопкаНовая_Click()
'Открытие Формы Анкетные данные (новый работник) On Error GoTo Err_КнопкаНовая_Click_Click
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Форма Анкетные данные"
stLinkCriteria = "" DoCmd.OpenForm stDocName, acNormal
Exit_КнопкаНовая_Click_Click:
Exit Sub
Err_КнопкаНовая_Click_Click:
MsgBox Err.Description
Resume Exit_КнопкаНовая_Click
End Sub
64
Private Sub КнопкаСбросить_Click() |
|
|
||
'Сброс выборки |
|
|
|
|
Список0.RowSource |
= |
"SELECT |
Анкетные_данные.Таб_№, |
|
Анкетные_данные.Фамилия, |
|
|
Анкетные_данные.Имя, |
|
Анкетные_данные.Отчество FROM Анкетные_данные;" |
|
|||
End Sub |
|
|
|
|
Private Sub Список0_DblClick(Cancel As Integer) |
|
|||
'Открытие Формы Анкетные данные по |
двойному |
щелчку мыши из |
||
списка |
|
|
|
|
DoCmd.OpenForm "Форма Анкетные данные", acNormal, , , , , _ |
||||
IIf(IsNull(Список0.Value), |
Null, |
Список0.Column(0, |
||
Список0.ListIndex)) |
|
|
|
|
End Sub |
|
|
|
|
Private Sub Кнопка_Изменить_данные_Click() 'Открытие Формы Анкетные данные
On Error GoTo Err_Кнопка_Изменить_данные_Click
DoCmd.OpenForm "Форма Анкетные данные", acNormal, , , , , _ IIf(IsNull(Список0.Value), Null, Список0.Column(0,
Список0.ListIndex))
Exit_Кнопка_Изменить_данные_Click:
Exit Sub
Err_Кнопка_Изменить_данные_Click:
MsgBox Err.Description
Resume Exit_Кнопка_Изменить_данные_Click
End Sub
Private Sub КнопкаОтчёт_Список_работников_Click() 'Открытие Отчёта Список работников
On Error GoTo Err_КнопкаОтчёт_Список_работников_Click
65
Dim stDocName As String
stDocName = ChrW(1054) & ChrW(1090) & ChrW(1095) & ChrW(1105) & ChrW(1090) & ChrW(32) & ChrW(1057) & ChrW(1087) & ChrW(1080) & ChrW(1089) & ChrW(1086) & ChrW(1082) & ChrW(32) & ChrW(1088) & ChrW(1072) & ChrW(1073) & ChrW(1086) & ChrW(1090) & ChrW(1085) & ChrW(1080) & ChrW(1082) & ChrW(1086) & ChrW(1074)
DoCmd.OpenReport stDocName, acPreview
Exit_КнопкаОтчёт_Список_работников_Click:
Exit Sub
Err_КнопкаОтчёт_Список_работников_Click:
MsgBox Err.Description
Resume Exit_КнопкаОтчёт_Список_работников_Click
End Sub
Форма «Анкетные данные» ption Compare Database
Private Sub Form_Open(Cancel As Integer)
If Not IsNull(Me.OpenArgs) Then
Me.RecordSource = "select * from Анкетные_данные where Таб_№="
+ Me.OpenArgs
Me.DataEntry = False
Else
Me.DataEntry = True
End If
End Sub
Private Sub КнопкаОтмена_Click()
On Error GoTo Err_КнопкаОтмена_Click
66
Dim F As Form
Set F = Forms("Форма Анкетные данные").[Подчиненная форма Дополнения].Form
F.Undo
Me.Undo
DoCmd.Close
Exit_КнопкаОтмена_Click:
Exit Sub
Err_КнопкаОтмена_Click:
MsgBox Err.Description
Resume Exit_КнопкаОтмена_Click
End Sub
Private Sub КнопкаСохранить_Click()
On Error GoTo Err_КнопкаСохранить_Click
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Exit_КнопкаСохранить_Click:
Exit Sub
Err_КнопкаСохранить_Click:
MsgBox Err.Description
Resume Exit_КнопкаСохранить_Click
End Sub
Private Sub КнопкаТ2_Click()
On Error GoTo Err_КнопкаТ2_Click
Dim stDocName As String
67
stDocName = "OtGlav"
DoCmd.OpenReport stDocName, acPreview, , , , Таб_№.Value
Exit_КнопкаТ2_Click:
Exit Sub
Err_КнопкаТ2_Click:
MsgBox Err.Description
Resume Exit_КнопкаТ2_Click
End Sub
Private Sub КнопкаУдалить_Click()
On Error GoTo Err_КнопкаУдалить_Click
DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70 DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70
Exit_КнопкаУдалить_Click:
Exit Sub
Err_КнопкаУдалить_Click:
MsgBox Err.Description
Resume Exit_КнопкаУдалить_Click
End Sub
Форма «Учащиеся»
Option Compare Database
Private Sub Form_Activate() Список0.Requery
End Sub
68
Private Sub Form_Open(Cancel As Integer) |
|
|||
Список0.RowSource |
= |
"SELECT |
Учащиеся.[Код |
учащегося], |
Учащиеся.Фамилия, Учащиеся.Имя, Учащиеся.Отчество |
FROM Учащиеся |
|||
WHERE (((Учащиеся.Архив)=False));" |
|
|
||
End Sub |
|
|
|
|
Private Sub ВыключательАрхив_Click() If ВыключательАрхив.Value Then
Список0.RowSource = "SELECT Учащиеся.[Код учащегося], Учащиеся.Фамилия, Учащиеся.Имя, Учащиеся.Отчество FROM Учащиеся WHERE (((Учащиеся.Архив)=True));"
Else
Список0.RowSource = "SELECT Учащиеся.[Код учащегося],
Учащиеся.Фамилия, |
Учащиеся.Имя, |
Учащиеся.Отчество |
FROM |
Учащиеся |
|||
WHERE (((Учащиеся.Архив)=False));" |
|
|
|
|
|||
End If |
|
|
|
|
|
|
|
End Sub |
|
|
|
|
|
|
|
Private Sub КнопкаВыбрать_Click() |
|
|
|
||||
Список0.RowSource |
= |
"SELECT |
Учащиеся.[Код |
учащегося], |
|||
Учащиеся.Фамилия, |
Учащиеся.Имя, |
Учащиеся.Отчество |
FROM |
Учащиеся |
|||
WHERE (((Учащиеся.Фамилия) Like " + """" + "*" + Фамилия.Value + "*" + """" + "));"
End Sub
Private Sub КнопкаЗакрыть_Click()
On Error GoTo Err_КнопкаЗакрыть_Click
DoCmd.Close
Exit_КнопкаЗакрыть_Click:
Exit Sub
Err_КнопкаЗакрыть_Click:
MsgBox Err.Description
69
Resume Exit_КнопкаЗакрыть_Click
End Sub
Private Sub КнопкаСбросить_Click()
Список0.RowSource = "SELECT Учащиеся.[Код учащегося], Учащиеся.Фамилия, Учащиеся.Имя, Учащиеся.Отчество FROM Учащиеся;"
End Sub
Private Sub КнопкаСписки_классов__пол__Click()
On Error GoTo Err_Списки_классов_Click
Dim stDocName As String
stDocName = "Отчёт список класса (пол)" DoCmd.OpenReport stDocName, acPreview
Exit_Списки_классов_Click:
Exit Sub
Err_Списки_классов_Click:
MsgBox Err.Description
Resume Exit_Списки_классов_Click
End Sub
Private Sub Списки_классов_Click()
On Error GoTo Err_Списки_классов_Click
Dim stDocName As String
stDocName = "Отчёт список класса" DoCmd.OpenReport stDocName, acPreview
Exit_Списки_классов_Click:
70
Exit Sub
Err_Списки_классов_Click:
MsgBox Err.Description
Resume Exit_Списки_классов_Click
End Sub
Private Sub Список0_DblClick(Cancel As Integer) DoCmd.OpenForm "Форма Учащийся", acNormal, , , , , _
IIf(IsNull(Список0.Value), Null, Список0.Column(0, Список0.ListIndex))
End Sub
Private Sub Кнопка_Изменить_данные_Click()
On Error GoTo Err_Кнопка_Изменить_данные_Click
DoCmd.OpenForm "Форма Учащийся", acNormal, , , , , _ IIf(IsNull(Список0.Value), Null, Список0.Column(0,
Список0.ListIndex))
Exit_Кнопка_Изменить_данные_Click:
Exit Sub
Err_Кнопка_Изменить_данные_Click:
MsgBox Err.Description
Resume Exit_Кнопка_Изменить_данные_Click
End Sub
Private Sub Кнопка4_Click() 'Открытие формы Учащийся
On Error GoTo Err_Кнопка4_Click
DoCmd.OpenForm "Форма Учащийся", acNormal
Exit_Кнопка4_Click:
71
Exit Sub
Err_Кнопка4_Click:
MsgBox Err.Description
Resume Exit_Кнопка4_Click
End Sub
Форма «Учащийся»
Option Compare Database
Private Sub Form_Activate() СписокРодителей.Requery End Sub
Private Sub Form_Open(Cancel As Integer) If Not IsNull(Me.OpenArgs) Then
Me.RecordSource = "select * from Учащиеся where [Код учащегося]=" + Me.OpenArgs
СписокРодителей.RowSource = "SELECT Родители.Код, Родители.Фамилия, Родители.Имя, Родители.Отчество, Родители.[Место работы], Родители.[Контактный телефон] FROM Родители INNER JOIN Родитель ON Родители.Код = Родитель.Родитель WHERE
(((Родитель.Учащийся)=" + Me.OpenArgs + "));" Me.DataEntry = False
Else
Me.DataEntry = True СписокРодителей.RowSource = ""
End If
End Sub
Private Sub Кнопка36_Click()
On Error GoTo Err_Кнопка36_Click
Dim stDocName As String
Dim stLinkCriteria As String
72
stDocName = ChrW(1056) & ChrW(1086) & ChrW(1076) & ChrW(1080) & ChrW(1090) & ChrW(1077) & ChrW(1083) & ChrW(1080)
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Кнопка36_Click:
Exit Sub
Err_Кнопка36_Click:
MsgBox Err.Description
Resume Exit_Кнопка36_Click
End Sub
Private Sub Кнопка41_Click()
On Error GoTo Err_Кнопка41_Click
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = ChrW(1056) & ChrW(1086) & ChrW(1076) & ChrW(1080) & ChrW(1090) & ChrW(1077) & ChrW(1083) & ChrW(1100)
stLinkCriteria = "[Учащийся]=" & Me![Поле39] DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Кнопка41_Click:
Exit Sub
Err_Кнопка41_Click:
MsgBox Err.Description
Resume Exit_Кнопка41_Click
End Sub
Private Sub Кнопка42_Click()
On Error GoTo Err_Кнопка42_Click
73
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "Родитель"
DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_Кнопка42_Click:
Exit Sub
Err_Кнопка42_Click:
MsgBox Err.Description
Resume Exit_Кнопка42_Click
End Sub
Private Sub Кнопка44_Click()
On Error GoTo Err_Кнопка44_Click
Dim stDocName As String
stDocName = ChrW(1057) & ChrW(1087) & ChrW(1080) & ChrW(1089) & ChrW(1086) & ChrW(1082) & ChrW(32) & ChrW(1082) & ChrW(1083) & ChrW(1072) & ChrW(1089) & ChrW(1089) & ChrW(1072) & ChrW(32) & ChrW(40) & ChrW(1087) & ChrW(1086) & ChrW(1083) & ChrW(41)
DoCmd.OpenReport stDocName, acPreview
Exit_Кнопка44_Click:
Exit Sub
Err_Кнопка44_Click:
MsgBox Err.Description
Resume Exit_Кнопка44_Click
74
End Sub
Private Sub КнопкаЗакрыть_форму_Click()
On Error GoTo Err_КнопкаЗакрыть_форму_Click
Me.Undo
DoCmd.Close
Exit_КнопкаЗакрыть_форму_Click:
Exit Sub
Err_КнопкаЗакрыть_форму_Click:
MsgBox Err.Description
Resume Exit_КнопкаЗакрыть_форму_Click
End Sub
Private Sub КнопкаСохранить_данные_Click()
On Error GoTo Err_КнопкаСохранить_данные_Click
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
Exit_КнопкаСохранить_данные_Click:
Exit Sub
Err_КнопкаСохранить_данные_Click:
MsgBox Err.Description
Resume Exit_КнопкаСохранить_данные_Click
End Sub
Private Sub КнопкаФорма_Родитель_Click()
On Error GoTo Err_КнопкаФорма_Родитель_Click
DoCmd.OpenForm "Форма Родитель", , , , , ,
IIf(IsNull(СписокРодителей.Value), Null, СписокРодителей.Column(0,
75
СписокРодителей.ListIndex))
Exit_КнопкаФорма_Родитель_Click:
Exit Sub
Err_КнопкаФорма_Родитель_Click:
MsgBox Err.Description
Resume Exit_КнопкаФорма_Родитель_Click
End Sub
Private Sub КнопкаНовый_родитель_Click()
On Error GoTo Err_КнопкаНовый_родитель_Click
DoCmd.OpenForm "Форма Родитель"
Exit_КнопкаНовый_родитель_Click:
Exit Sub
Err_КнопкаНовый_родитель_Click:
MsgBox Err.Description
Resume Exit_КнопкаНовый_родитель_Click
End Sub
Private Sub КнопкаРодитель_Click()
On Error GoTo Err_КнопкаРодитель_Click
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = ChrW(1060) & ChrW(1086) & ChrW(1088) & ChrW(1084) & ChrW(1072) & ChrW(32) & ChrW(1056) & ChrW(1086) & ChrW(1076) & ChrW(1080) & ChrW(1090) & ChrW(1077) & ChrW(1083) & ChrW(1080)
DoCmd.OpenForm stDocName, , , , , , [Код учащегося].Value
76
Exit_КнопкаРодитель_Click:
Exit Sub
Err_КнопкаРодитель_Click:
MsgBox Err.Description
Resume Exit_КнопкаРодитель_Click
End Sub
77
