-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathkalender_initialisieren.uda
138 lines (119 loc) · 7.19 KB
/
kalender_initialisieren.uda
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
# Copyright (C) 2014 BitCtrl Systems GmbH
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License along
# with this program; if not, write to the Free Software Foundation, Inc.,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
# Skript : Kalender
# Erstellt durch: CH
# Am : 23.07.2014 16:17:17
#
mit fehlerausgabe systemkalenderEintragAnlegen("neujahr","Neujahr","Neujahr:=01.01.*,*")
mit fehlerausgabe systemkalenderEintragAnlegen("tagDerArbeit","Tag der Arbeit","Tag der Arbeit:=01.05.*,*")
mit fehlerausgabe systemkalenderEintragAnlegen("tagDerDeutschenEinheit","Tag der Deutschen Einheit","Tag der Deutschen Einheit:=03.10.*,*")
mit fehlerausgabe systemkalenderEintragAnlegen("ersterWeihnachtstag","1. Weihnachtstag","1. Weihnachtstag:=25.12.*,*")
mit fehlerausgabe systemkalenderEintragAnlegen("zweiterWeihnachtstag","2. Weihnachtstag","2. Weihnachtstag:=26.12.*,*")
mit fehlerausgabe systemkalenderEintragAnlegen("karfreitag","Karfreitag","Karfreitag:=Ostersonntag-2 Tage")
mit fehlerausgabe systemkalenderEintragAnlegen("ostermontag","Ostermontag","Ostermontag:=Ostersonntag+1 Tage")
mit fehlerausgabe systemkalenderEintragAnlegen("christiHimmelfahrt","Christi Himmelfahrt","Christi Himmelfahrt:=Ostersonntag+39 Tage")
mit fehlerausgabe systemkalenderEintragAnlegen("pfingstMontag","Pfingstmontag","Pfingstmontag:=Ostersonntag+50 Tage")
mit fehlerausgabe ereigniskalenderTypEintragAnlegen("montag", "Montag", 50)
mit fehlerausgabe ereigniskalenderTypEintragAnlegen("dienstag", "Dienstag", 50)
mit fehlerausgabe ereigniskalenderTypEintragAnlegen("mittwoch", "Mittwoch", 50)
mit fehlerausgabe ereigniskalenderTypEintragAnlegen("donnerstag", "Donnerstag",50)
mit fehlerausgabe ereigniskalenderTypEintragAnlegen("freitag", "Freitag", 50)
mit fehlerausgabe ereigniskalenderTypEintragAnlegen("samstag", "Samstag",50)
mit fehlerausgabe ereigniskalenderTypEintragAnlegen("sonntag", "Sonntag",50)
mit fehlerausgabe ereigniskalenderTypEintragAnlegen("ostersonntag", "Ostersonntag",100)
#
#Anlegen eines neues Systemkalendereintrages inkl. gleichnamigem Ereignistyp und Ereigniskalendereintrag
#
funktion systemkalenderEintragAnlegen(eintragPid, eintragName, eintragDefinition)
ausgabe "Erzeuge neuen Systemkalendereintrag " & eintragName
mit fehlerausgabe konfiguration.neuesObjekt("typ.systemKalenderEintrag","ske." & eintragPid,eintragName)
attributgruppe = konfiguration.attributgruppe("atg.systemKalenderEintrag")
aspekt = konfiguration.aspekt("asp.parameterVorgabe")
neuerEintrag = konfiguration.objekt("ske." & eintragPid)
datensatz = attributgruppe.datensatz()
datensatz.Definition = eintragDefinition
mit fehlerausgabe neuerEintrag.datenSchreiben(aktuell, attributgruppe, aspekt, datensatz)
aoe = konfiguration.objekt("kv.aoe.ni.vrz")
iteration über eineMenge in aoe.mengen
wenn eineMenge.name = "SystemKalenderEinträge" dann
mit fehlerausgabe eineMenge.einfügen(neuerEintrag)
ende wenn
ende iteration
#Pro Systemkalendereintrag legen wir einen EreigniskalenderTyp Eintrag an.
ohne fehlerprüfung ereigniskalenderTypEintragAnlegen(eintragPid,eintragName, 100)
ende funktion
#
# Anlegen eines EreigniskalenderTyp Eintrages mit entsprechender Priotität.
#
funktion ereigniskalenderTypEintragAnlegen(eintragPid,eintragName, priorität)
systemkalenderEintragReferenz = konfiguration("ske." & eintraPid)
atgTypKonfiguration = konfiguration.attributgruppe("atg.ereignisTypEigenschaften")
aspEigenschaften = konfiguration.aspekt("asp.eigenschaften")
datensatzTypKonfiguration = atgTypKonfiguration.datensatz()
datensatzTypKonfiguration.ZusätzlicheAttribute[1].Attributname = ""
datensatzTypKonfiguration.ZusätzlicheAttribute[1].Attributwert = ""
konfigDaten = konfiguration.datenUndAttributgruppenVerwendungsInformation(atgTypKonfiguration,aspEigenschaften,datensatzTypKonfiguration)
mit fehlerausgabe konfiguration.neuesObjekt("typ.ereignisTyp","ekt." & eintragPid,eintragName, konfigDaten)
atgTypParameter = konfiguration.attributgruppe("atg.ereignisTypParameter")
aspekt = konfiguration.aspekt("asp.parameterVorgabe")
neuerEreignisTyp = konfiguration.objekt("ekt." & eintragPid)
datensatz = atgTypParameter.datensatz()
datensatz.EreignisTypPriorität = priorität
mit fehlerausgabe neuerEreignisTyp.datenSchreiben(aktuell, atgTypParameter, aspekt, datensatz)
aoe = konfiguration.objekt("kv.aoe.ni.vrz")
iteration über eineMenge in aoe.mengen
wenn eineMenge.name = "EreignisTypen" dann
mit fehlerausgabe eineMenge.einfügen(neuerEreignisTyp)
ende wenn
ende iteration
ohne fehlerprüfung ereigniskalenderEintragAnlegen(eintragPid, eintragName)
ende funktion
#
# Anlegen eines Ereigniskalender Eintrages.
#
funktion ereigniskalenderEintragAnlegen(eintragPid, eintragName)
systemkalenderEintragReferenz = konfiguration.objekt("ske." & eintragPid)
ereignisTypReferenz = konfiguration.objekt("ekt." & eintragPid)
atgEreignisEigenschaften = konfiguration.attributgruppe("atg.ereignisEigenschaften")
aspEigenschaften = konfiguration.aspekt("asp.eigenschaften")
datensatzEreignisEigenschaften = atgEreignisEigenschaften.datensatz()
datensatzEreignisEigenschaften.Ereignisbeschreibung = "Es ist " & eintragName & " bei BitCtrl"
datensatzEreignisEigenschaften.EreignisTypReferenz = ereignisTypReferenz
datensatzEreignisEigenschaften.ZusätzlicheAttribute[1].Attributname = ""
datensatzEreignisEigenschaften.ZusätzlicheAttribute[1].Attributwert = ""
konfigDaten = konfiguration.datenUndAttributgruppenVerwendungsInformation(atgEreignisEigenschaften,aspEigenschaften,datensatzEreignisEigenschaften)
mit fehlerausgabe konfiguration.neuesObjekt("typ.ereignis","eke." & eintragPid, eintragName, konfigDaten)
atgEreignisParameter = konfiguration.attributgruppe("atg.ereignisParameter")
aspekt = konfiguration.aspekt("asp.parameterVorgabe")
neuesEreignis = konfiguration.objekt("eke." & eintragPid)
datensatz = atgEreignisParameter.datensatz()
datensatz.BeginnZeitlicheGültigkeit = zeitstempel("01.01.1972 00:00:00,000")
datensatz.EndeZeitlicheGültigkeit = zeitstempel("01.01.1972 00:00:00,000")
datensatz.SystemKalenderEintragReferenz = systemkalenderEintragReferenz
datensatz.VerkehrlicheGültigkeit[1].ZeitDauerAnfangIntervall = 0 Sekunden
#datensatz.VerkehrlicheGültigkeit[1].ZeitBezugAnfangIntervall = 1
datensatz.VerkehrlicheGültigkeit[1].ZeitDauerEndeIntervall = 0 Sekunden
#datensatz.VerkehrlicheGültigkeit[1].ZeitBezugEndeIntervall = 2
datensatz.Quelle = ""
#datensatz.Urlasser.Veranlasser = "Mr.X"
mit fehlerausgabe neuesEreignis.datenSchreiben(aktuell, atgEreignisParameter, aspekt, datensatz)
aoe = konfiguration.objekt("kv.aoe.ni.vrz")
iteration über eineMenge in aoe.mengen
wenn eineMenge.name = "Ereignisse" dann
mit fehlerausgabe eineMenge.einfügen(neuesEreignis)
ende wenn
ende iteration
ende funktion