diff options
Diffstat (limited to 'app/schulis/2.2.1/src/1.listen.klassenbuch')
-rw-r--r-- | app/schulis/2.2.1/src/1.listen.klassenbuch | 237 |
1 files changed, 237 insertions, 0 deletions
diff --git a/app/schulis/2.2.1/src/1.listen.klassenbuch b/app/schulis/2.2.1/src/1.listen.klassenbuch new file mode 100644 index 0000000..e0c2386 --- /dev/null +++ b/app/schulis/2.2.1/src/1.listen.klassenbuch @@ -0,0 +1,237 @@ +PACKET klassenbuchlistenDEFINES klabulispezielleteile:LET nildatumdb= +"01.01.00",niltext="",blank=" ",mittestrich="-",null=0,slspalte3breite=16, +slanzspaltentrenner=2,ausgkopflaenge=3,ausgfeldlaenge=3,maxanzproseite=50, +AUSGFELD =ROW ausgfeldlaengeTEXT ,AUSGKOPF =ROW ausgkopflaengeTEXT ,SPEICHER +=ROW maxanzproseiteTEXT ,klabulieingangsmaske="ms liste klabuch eingang", +klabulianfpos=2,#dnrschueler=2,fnrsufamnames=3,fnrsurufnames=4,fnrsugebdatums +=5,fnrsustatuss=6,fnrsusgrpjgst=7,fnrsusgrpzugtut=8,fnrsugeschlechts=12, +fnrsunamenszusatzs=21,fnrsustrnrs=24,fnrsuplzorts=25,dbiplz=--,fnrsutelnrs=26 +,fnrsutidiffdaten=52,dnrdiffdaten=53,fnrddreliunter=67,fnrddreliunteranmeld= +69,fnrddreliunterabmeld=68,fnrddkunstmusik=70,fnrddfach091a=71,fnrddfach091b= +72,fnrddfach092a=73,fnrddfach092b=74,fnrddfach101a=75,fnrddfach101b=76, +fnrddfach102a=77,fnrddfach102b=78,fnrhjdfamnames=89,fnrhjdrufnames=90, +fnrhjdgebdats=91,fnrhjdhj=93,fnrhjdjgst=94,fnrhjdfach=113,fnrhjdkursart=114, +dnrfaecher=141,fnrffach=142,fnrffachbez=143,ixhjdfamrufgebjgsthj=276, +ixsustatjgstzug=255,#mnrlistewirdgedruckt=58,mnrbearbeitetwird=100, +mnrauswahlnichtsinnvoll=56;INT VAR slspalte1breite,slspalte2breite, +druckzeilenzahlgrund,druckzeilenzahl,druckzeilenzahlrest,zaehler,anzzaehler, +indexspeicher,eingabestatus,aktuelleindexnr;TEXT VAR vordruck, +vordruckueberarbsl,vordruckueberarbsr,klabuliueberschrift, +auswahlnichtsinnvoll,listewirdgedruckt,bearbeitetwird,startjahr,startzug, +schuelername,schuelerrufname,schuelernamenszus,jahrgang,zug,schuelerstrasse, +schuelerort,schuelertelefon,schuelergebdat,schuelergeschlecht,schuelerreliunt +,schuelersprachen,schuelermusfach,schuelerwpffach,schuelerkursfachbez, +schuelerkursartbez,zaehleraufber,lehrer,puffer1,puffer2,druckstrich;AUSGFELD +VAR ausgfeld;AUSGKOPF VAR slausgkopf,srausgkopf;SPEICHER VAR speicher;FILE +VAR f,g;BOOL VAR einjahrgang,alle,elementsek1,neueklasse:=FALSE ;BOOL PROC +multistopsim:BOOL VAR b:=FALSE ;IF wert(fnrsustatuss)="ls"THEN IF startjahr<> +""THEN b:=wert(fnrsusgrpjgst)=startjahr;IF bCAND startzug<>""THEN b:=wert( +fnrsusgrpzugtut)=startzugFI ELSE #b:=dbstatus=ok;#b:=wert(fnrsustatuss)="ls" +FI ;FI ;setzebestandende(NOT b);bEND PROC multistopsim;PROC +klabulispezielleteile(INT CONST nr):SELECT nrOF CASE 1: +klabulidialogvorbereiten;CASE 2:klabulieingabenrichtig;CASE 3: +klabulilistenvorbereiten;CASE 4:klabulidruckvorbereiten;CASE 5: +klabuliseitedrucken;ENDSELECT .END PROC klabulispezielleteile;PROC +klabulidialogvorbereiten:klabuliueberschrift:=text(vergleichsknoten); +setzeanfangswerte(klabulieingangsmaske,klabulianfpos).END PROC +klabulidialogvorbereiten;PROC klabulieingabenrichtig:LET fnrjgst=2,fnrzug=3; +alle:=FALSE ;einjahrgang:=FALSE ;reinitparsing;zug:=standardmaskenfeld(fnrzug +);jahrgang:=standardmaskenfeld(fnrjgst);IF standardmaskenfeld(fnrjgst)= +niltextTHEN IF zug=niltextTHEN alle:=TRUE ;setzeausgabedrucker(TRUE ); +setzeeingabetest(TRUE )ELSE meldefehler;infeld(fnrzug);setzeeingabetest( +FALSE )FI ELSE standardpruefe(3,fnrjgst,5,13,niltext,eingabestatus);IF +eingabestatus<>0THEN infeld(eingabestatus);setzeeingabetest(FALSE )ELSE +jahrgang:=zweistellig(standardmaskenfeld(fnrjgst));einjahrgang:=(zug=niltext) +;setzeausgabedrucker(TRUE );setzeeingabetest(TRUE )FI FI .meldefehler: +meldungstext(mnrauswahlnichtsinnvoll,auswahlnichtsinnvoll);standardmeldung( +auswahlnichtsinnvoll,niltext).END PROC klabulieingabenrichtig;PROC +klabulilistenvorbereiten:BOOL VAR b;startjahr:=jahrgang;startzug:=zug; +aktuelleindexnr:=ixsustatjgstzug;inittupel(dnrschueler);initobli(9); +setzeidentiwert("");putwert(fnrsusgrpjgst,startjahr);putwert(fnrsusgrpzugtut, +startzug);putwert(fnrsustatuss,"ls");#objektlistestarten(aktuelleindexnr,"", +fnrsusgrpjgst,TRUE ,b);#objektlistestarten(aktuelleindexnr,"",fnrsustatuss, +TRUE ,b);setzebestandende(NOT multistopsim)END PROC klabulilistenvorbereiten; +PROC klabulidruckvorbereiten:LET vordr="vordruck klassenbuchliste",manager= +"anschreiben server";setzemitseitennummern(FALSE );zaehler:=null;neueklasse:= +TRUE ;druckvorbereiten;variablenfuerdrucksetzen;holemeldungen;inittupel( +dnrschueler);putwert(fnrsusgrpjgst,startjahr);putwert(fnrsusgrpzugtut, +startzug);putwert(fnrsustatuss,"ls");lesenvorbereitendruck(PROC (INT CONST , +BOOL PROC ,INT VAR )scanforward,BOOL PROC multistopsim); +vordruckvommanagerholen;ueberschriftenvorbereiten;initspalten; +ausgabekoepfevorbereiten;ausgfeld(3):=druckstrich.holemeldungen:meldungstext( +mnrbearbeitetwird,bearbeitetwird).variablenfuerdrucksetzen:druckstrich:= +druckbreite*mittestrich;slspalte2breite:=(druckbreite-slanzspaltentrenner- +slspalte3breite)DIV 2;slspalte1breite:=druckbreite-slanzspaltentrenner- +slspalte2breite-slspalte3breite;druckzeilenzahlgrund:=drucklaenge- +ausgkopflaenge.vordruckvommanagerholen:vordruck:=vordr;forget(vordruck,quiet) +;fetch(vordruck,/manager).END PROC klabulidruckvorbereiten;PROC +ueberschriftenvorbereiten:LET swischuledatum=511,swiuebzeile=512, +vordrueberarbsl="vordruck ueberarbeitet sl",vordrueberarbsr= +"vordruck ueberarbeitet sr",beginnsek2=11,uebteil1sek1="Klasse: ", +uebteil1sek2="Tutorenkurs: ",ueb1teil2sek1=" Klassenlehrer: ",ueb1teil2sek2 +=" Tutor: ",ueb2teil2="Schuljahr ";jahrgangundzugholen;elementsek1bestimmen +;#puffer1:=wert();#setzesonderwerteschulkenndaten;#putwert(,puffer1);# +vordruckfuellenfuerueberschrift1;vordruckfuellenfuerueberschrift2; +verbleibendedruckzeilenzahlbestimmen.jahrgangundzugholen:jahrgang:=wert( +fnrsusgrpjgst);zug:=wert(fnrsusgrpzugtut).elementsek1bestimmen:elementsek1:= +FALSE ;IF int(jahrgang)<beginnsek2THEN elementsek1:=TRUE FI . +vordruckfuellenfuerueberschrift1:setzesonderwert(swischuledatum, +aufbereiteteschuledatum);setzesonderwert(swiuebzeile,aufbereiteteklasselehrer +);vordruckueberarbsl:=vordrueberarbsl;forget(vordruckueberarbsl,quiet); +briefalternative(vordruck,vordruckueberarbsl);f:=sequentialfile(input, +vordruckueberarbsl).vordruckfuellenfuerueberschrift2:setzesonderwert( +swischuledatum,aufbereiteteschuledatum);setzesonderwert(swiuebzeile, +aufbereiteteklasseschuljahr);vordruckueberarbsr:=vordrueberarbsr;forget( +vordruckueberarbsr,quiet);briefalternative(vordruck,vordruckueberarbsr);g:= +sequentialfile(input,vordruckueberarbsr).aufbereiteteschuledatum:puffer1:= +sonderwert(501);puffer2:=sonderwert(502);puffer2+(druckbreite-length(puffer2) +-length(puffer1))*blank+puffer1.aufbereiteteklasselehrer:klassenlehrer(lehrer +,jahrgang,zug);puffer2:=jahrgang+blank+zug;IF int(jahrgang)<11THEN +uebteil1sek1+puffer2+ueb1teil2sek1+lehrerELSE uebteil1sek2+puffer2+ +ueb1teil2sek2+lehrerFI .aufbereiteteklasseschuljahr:puffer1:=ueb2teil2+ +sonderwert(505);puffer2:=jahrgang+blank+zug;IF int(jahrgang)<11THEN puffer2:= +uebteil1sek1+puffer2ELSE puffer2:=uebteil1sek2+puffer2FI ;puffer2+( +druckbreite-length(puffer2)-length(puffer1))*blank+puffer1. +verbleibendedruckzeilenzahlbestimmen:druckzeilenzahl:=druckzeilenzahlgrund- +max(lines(f),lines(g));druckzeilenzahl:=min((maxanzproseiteDIV ( +ausgfeldlaenge-1))*ausgfeldlaenge,druckzeilenzahl).END PROC +ueberschriftenvorbereiten;PROC klassenlehrer(TEXT VAR lehrer,TEXT CONST +jahrgang,TEXT CONST zug):putwert(fnrsgrpsj,schulkenndatum("Schuljahr")); +putwert(fnrsgrphj,schulkenndatum("Schulhalbjahr"));putwert(fnrsgrpjgst, +jahrgang);putwert(fnrsgrpkennung,zug);search(dnraktschuelergruppen,TRUE );IF +dbstatus=okTHEN putwert(fnrlparaphe,wert(fnrsgrplehrer));search(dnrlehrer, +TRUE );IF dbstatus=okTHEN lehrer:=wert(fnrlfamname)ELSE lehrer:=""FI ;ELSE +lehrer:=""FI END PROC klassenlehrer;PROC ausgabekoepfevorbereiten:LET name= +" Familienname",strasse="Straße Hausnummer",telefon="Telefonnummer", +nrrufname="Nr. Rufname Namenszusatz",ort="Plz Ort";ausgabekopfslvorbelegen; +ausgabekopfsrvorbelegen.ausgabekopfslvorbelegen:hilfsfeldervorbelegen; +spaltenweise(name);spaltenweise(strasse);spaltenweise(telefon);slausgkopf(1) +:=zeile;spaltenweise(nrrufname);spaltenweise(ort);spaltenweise(blank); +slausgkopf(2):=zeile;slausgkopf(3):=druckstrich.hilfsfeldervorbelegen: +setzespaltenbreite(slspalte1breite);setzespaltenbreite(slspalte2breite); +setzespaltenbreite(slspalte3breite).END PROC ausgabekoepfevorbereiten;PROC +ausgabekopfsrvorbelegen:LET srkopft1=" Geburts- J/M ",srkopft2= +"Nr. datum ",srkopf1t1="Unterr. Sprachen musisches Wahlpflicht-" +,srkopf1t2="Religion Fach fächer",srkopf2t1="Fächer", +srkopf2t2="Kurskennungen";IF elementsek1THEN srausgkopf(1):=srkopft1+ +srkopf1t1;srausgkopf(2):=srkopft2+srkopf1t2ELSE srausgkopf(1):=srkopft1+ +srkopf2t1;srausgkopf(2):=srkopft2+srkopf2t2FI ;srausgkopf(3):=druckstrich. +END PROC ausgabekopfsrvorbelegen;PROC klabuliseitedrucken: +speicherrechteseiteloeschen;klabulislueberschriftdrucken;anzzaehler:=null; +seitedrucken(PROC (INT VAR )schuelerdatendrucken,druckzeilenzahl, +ausgfeldlaenge,PROC bestandendesimulierenbeiklassenwechsel,BOOL PROC +multistopsim);IF neueklasseTHEN simuliertesendezuruecknehmen; +neuelistevorbereitenELSE IF NOT bestandendeTHEN rechteseitedrucken; +seitenwechselFI FI .speicherrechteseiteloeschen:FOR indexspeicherFROM 1UPTO +maxanzproseiteREP speicher(indexspeicher):=niltextPER ;indexspeicher:=null. +simuliertesendezuruecknehmen:setzebestandende(FALSE ).neuelistevorbereiten: +leereschuelereintragen;rechteseitedrucken;meldelistewirdgedruckt; +drucknachbereiten;druckvorbereiten;zaehler:=null;ueberschriftenvorbereiten. +meldelistewirdgedruckt:meldungstext(mnrlistewirdgedruckt,listewirdgedruckt); +standardmeldung(listewirdgedruckt,niltext).END PROC klabuliseitedrucken;PROC +klabulislueberschriftdrucken:INT VAR i;input(f);WHILE NOT eof(f)REP getline(f +,ausgfeld(1));druckzeileschreiben(ausgfeld(1));PER ;druckzeileschreiben( +druckstrich);FOR iFROM 1UPTO ausgkopflaengeREPEAT druckzeileschreiben( +slausgkopf(i))END REPEAT ;druckzeilenzahlrest:=druckzeilenzahl.END PROC +klabulislueberschriftdrucken;PROC bestandendesimulierenbeiklassenwechsel:IF +bestandendeTHEN leereschuelereintragen;rechteseitedrucken;neueklasse:=FALSE +ELSE nochklassezubearbeiten;IF neueklasseTHEN setzebestandende(TRUE )FI ;FI . +nochklassezubearbeiten:IF alleTHEN neueklasse:=int(jahrgang)<>int(wert( +fnrsusgrpjgst));IF neueklasseTHEN ausgabekopfsrvorbelegenFI ;neueklasse:= +neueklasseOR (zug<>wert(fnrsusgrpzugtut));ELSE neueklasse:=zug<>wert( +fnrsusgrpzugtut)FI .END PROC bestandendesimulierenbeiklassenwechsel;PROC +schuelerdatendrucken(INT VAR zeilenzaehler):LET markiert="#"; +schuelerdatenholen;ggflmeldungklasse;zaehlerINCR 1;anzzaehlerINCR 1; +schuelerdatenaufbereiten;zeilenzaehlerINCR ausgfeldlaenge; +schuelerdatenindruckdatei.ggflmeldungklasse:IF zaehler=nullTHEN +standardmeldung(bearbeitetwird,jahrgang+blank+zug+markiert)FI .END PROC +schuelerdatendrucken;PROC schuelerdatenholen:LET weiblich="w",maennlich="m", +junge="J",maedchen="M",anzsprachen=4,prosprache=3;INT VAR i,j;schuelername:= +wert(fnrsufamnames);schuelerrufname:=2*blank+wert(fnrsurufnames); +schuelernamenszus:=wert(fnrsunamenszusatzs);jahrgang:=wert(fnrsusgrpjgst);zug +:=wert(fnrsusgrpzugtut);schuelerstrasse:=wert(fnrsustrnrs);schuelerort:=wert( +fnrsuplzorts);schuelertelefon:=wert(fnrsutelnrs);schuelergebdat:=wert( +fnrsugebdatums);IF wert(fnrsugeschlechts)=weiblichTHEN schuelergeschlecht:= +maedchenELIF wert(fnrsugeschlechts)=maennlichTHEN schuelergeschlecht:=junge +ELSE schuelergeschlecht:=blankFI ;IF elementsek1THEN +diffdatenholenundaufbereitenELSE schuelerkursfachbez:=niltext; +schuelerkursartbez:=niltext;kursdatenholenundaufbereitenFI . +diffdatenholenundaufbereiten:INT VAR difstatus:=0;inittupel(dnrdiffdaten);IF +wert(fnrsutiddiffdaten)<>""THEN disablestop;readtid(dnrdiffdaten,wert( +fnrsutiddiffdaten));IF iserrorTHEN clearerror;difstatus:=1FI ;enablestopFI ; +IF difstatus=0THEN schuelersprachen:=niltext;sprachenaufbereiten; +schuelerreliunt:=wert(fnrddreliunter);schuelermusfach:=wert(fnrddkunstmusik); +schuelerwpffach:=niltext;IF jahrgang="09"THEN wpf9aufbereitenELIF jahrgang= +"10"THEN wpf10aufbereitenFI FI .sprachenaufbereiten:FOR iFROM 0UPTO +anzsprachen-1REP j:=(3*i)+55;puffer1:=wert(j);schuelersprachen:= +schuelersprachen+puffer1+(prosprache-length(puffer1))*blankPER . +wpf9aufbereiten:puffer1:=wert(fnrddfach091a);schuelerwpffach:=puffer1+(5- +length(puffer1))*blank;puffer1:=wert(fnrddfach091b);schuelerwpffach:= +schuelerwpffach+puffer1+(5-length(puffer1))*blank;puffer1:=wert(fnrddfach092a +);schuelerwpffach:=schuelerwpffach+puffer1+(5-length(puffer1))*blank;puffer1 +:=wert(fnrddfach092b);schuelerwpffach:=schuelerwpffach+puffer1+(5-length( +puffer1))*blank.wpf10aufbereiten:puffer1:=wert(fnrddfach101a);schuelerwpffach +:=puffer1+(5-length(puffer1))*blank;puffer1:=wert(fnrddfach101b); +schuelerwpffach:=schuelerwpffach+puffer1+(5-length(puffer1))*blank;puffer1:= +wert(fnrddfach102a);schuelerwpffach:=schuelerwpffach+puffer1+(5-length( +puffer1))*blank;puffer1:=wert(fnrddfach102b);schuelerwpffach:=schuelerwpffach ++puffer1+(5-length(puffer1))*blank.kursdatenholenundaufbereiten:putwert( +fnrhjdfamnames,schuelername);putwert(fnrhjdrufnames,compress(schuelerrufname) +);putwert(fnrhjdgebdats,schuelergebdat);putwert(fnrhjdjgst,jahrgang);putwert( +fnrhjdhj,schulkenndatum("Schulhalbjahr"));search(ixhjdfamrufgebjgsthj,TRUE ); +pause(5);IF dbstatus=okTHEN kursartzuweisenFI .#dr31.03.88kursartzuweisen: +TEXT VAR suchbegriff:="";FOR iFROM 1UPTO (length(wert(fnrhjdfach))DIV 2)REP +puffer1:=wert(fnrhjdkursart)SUB i;schuelerkursartbez:=schuelerkursartbez+ +puffer1+(2-length(puffer1))*blank;suchbegriff:=subtext(wert(fnrhjdfach),(2*i) +-1,2*i);suchbegriff:=compress(suchbegriff);putwert(fnrffach,suchbegriff); +search(dnrfaecher,TRUE );IF dbstatus=okTHEN puffer1:=wert(fnrffachbez); +schuelerkursfachbez:=schuelerkursfachbez+puffer1+(3-length(puffer1))*blank; +FI ;PER .#kursartzuweisen:TEXT VAR suchbegriff:="";FOR iFROM 1UPTO (length( +wert(fnrhjdfach))DIV 2)REP suchbegriff:=subtext(wert(fnrhjdfach),(2*i)-1,2*i) +;suchbegriff:=compress(suchbegriff);putwert(fnrffach,suchbegriff);search( +dnrfaecher,TRUE );IF dbstatus=okTHEN puffer1:=wert(fnrffach); +schuelerkursfachbez:=schuelerkursfachbez+text(puffer1,3);puffer1:=wert( +fnrhjdkursart)SUB i;schuelerkursartbez:=schuelerkursartbez+text(puffer1,3); +ELSE schuelerkursfachbez:=schuelerkursfachbez+(3*blank);schuelerkursartbez:= +schuelerkursartbez+(3*blank);FI ;PER .END PROC schuelerdatenholen;PROC +schuelerdatenaufbereiten:zaehleraufbereiten;schreibenrnamestrassetelnr; +schreiberufnameort;datenfuerrechteseitespeichern.schreibenrnamestrassetelnr: +spaltenweise(zaehleraufber+2*blank+schuelername);spaltenweise(schuelerstrasse +);spaltenweise(schuelertelefon);ausgfeld(1):=zeile.schreiberufnameort: +spaltenweise(4*blank+schuelerrufname+blank+schuelernamenszus);spaltenweise( +schuelerort);spaltenweise(blank);ausgfeld(2):=zeile. +datenfuerrechteseitespeichern:indexspeicherINCR 1;speicher(indexspeicher):= +zaehleraufber+2*blank+aufbgebdat+3*blank+schuelergeschlecht;IF elementsek1 +THEN speicher(indexspeicher):=speicher(indexspeicher)+6*blank+aufbreliunt+5* +blank+schuelersprachen+4*blank+aufbmusfach+6*blank+schuelerwpffach; +indexspeicherINCR 1ELSE speicher(indexspeicher):=speicher(indexspeicher)+3* +blank+schuelerkursfachbez;indexspeicherINCR 1;speicher(indexspeicher):=19* +blank+schuelerkursartbezFI .aufbgebdat:IF schuelergebdat=niltextTHEN 8*blank +ELSE schuelergebdatFI .aufbreliunt:IF schuelerreliunt=niltextOR (reliabmeld +AND NOT relianmeld)THEN 2*blankELSE schuelerreliuntFI .reliabmeld:wert( +fnrddabmeldedatreli)<>nildatumdb.relianmeld:wert(fnrddanmeldedatreli)<> +nildatumdb.aufbmusfach:IF schuelermusfach=niltextTHEN 2*blankELSE +schuelermusfachFI .END PROC schuelerdatenaufbereiten;PROC +schuelerdatenindruckdatei:INT VAR i;FOR iFROM 1UPTO ausgfeldlaengeREP +druckzeileschreiben(ausgfeld(i))PER ;druckzeilenzahlrestDECR ausgfeldlaenge. +END PROC schuelerdatenindruckdatei;PROC leereschuelereintragen:INT VAR +leereschuelermoeglich,i;indexspeicherINCR 1;moeglicheschuelereintragen. +moeglicheschuelereintragen:leereschuelermoeglich:=druckzeilenzahlrestDIV +ausgfeldlaenge;FOR iFROM 1UPTO leereschuelermoeglichREP zaehlerINCR 1; +zaehleraufbereiten;ausgfeld(1):=text(zaehleraufber,druckbreite);ausgfeld(2):= +text(blank,druckbreite);schuelerdatenindruckdatei; +leerenschuelerfuerrechteseitespeichernPER . +leerenschuelerfuerrechteseitespeichern:anzzaehlerINCR 1;speicher( +indexspeicher):=text(zaehleraufber,druckbreite);indexspeicherINCR 2.END PROC +leereschuelereintragen;PROC rechteseitedrucken:INT VAR i,j;seitenwechsel; +klabulisrueberschriftdrucken;FOR iFROM 1UPTO anzzaehlerREP j:=2*i;ausgfeld(1) +:=speicher(j-1);ausgfeld(2):=speicher(j);schuelerdatenindruckdateiPER .END +PROC rechteseitedrucken;PROC klabulisrueberschriftdrucken:INT VAR i;input(g); +WHILE NOT eof(g)REP getline(g,ausgfeld(1));druckzeileschreiben(ausgfeld(1)); +PER ;druckzeileschreiben(druckstrich);FOR iFROM 1UPTO ausgkopflaengeREPEAT +druckzeileschreiben(srausgkopf(i))END REPEAT .END PROC +klabulisrueberschriftdrucken;PROC zaehleraufbereiten:LET zaehlerzweistellig= +10;IF zaehler<zaehlerzweistelligTHEN zaehleraufber:=blankELSE zaehleraufber:= +niltextFI ;zaehleraufber:=zaehleraufber+text(zaehler).END PROC +zaehleraufbereiten;END PACKET klassenbuchlisten; + |