diff options
Diffstat (limited to 'app/schulis/2.2.1/src/0.kurswahlbasis bereinigen')
-rw-r--r-- | app/schulis/2.2.1/src/0.kurswahlbasis bereinigen | 34 |
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; + |