-
Notifications
You must be signed in to change notification settings - Fork 0
/
ModImport.bas
216 lines (147 loc) · 6.02 KB
/
ModImport.bas
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
Attribute VB_Name = "ModImport"
Option Compare Database
Option Explicit
' Importieren der Schülerdaten in die jeweiligen Tabellen
' Schritt 1: Einlesen der Daten in eine Collection
' Schritt 2: Prüfung ob der Schüler existiert, wenn ja: stimmt Klasse/Klassengruppe?
' ja: sind Einträge der Fächer vorhanden?
' nein: SchülerNoteneinträge anlegen
' nein: Dem Schüler die Klassengruppe zuweisen und die SchülerNoteneinträge anlegen
' wenn nein: gibt es die Klasse?
' ja: Schüler anlegen und SchülerNoteneinträge anlegen
' nein: Klasse anlegen, KlassenNoteneinträge anlegen und Schülernoteneinträge anlegen
Sub SchuelerImportieren(strDateiname As String)
Dim myClsDatei As clsDatei
Dim myClsDb As clsDB
Dim myColSchueler As colSchüler
On Error GoTo Err_SchuelerImportieren
' Einlesen der Schüler
Set myClsDatei = New clsDatei
myClsDatei.Dateiname = strDateiname
myClsDatei.Dateiart = 1
myClsDatei.DateiOeffnen
myClsDatei.DateiLesen
myClsDatei.DateiSchliessen
Set myColSchueler = myClsDatei.Schueler
' Schüler in Datenbank aufnehmen
Set myClsDb = New clsDB
Set myClsDb.Schueler = myColSchueler
myClsDb.SchuelerImportieren
MeldungAusgeben "Import der Schülerdaten erfolgreich abgeschlossen!"
Exit_SchuelerImportieren:
Set myColSchueler = Nothing
Set myClsDb = Nothing
Set myClsDatei = Nothing
Exit Sub
Err_SchuelerImportieren:
FehlermeldungAusgeben "ModImport", Err.Source, Err.Number, Err.Description
Resume Exit_SchuelerImportieren
End Sub
Sub LehrerImportieren(strDateiname As String)
Dim myClsDatei As clsDatei
Dim myClsDb As clsDB
Dim myColLehrer As colLehrer
On Error GoTo Err_LehrerImportieren
' Einlesen der Lehrer
Set myClsDatei = New clsDatei
myClsDatei.Dateiname = strDateiname
myClsDatei.Dateiart = 2
myClsDatei.DateiOeffnen
myClsDatei.DateiLesen
myClsDatei.DateiSchliessen
Set myColLehrer = myClsDatei.Lehrer
' Schüler in Datenbank aufnehmen
Set myClsDb = New clsDB
Set myClsDb.Lehrer = myColLehrer
myClsDb.LehrerImportieren
MeldungAusgeben "Import der Lehrerdaten erfolgreich abgeschlossen!"
Exit_LehrerImportieren:
Set myColLehrer = Nothing
Set myClsDb = Nothing
Set myClsDatei = Nothing
Exit Sub
Err_LehrerImportieren:
FehlermeldungAusgeben "ModImport", Err.Source, Err.Number, Err.Description
Resume Exit_LehrerImportieren
End Sub
Sub SchuleImportieren(strDateiname As String)
Dim myClsDatei As clsDatei
Dim myClsDb As clsDB
Dim myColSchule As colSchule
On Error GoTo Err_SchuleImportieren
' Einlesen der Lehrer
Set myClsDatei = New clsDatei
myClsDatei.Dateiname = strDateiname
myClsDatei.Dateiart = 3
myClsDatei.DateiOeffnen
myClsDatei.DateiLesen
myClsDatei.DateiSchliessen
Set myColSchule = myClsDatei.Schule
' Schule in Datenbank aufnehmen
Set myClsDb = New clsDB
Set myClsDb.Schule = myColSchule
myClsDb.SchuleImportieren
MeldungAusgeben "Import der Schuldaten erfolgreich abgeschlossen!"
Exit_SchuleImportieren:
Set myColSchule = Nothing
Set myClsDb = Nothing
Set myClsDatei = Nothing
Exit Sub
Err_SchuleImportieren:
FehlermeldungAusgeben "ModImport", Err.Source, Err.Number, Err.Description
Resume Exit_SchuleImportieren
End Sub
Sub HalbjahresNotenImportieren(strDateiname As String, lngFachUid As Long, lngKlassengruppeUid As Long, lngJahrgangsstufeUid As Long)
Dim myClsDatei As clsDatei
Dim myClsDb As clsDB
Dim myColHalbjahr As colHalbjahrNoten
On Error GoTo Err_HalbjahrImportieren
' Einlesen der Halbjahresergebnisse
Set myClsDatei = New clsDatei
myClsDatei.Dateiname = strDateiname
myClsDatei.Dateiart = 4
myClsDatei.DateiOeffnen
myClsDatei.DateiLesen
myClsDatei.DateiSchliessen
Set myColHalbjahr = myClsDatei.HalbjahrNoten
' Noten in Datenbank aufnehmen
Set myClsDb = New clsDB
Set myClsDb.Halbjahr = myColHalbjahr
myClsDb.HalbjahresNotenImportieren lngFachUid, lngKlassengruppeUid, lngJahrgangsstufeUid
MeldungAusgeben "Import der Halbjahresleistungen erfolgreich abgeschlossen!"
Exit_HalbjahrImportieren:
Set myColHalbjahr = Nothing
Set myClsDb = Nothing
Set myClsDatei = Nothing
Exit Sub
Err_HalbjahrImportieren:
FehlermeldungAusgeben "ModImport", Err.Source, Err.Number, Err.Description
Resume Exit_HalbjahrImportieren
End Sub
Sub HalbjahresNotenKomplettImportieren(strDateiname As String)
Dim myClsDatei As clsDatei
Dim myClsDb As clsDB
Dim myColHalbjahrKomplett As colHalbjahrNotenKomplett
On Error GoTo Err_HalbjahrKomplettImportieren
' Einlesen der Halbjahresergebnisse
Set myClsDatei = New clsDatei
myClsDatei.Dateiname = strDateiname
myClsDatei.Dateiart = 5
myClsDatei.DateiOeffnen
myClsDatei.DateiLesen
myClsDatei.DateiSchliessen
Set myColHalbjahrKomplett = myClsDatei.HalbjahrNotenKomplett
' Noten in Datenbank aufnehmen
Set myClsDb = New clsDB
Set myClsDb.HalbjahrKomplett = myColHalbjahrKomplett
myClsDb.HalbjahresNotenKomplettImportieren
MeldungAusgeben "Import der Halbjahresleistungen erfolgreich abgeschlossen!"
Exit_HalbjahrKomplettImportieren:
Set myColHalbjahrKomplett = Nothing
Set myClsDb = Nothing
Set myClsDatei = Nothing
Exit Sub
Err_HalbjahrKomplettImportieren:
FehlermeldungAusgeben "ModImport", Err.Source, Err.Number, Err.Description
Resume Exit_HalbjahrKomplettImportieren
End Sub