summaryrefslogtreecommitdiff
path: root/app/schulis/2.2.1/src/0.liste der zeitrasterdaten
diff options
context:
space:
mode:
Diffstat (limited to 'app/schulis/2.2.1/src/0.liste der zeitrasterdaten')
-rw-r--r--app/schulis/2.2.1/src/0.liste der zeitrasterdaten101
1 files changed, 101 insertions, 0 deletions
diff --git a/app/schulis/2.2.1/src/0.liste der zeitrasterdaten b/app/schulis/2.2.1/src/0.liste der zeitrasterdaten
new file mode 100644
index 0000000..51e91c9
--- /dev/null
+++ b/app/schulis/2.2.1/src/0.liste der zeitrasterdaten
@@ -0,0 +1,101 @@
+PACKET listederzeitrasterdatenDEFINES
+zeitrasterlisteerstellenunddruckenggfvorherzeigen:LET fnrausggeplanteshj=2,
+fnrausgaktuelleshj=3,fnrausgdrucker=4,fnrausgbild=5;LET schluesselschuljahr=
+"Schuljahr",schluesselschulhalbjahr="Schulhalbjahr",
+anzahldatensaetzeprozeitraster=66;LET zusätzlicherlaubtetasten="vr";LET
+meldunglistewirdaufgebaut=7,meldunglistewirdausgedruckt=58,meldungbittewarten
+=69,meldungkeinedatenvorhanden=68;LET dateinamezumzeigen=
+"Liste der Zeitrasterdaten",ueberschrift1fuerdruckdatei=
+"Liste der Zeitrasterdaten",ueberschrift2fuerdruckdatei=
+"-------------------------",blankszumauffuellen=" ",
+textanfangfuerschulhalbjahr="für Schuljahr 19",trennerfuerschuljahr="/",
+textmittefuerschulhalbjahr=", ",textendefuerschulhalbjahr=". Halbjahr",
+ueberschriftdererstentabelle="Uhrzeiten:",unterschriftdererstentabelle=
+"----------",zeilederwochentage=
+" Mo Di Mi Do Fr Sa",textvorbeginnzeiten=
+". von",textvorendezeiten=" bis",trennerdererstentabelle=" ",
+stdundmintrenner=":",laengederstundenzeit=2,stellenderstundennummer=2,
+zeilenzahldererstentabelle=45,ueberschriftderzweitentabelle=
+"Kennzeichnung der Tagesteile:",unterschriftderzweitentabelle=
+"-----------------------------",zeilederstunden=
+" 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.",textmontag="Mo",
+textdienstag="Di",textmittwoch="Mi",textdonnerstag="Do",textfreitag="Fr",
+textsamstag="Sa",trennerderzweitentabelle=" ",stundenamsamstag=6,
+stundenprowochentag=12,mobissa=6,mobisfr=5,poskennungtagesteil=1,
+anfposbeginnzeit=2,endeposbeginnzeit=5,anfposendezeit=6,endeposendezeit=9,
+gesamtetextlaenge=9,stellenfuerkennungtagesteil=1,stellenfuerzeit=4;LET
+niltext="",blank=" ",null=0,eins=1;BOOL VAR erstaufbildschirm:=FALSE ;TEXT
+VAR schuljahr:=niltext,halbjahr:=niltext;INT VAR fehlerstatus;ROW
+anzahldatensaetzeprozeitrasterTEXT VAR alteszeitraster;INT VAR aktindex;PROC
+zeitrasterlisteerstellenunddruckenggfvorherzeigen(INT CONST nr):SELECT nrOF
+CASE 1:zeitrasterlisteerstellenCASE 2:zeitrasterlistedruckenENDSELECT .END
+PROC zeitrasterlisteerstellenunddruckenggfvorherzeigen;PROC
+zeitrasterlisteerstellen:INT VAR i;prüfeobrichtigangekreuztist;IF
+fehlerstatus<>nullTHEN infeld(fehlerstatus);return(1);LEAVE
+zeitrasterlisteerstellenFI ;erstaufbildschirm:=standardmaskenfeld(fnrausgbild
+)<>niltext;IF erstaufbildschirmTHEN standardmeldung(meldunglistewirdaufgebaut
+,niltext)ELSE standardmeldung(meldungbittewarten,niltext)FI ;
+berechnebearbeitungsschuljahrundhalbjahr;fuelledenpuffermitdemzeitraster;IF
+aktindex=nullTHEN standardmeldung(meldungkeinedatenvorhanden,niltext);return(
+1);LEAVE zeitrasterlisteerstellenFI ;fuegeerstetabelleindateian;
+fuegezweitetabelleindateian;IF erstaufbildschirmTHEN zeigedatei(
+dateinamezumzeigen,zusätzlicherlaubtetasten)ELSE standardmeldung(
+meldunglistewirdausgedruckt,niltext);zeitrasterlistedruckenFI .
+prüfeobrichtigangekreuztist:standardpruefe(5,fnrausggeplanteshj,
+fnrausgaktuelleshj,null,niltext,fehlerstatus);IF fehlerstatus=nullTHEN
+standardpruefe(5,fnrausgdrucker,fnrausgbild,null,niltext,fehlerstatus);FI .
+fuelledenpuffermitdemzeitraster:aktindex:=null;inittupel(dnrzeitraster);
+statleseschleife(dnrzeitraster,schuljahr,halbjahr,fnrzrsj,fnrzrhj,PROC
+fuellenurpuffer);FOR iFROM aktindex+einsUPTO anzahldatensaetzeprozeitraster
+REP alteszeitraster(i):=gesamtetextlaenge*blankPER .
+berechnebearbeitungsschuljahrundhalbjahr:schuljahr:=schulkenndatum(
+schluesselschuljahr);halbjahr:=schulkenndatum(schluesselschulhalbjahr);IF
+standardmaskenfeld(fnrausgaktuelleshj)=niltextTHEN geplanteshjundsjberechnen(
+halbjahr,schuljahr)FI .END PROC zeitrasterlisteerstellen;PROC
+zeitrasterlistedrucken:INT VAR i;TEXT VAR t;FILE VAR f1:=sequentialfile(input
+,dateinamezumzeigen);initdruckkopf(zentriert(ueberschrift1fuerdruckdatei,
+druckbreite),zentriert(ueberschrift2fuerdruckdatei,druckbreite));
+setzemitseitennummern(TRUE );druckvorbereiten;druckkopfschreiben;getline(f1,t
+);druckzeileschreiben(t);getline(f1,t);druckzeileschreiben(zentriert(compress
+(t),druckbreite));FOR iFROM einsUPTO zeilenzahldererstentabelleREP getline(f1
+,t);druckzeileschreiben(t)PER ;seitenwechsel;druckkopfschreiben;WHILE NOT eof
+(f1)REP getline(f1,t);druckzeileschreiben(t)PER ;drucknachbereiten;forget(
+dateinamezumzeigen,quiet);IF erstaufbildschirmTHEN enter(2)ELSE enter(1)FI
+END PROC zeitrasterlistedrucken;PROC fuegeerstetabelleindateian:INT VAR i,j,k
+;TEXT VAR t1,t2,t3;FILE VAR f:=sequentialfile(output,dateinamezumzeigen);
+putline(f,blank);putline(f,zentriert(textanfangfuerschulhalbjahr+text(
+schuljahr,2)+trennerfuerschuljahr+subtext(schuljahr,3)+
+textmittefuerschulhalbjahr+halbjahr+textendefuerschulhalbjahr,bildbreite));
+putline(f,blank);putline(f,blank);putline(f,ueberschriftdererstentabelle+
+blank);putline(f,unterschriftdererstentabelle+blank);putline(f,blank);putline
+(f,zeilederwochentage+blank);FOR iFROM einsUPTO stundenprowochentagREP
+putline(f,blank);t1:=text(i,stellenderstundennummer)+textvorbeginnzeiten;t2:=
+textvorendezeiten;IF i>stundenamsamstagTHEN k:=mobisfrELSE k:=mobissaFI ;FOR
+jFROM einsUPTO kREP t1CAT trennerdererstentabelle;t2CAT
+trennerdererstentabelle;t3:=subtext(alteszeitraster(i+(j-eins)*
+stundenprowochentag),anfposbeginnzeit,endeposbeginnzeit);t1CAT text(t3,
+laengederstundenzeit)+stdundmintrenner+subtext(t3,laengederstundenzeit+1);t3
+:=subtext(alteszeitraster(i+(j-eins)*stundenprowochentag),anfposendezeit,
+endeposendezeit);t2CAT text(t3,laengederstundenzeit)+stdundmintrenner+subtext
+(t3,laengederstundenzeit+1);PER ;putline(f,t1+blank);putline(f,t2+blank);PER
+;putline(f,blank);putline(f,blank);putline(f,blank)END PROC
+fuegeerstetabelleindateian;PROC fuegezweitetabelleindateian:INT VAR i,j,k;
+TEXT VAR t1;FILE VAR f:=sequentialfile(output,dateinamezumzeigen);putline(f,
+blank);putline(f,ueberschriftderzweitentabelle+blank);putline(f,
+unterschriftderzweitentabelle+blank);putline(f,blank);putline(f,
+zeilederstunden+blank);putline(f,blank);FOR iFROM einsUPTO mobissaREP SELECT
+iOF CASE 1:t1:=textmontagCASE 2:t1:=textdienstagCASE 3:t1:=textmittwochCASE 4
+:t1:=textdonnerstagCASE 5:t1:=textfreitagCASE 6:t1:=textsamstagEND SELECT ;
+IF i=mobissaTHEN k:=stundenamsamstagELSE k:=stundenprowochentagFI ;FOR jFROM
+einsUPTO kREP t1CAT trennerderzweitentabelle+text(alteszeitraster((i-eins)*
+stundenprowochentag+j),poskennungtagesteil);PER ;putline(f,t1+blank);PER END
+PROC fuegezweitetabelleindateian;PROC fuellenurpuffer(BOOL VAR b):TEXT VAR t;
+IF wert(fnrzrsj)>schuljahrCOR wert(fnrzrhj)>halbjahrCOR dbstatus<>okTHEN b:=
+TRUE ELSE aktindexINCR eins;t:=blankszumauffuellen+wert(fnrzrkennungteil);
+alteszeitraster(aktindex):=subtext(t,length(t)+eins-
+stellenfuerkennungtagesteil);t:=blankszumauffuellen+wert(fnrzrbeginnuhr);
+alteszeitraster(aktindex)CAT subtext(t,length(t)+eins-stellenfuerzeit);t:=
+blankszumauffuellen+wert(fnrzrendeuhr);alteszeitraster(aktindex)CAT subtext(t
+,length(t)+eins-stellenfuerzeit)FI END PROC fuellenurpuffer;END PACKET
+listederzeitrasterdaten
+