summaryrefslogtreecommitdiff
path: root/app/schulis/2.2.1/src/1.hoeherstufen anw do.prog
diff options
context:
space:
mode:
Diffstat (limited to 'app/schulis/2.2.1/src/1.hoeherstufen anw do.prog')
-rw-r--r--app/schulis/2.2.1/src/1.hoeherstufen anw do.prog43
1 files changed, 43 insertions, 0 deletions
diff --git a/app/schulis/2.2.1/src/1.hoeherstufen anw do.prog b/app/schulis/2.2.1/src/1.hoeherstufen anw do.prog
new file mode 100644
index 0000000..d7dc1ea
--- /dev/null
+++ b/app/schulis/2.2.1/src/1.hoeherstufen anw do.prog
@@ -0,0 +1,43 @@
+PACKET hoeherstufenanwdoprogDEFINES halbjahreswechselbearbeitung,
+hochsetzeneingangsbehandlung,hochsetzenbearbeitung,hochsetzenprotokolldrucken
+:#LET schuljahreswechsel="isp.hoeherstufen local.sj",halbjahreswechsel=
+"isp.hoeherstufen local.hj";#LET niltext="",tofather=1,tograndfather=2,
+maxjahr=100,minjahr="00";LET zumschuljahresende=1,zumhalbjahresende=0;LET
+schluesselschuljahr="Schuljahr",schluesselhalbjahr="Schulhalbjahr",
+schuljahresfeld=2,infofeld=3;LET meldende=110,melddruck=58,meldwarten=156;
+LET protname="Fehlerprotokoll";LET rcodeprot=1001;DATASPACE VAR ds;INT VAR
+kanal:=channel,rcode;TAG VAR aktuellemaske;TEXT VAR aktschuljahr,akthalbjahr,
+kommendesschuljahr;LET logbucheintragsjwechsel="Anw. 1.5.1 Hochsetzen ",
+logbucheintraghjwechsel="Anw. 1.5.2 Halbjahreswechsel ";TEXT VAR
+logbuchtextanfang;PROC hochsetzeneingangsbehandlung:reinitparsing;
+eingangsbildschirmzeigen;schuljahrzeigen;aufaktionwarten.
+eingangsbildschirmzeigen:initmaske(aktuellemaske,maske(vergleichsknoten));
+standardstartproc(maske(vergleichsknoten)).schuljahrzeigen:schuljahrIN
+schuljahresfeld.schuljahr:aktschuljahr:=schulkenndatum(schluesselschuljahr);
+akthalbjahr:=schulkenndatum(schluesselhalbjahr);kommendesschuljahr:=subtext(
+aktschuljahr,3,4);kommendesschuljahrCAT (jahrestext(int(kommendesschuljahr)+1
+));aktschuljahr.aufaktionwarten:infeld(infofeld);standardnproc.END PROC
+hochsetzeneingangsbehandlung;PROC halbjahreswechselbearbeitung:
+logbuchtextanfang:=logbucheintraghjwechsel;logeintrag(logbucheintraghjwechsel
++"gestartet");abschnittsendebearbeitung(zumhalbjahresende)END PROC
+halbjahreswechselbearbeitung;PROC hochsetzenbearbeitung:logbuchtextanfang:=
+logbucheintragsjwechsel;logeintrag(logbucheintragsjwechsel+"gestartet");
+abschnittsendebearbeitung(zumschuljahresende)END PROC hochsetzenbearbeitung;
+PROC abschnittsendebearbeitung(INT CONST zeitpunkt):meldewarten;
+fehlerbehandlungvorbereiten;verarbeitung;reinitparsing;fehlerauswertung.
+meldewarten:standardmeldung(meldwarten,niltext).fehlerbehandlungvorbereiten:
+forget(protname,quiet);disablestop.verarbeitung:kanal:=channel;#17.10.88dr#
+putsndparam(1,text(kanal));break(quiet);IF zeitpunkt=zumschuljahresendeTHEN
+doonserver("schuljahreswechsel",rcode)ELSE doonserver("halbjahreswechsel",
+rcode)FI ;continue(kanal).fehlerauswertung:loeschemeldung(aktuellemaske);IF
+rcode=rcodeprotTHEN ds:=getrcvds;copy(ds,protname);forget(ds);logeintrag(
+logbuchtextanfang+"beendet mit Fehlern");zeigefehlerprotokollELSE logeintrag(
+logbuchtextanfang+"beendet ohne Fehler");fertigmeldungFI .
+zeigefehlerprotokoll:store(FALSE );clearerror;enablestop;editiere(protname).
+fertigmeldung:IF NOT iserrorTHEN standardmeldung(meldende,niltext);FI ;return
+(tofather).END PROC abschnittsendebearbeitung;PROC hochsetzenprotokolldrucken
+:print(protname);forget(protname,quiet);reorganizescreen;standardmeldung(
+melddruck,niltext);return(tograndfather)END PROC hochsetzenprotokolldrucken;
+TEXT PROC jahrestext(INT CONST jahr):IF jahr=maxjahrTHEN minjahrELSE text(
+jahr)FI END PROC jahrestext;END PACKET hoeherstufenanwdoprog
+