summaryrefslogtreecommitdiff
path: root/app/schulis/2.2.1/src/0.klassengruppen definieren
diff options
context:
space:
mode:
Diffstat (limited to 'app/schulis/2.2.1/src/0.klassengruppen definieren')
-rw-r--r--app/schulis/2.2.1/src/0.klassengruppen definieren81
1 files changed, 81 insertions, 0 deletions
diff --git a/app/schulis/2.2.1/src/0.klassengruppen definieren b/app/schulis/2.2.1/src/0.klassengruppen definieren
new file mode 100644
index 0000000..0765de9
--- /dev/null
+++ b/app/schulis/2.2.1/src/0.klassengruppen definieren
@@ -0,0 +1,81 @@
+PACKET erfklassengruppenDEFINES erfassungklassengruppen:LET maskenname=
+"ms erf klassengruppen",fnrkennung=2,fnrletztesfeld=32,trenner=" = ",
+maxsugruppen=15,laengejgst=2,laengezug=4,laengeeinersugruppe=6,
+laengeklassengruppe=4,felderprozeile=2;INT VAR fnrjgst;TEXT VAR sugruppen:=""
+;TEXT VAR sugruppe:="";INT VAR anzsugruppen;TEXT VAR gueltigeschuelergruppen
+:="";LET postrenner="�";LET fuehrendenull="0",jgst5=5,jgst10=10,jgst13=13;
+LET meldnrfehlendeangabe=52,meldnrungueltigesugruppe=55,
+meldnrklassengruppezulang=60,meldnrungueltigegruppenbez=86;LET wertaktuell=
+"aktuell",wertgeplant="geplant";PROC erfassungklassengruppen(INT CONST proznr
+):systemdboff;reinitparsing;SELECT proznrOF CASE 1:setzeerfassungsparameter
+CASE 2:zeigeklassengruppezurbearbeitungCASE 3:pruefeplausibilitaetCASE 4:
+setzewertefuerdbspeicherungCASE 5:setzeidentiobjektfuerobjektlisteCASE 6:
+klassengruppenlesenCASE 7:klassengruppenaendernCASE 8:klassengruppeneinfuegen
+CASE 9:klassengruppenloeschenEND SELECT END PROC erfassungklassengruppen;
+PROC setzeerfassungsparameter:gueltigeschuelergruppen:="";
+setzeerfassungsparameter(dnrklassengruppen,maskenname,fnrletztesfeld)END
+PROC setzeerfassungsparameter;PROC zeigeklassengruppezurbearbeitung:
+setzeerfassungsfeld(wert(fnrkgklassengrp),fnrkennung);sugruppen:=wert(
+fnrkgschuelergrp);anzsugruppen:=(length(sugruppen))DIV laengeeinersugruppe;
+INT VAR i:=1;fnrjgst:=fnrkennung+1;WHILE i<=anzsugruppenREP sugruppe:=subtext
+(sugruppen,1,laengeeinersugruppe);sugruppen:=subtext(sugruppen,
+laengeeinersugruppe+1);setzeerfassungsfeld(subtext(sugruppe,1,laengejgst),
+fnrjgst);setzeerfassungsfeld(compress(subtext(sugruppe,laengejgst+1)),fnrjgst
++1);fnrjgstINCR felderprozeile;iINCR 1PER ;WHILE i<=maxsugruppenREP
+setzeerfassungsfeld("",fnrjgst);setzeerfassungsfeld("",fnrjgst+1);fnrjgst
+INCR felderprozeile;iINCR 1PER ;END PROC zeigeklassengruppezurbearbeitung;
+PROC pruefeplausibilitaet:LET leer="",null=0;INT VAR pruefbez;IF
+gueltigeschuelergruppen=""THEN
+holeallegeplundaktschuelergruppeningueltigesugruppenFI ;INT VAR fehlerstatus;
+pruefe(1,erfassungsmaske,PROC erfassungswert,fnrkennung,null,null,leer,
+fehlerstatus);IF fehlerstatus<>0THEN setzefehlerstatus(fehlerstatus);LEAVE
+pruefeplausibilitaetELIF length(erfassungswert(fnrkennung))>
+laengeklassengruppeTHEN meldeauffaellig(erfassungsmaske,
+meldnrklassengruppezulang);setzefehlerstatus(fnrkennung);LEAVE
+pruefeplausibilitaetELSE pruefbez:=int(erfassungswert(fnrkennung));IF
+lastconversionokTHEN IF pruefbez>=jgst5CAND pruefbez<=jgst13THEN
+meldeauffaellig(erfassungsmaske,meldnrungueltigegruppenbez);setzefehlerstatus
+(fnrkennung);LEAVE pruefeplausibilitaetFI FI FI ;INT VAR i;fnrjgst:=
+fnrkennung+1;FOR iFROM 1UPTO maxsugruppenREP IF erfassungswert(fnrjgst)<>""
+THEN pruefe(3,erfassungsmaske,PROC erfassungswert,fnrjgst,jgst5,jgst13,leer,
+fehlerstatus);IF fehlerstatus<>0THEN setzefehlerstatus(fehlerstatus);LEAVE
+pruefeplausibilitaetELIF kennungangegebenCAND ungueltigeschuelergruppenangabe
+THEN setzefehlerstatus(fnrjgst);meldeauffaellig(erfassungsmaske,
+meldnrungueltigesugruppe);LEAVE pruefeplausibilitaetFI ;ELIF kennungangegeben
+THEN setzefehlerstatus(fnrjgst);meldeauffaellig(erfassungsmaske,
+meldnrfehlendeangabe);LEAVE pruefeplausibilitaetFI ;fnrjgstINCR
+felderprozeilePER .kennungangegeben:erfassungswert(fnrjgst+1)<>"".
+ungueltigeschuelergruppenangabe:pos(gueltigeschuelergruppen,suchwert)=0.
+suchwert:postrenner+text(int(erfassungswert(fnrjgst)))+compress(
+erfassungswert(fnrjgst+1))+postrenner.END PROC pruefeplausibilitaet;PROC
+holeallegeplundaktschuelergruppeningueltigesugruppen:gueltigeschuelergruppen
+:=postrenner;statleseschleife(dnraktschuelergruppen,"","",fnrsgrpsj,fnrsgrpsj
+,PROC sugruppelesen);END PROC
+holeallegeplundaktschuelergruppeningueltigesugruppen;PROC sugruppelesen(BOOL
+VAR b):IF dbstatus<>0THEN b:=TRUE ELSE gueltigeschuelergruppenCAT wert(
+fnrsgrpjgst)+wert(fnrsgrpkennung)+postrennerFI END PROC sugruppelesen;PROC
+setzewertefuerdbspeicherung:putwert(fnrkgklassengrp,erfassungswert(fnrkennung
+));sugruppen:="";INT VAR i;fnrjgst:=fnrkennung+1;FOR iFROM 1UPTO maxsugruppen
+REP sugruppe:=erfassungswert(fnrjgst);IF sugruppe<>""THEN sugruppenCAT
+jgstangabe;sugruppenCAT text(erfassungswert(fnrjgst+1),laengezug)FI ;fnrjgst
+INCR felderprozeilePER ;putwert(fnrkgschuelergrp,sugruppen).jgstangabe:INT
+VAR ijgst:=int(sugruppe);IF ijgst>=jgst10CAND ijgst<=jgst13THEN sugruppeELSE
+fuehrendenull+text(ijgst,1)FI .END PROC setzewertefuerdbspeicherung;PROC
+setzeidentiobjektfuerobjektliste:LET trennsymbolfuerobli="$";TEXT VAR
+identizeile;identizeile:=wert(fnrkgklassengrp)+trenner+wert(fnrkgschuelergrp)
+;setzeidentiwert(identizeilemitschluesselanhang).
+identizeilemitschluesselanhang:identizeile+trennsymbolfuerobli+wert(
+fnrkgklassengrp).END PROC setzeidentiobjektfuerobjektliste;PROC
+klassengruppenlesen:putwert(fnrkgklassengrp,schluessel);search(
+dnrklassengruppen,TRUE );IF dbstatus=okTHEN saveupdateposition(
+dnrklassengruppen)FI END PROC klassengruppenlesen;PROC klassengruppenaendern:
+restoreupdateposition(dnrklassengruppen);update(dnrklassengruppen);
+aenderungsvermerksetzen(wertaktuell);aenderungsvermerksetzen(wertgeplant)END
+PROC klassengruppenaendern;PROC klassengruppeneinfuegen:insert(
+dnrklassengruppen);aenderungsvermerksetzen(wertaktuell);
+aenderungsvermerksetzen(wertgeplant)END PROC klassengruppeneinfuegen;PROC
+klassengruppenloeschen:delete(dnrklassengruppen);aenderungsvermerksetzen(
+wertaktuell);aenderungsvermerksetzen(wertgeplant)END PROC
+klassengruppenloeschen;TEXT PROC schluessel:erfassungswert(fnrkennung)END
+PROC schluessel;END PACKET erfklassengruppen;
+