summaryrefslogtreecommitdiff
path: root/app/schulis/2.2.1/src/0.kurswahlbasis bereinigen
diff options
context:
space:
mode:
Diffstat (limited to 'app/schulis/2.2.1/src/0.kurswahlbasis bereinigen')
-rw-r--r--app/schulis/2.2.1/src/0.kurswahlbasis bereinigen34
1 files changed, 34 insertions, 0 deletions
diff --git a/app/schulis/2.2.1/src/0.kurswahlbasis bereinigen b/app/schulis/2.2.1/src/0.kurswahlbasis bereinigen
new file mode 100644
index 0000000..8be6d56
--- /dev/null
+++ b/app/schulis/2.2.1/src/0.kurswahlbasis bereinigen
@@ -0,0 +1,34 @@
+PACKET kurswahlbasisbereinigenDEFINES kurswahlserveraktualisieren,
+kurswahlserverlvaktualisieren:LET server="kurswahl server",jg9=9,jg14=14,hj1=
+"1",hj2="2",dbsj="Schuljahr",dbhj="Schulhalbjahr",kurswahl="Kurswahl-",kw2=
+"2 ",kw0="0 ";INT VAR sj1,sj2,sj3,sj4,akthj;TEXT VAR schuljahr,halbjahr;TASK
+VAR takuser;PROC kurswahlserveraktualisieren(TEXT CONST jgst,spezjgst,spezhj)
+:serveraktualisieren(kw2,jgst,spezjgst,spezhj)END PROC
+kurswahlserveraktualisieren;PROC kurswahlserverlvaktualisieren(TEXT CONST
+jgst,spezjgst,spezhj):serveraktualisieren(kw0,jgst,spezjgst,spezhj)END PROC
+kurswahlserverlvaktualisieren;PROC serveraktualisieren(TEXT CONST ds,jgst,
+spezjgst,spezhj):INT VAR jg:=int(jgst),spezjg:=int(spezjgst),jgdiff;IF
+existstask(server)THEN takuser:=task(server);schuljahr:=schulkenndatum(dbsj);
+halbjahr:=schulkenndatum(dbhj);sj1:=int(schuljahr);sj2:=sj1+101;sj3:=sj2+101;
+sj4:=sj3+101;IF jg>jg9CAND jg<jg14THEN commanddialogue(FALSE );IF (spezjgst=
+""CAND spezhj="")THEN loeschealledatenraeumeELIF spezjg>jg9CAND spezjg<jg14
+THEN IF spezhj=hj1COR spezhj=hj2THEN loeschespezdatenraumFI ;FI ;
+commanddialogue(TRUE );FI ;FI .loeschealledatenraeume:IF NOT (jg=10CAND
+halbjahr="1")THEN erase(datenraumname(jg,ds,hj1,schuljahr),takuser);erase(
+datenraumname(jg,ds,hj2,schuljahr),takuser);erase(datenraumname(jg+1,ds,hj1,
+konvsj(sj2)),takuser);erase(datenraumname(jg+1,ds,hj2,konvsj(sj2)),takuser);
+erase(datenraumname(jg+2,ds,hj1,konvsj(sj3)),takuser);erase(datenraumname(jg+
+2,ds,hj2,konvsj(sj3)),takuser);erase(datenraumname(jg+3,ds,hj1,konvsj(sj4)),
+takuser);erase(datenraumname(jg+3,ds,hj2,konvsj(sj4)),takuser)FI .
+loeschespezdatenraum:akthj:=int(halbjahr);jgdiff:=spezjg-jg;IF NOT (jg=10
+CAND spezjg=10)THEN IF jgdiff=0CAND spezhj>=halbjahrTHEN erase(datenraumname(
+spezjg,ds,spezhj,schuljahr),takuser)ELIF jgdiff=1THEN erase(datenraumname(
+spezjg,ds,spezhj,konvsj(sj2)),takuser)ELIF jgdiff=2THEN erase(datenraumname(
+spezjg,ds,spezhj,konvsj(sj3)),takuser)ELIF jgdiff=3THEN erase(datenraumname(
+spezjg,ds,spezhj,konvsj(sj4)),takuser)FI FI .END PROC serveraktualisieren;
+TEXT PROC datenraumname(INT CONST jgst,TEXT CONST dsp,halbjahr,schuljahr):
+TEXT VAR name:=kurswahl;nameCAT dsp;nameCAT text(jgst);nameCAT " ";nameCAT
+halbjahr;nameCAT ".";nameCAT schuljahr;nameEND PROC datenraumname;TEXT PROC
+konvsj(INT CONST sjbez):IF sjbez<9901THEN text(sjbez)ELSE subtext(text(sjbez)
+,2)FI END PROC konvsj;END PACKET kurswahlbasisbereinigen;
+