summaryrefslogtreecommitdiff
path: root/app/schulis/2.2.1/src/1.listen.neuan
diff options
context:
space:
mode:
Diffstat (limited to 'app/schulis/2.2.1/src/1.listen.neuan')
-rw-r--r--app/schulis/2.2.1/src/1.listen.neuan121
1 files changed, 121 insertions, 0 deletions
diff --git a/app/schulis/2.2.1/src/1.listen.neuan b/app/schulis/2.2.1/src/1.listen.neuan
new file mode 100644
index 0000000..6fd7fc5
--- /dev/null
+++ b/app/schulis/2.2.1/src/1.listen.neuan
@@ -0,0 +1,121 @@
+PACKET neuanlistenDEFINES neuanlispezielleteile:LET niltext="",blank=" ",
+mittestrich="-",null=0,komma=",",ueberschriftenzeilen=2,nname="Name",schule=
+"Schule",klasse="Klasse",spalte3breite=6,anzspaltentrenner=2,ausgkopflaenge=2
+,ausgfeldlaenge=2,AUSGFELD =ROW ausgfeldlaengeTEXT ,AUSGKOPF =ROW
+ausgkopflaengeTEXT ,neuanlieingangsmaske="ms liste neuanmeld eingang",
+neuanlianfpos=2,#fnrsustatuss=6,fnrsunamenszusatzs=21,fnrsuskennlschule=14,
+fnrsuklasselschule=15,ixsustatschulkenn=253,ixsustatfamrufgeb=254dnrschueler=
+2,dnrschulen=120,fnrschkennung=121,fnrschname=122,#mnrbearbeitetwerdenschulen
+=101,mnrbearbeitetwerdenschueler=102;INT CONST spalte1bildbreite:=(bildbreite
+-anzspaltentrenner-spalte3breite)DIV 2,spalte2bildbreite:=spalte1bildbreite;#
+bildsatzzahl:=(bildlaenge-ausgkopflaenge)DIV ausgfeldlaenge,bildblocklaenge:=
+(bildsatzzahl+1)DIV 2;#INT VAR spalte1druckbreite,spalte2druckbreite,
+druckzeilenzahl,bildanf,eingabestatus,aktuelleindexnr;TEXT VAR schuljahr,
+schuelername,schuelerrufname,schuelernamenszus,schuelerherkschule,
+schuelerherkklasse,schuelernameaufber,jahrgang,#sortbest,#anfbuchstabe,
+neueranfbuchstabe,startwert,bearbeitetwerdenschulen,bearbeitetwerdenschueler;
+TEXT VAR druckstrich;TEXT CONST bildstrich:=bildbreite*mittestrich;AUSGFELD
+VAR ausgfeld;AUSGKOPF VAR ausgkopf;BOOL VAR sortalpha,jgst5,jgst11;BOOL PROC
+multistop:BOOL VAR b;IF jgst5THEN b:=wert(fnrsustatuss)="n05"ELIF jgst11THEN
+b:=wert(fnrsustatuss)="n11"ELSE b:=wert(fnrsustatuss)="nso"FI ;bENDPROC
+multistop;BOOL PROC multistopsim:BOOL VAR b:=multistop;setzebestandende(NOT b
+);bENDPROC multistopsim;PROC neuanlispezielleteile(INT CONST nr):SELECT nrOF
+CASE 1:neuanlidialogvorbereitenCASE 2:neuanlieingabenrichtigCASE 3:
+neuanlilistenvorbereitenCASE 4:neuanlidruckvorbereitenCASE 5:
+neuanliseitedruckenCASE 6:neuanlibildschirmvorbereitenCASE 7:
+neuanliseitezeigenENDSELECT .END PROC neuanlispezielleteile;PROC
+neuanlidialogvorbereiten:setzeanfangswerte(neuanlieingangsmaske,neuanlianfpos
+)END PROC neuanlidialogvorbereiten;PROC neuanlieingabenrichtig:LET fnrjgst5=2
+,fnrjgst11=3,fnrjgstsonst=4,fnrsortalpha=5,fnrsortschule=6,fnrausgdrucker=7,
+fnrausgbild=8;standardpruefe(5,fnrjgst5,fnrjgstsonst,null,niltext,
+eingabestatus);IF eingabestatus<>0THEN infeld(eingabestatus);setzeeingabetest
+(FALSE )ELSE standardpruefe(5,fnrsortalpha,fnrsortschule,null,niltext,
+eingabestatus);IF eingabestatus<>0THEN infeld(eingabestatus);setzeeingabetest
+(FALSE )ELSE standardpruefe(5,fnrausgdrucker,fnrausgbild,null,niltext,
+eingabestatus);IF eingabestatus<>0THEN infeld(eingabestatus);setzeeingabetest
+(FALSE )ELSE jgst5:=standardmaskenfeld(fnrjgst5)<>niltext;jgst11:=
+standardmaskenfeld(fnrjgst11)<>niltext;sortalpha:=standardmaskenfeld(
+fnrsortschule)=niltext;#note("-->"+standardmaskenfeld(fnrsortschule)+"<--");
+noteline;#setzeausgabedrucker(standardmaskenfeld(fnrausgbild)=niltext);
+setzeeingabetest(TRUE )FI FI FI .END PROC neuanlieingabenrichtig;PROC
+neuanlilistenvorbereiten:LET fuenf="05",elf="11",sonst="sonst";BOOL VAR b:=
+FALSE ;IF jgst5THEN jahrgang:=fuenf;startwert:="n05"ELSE IF jgst11THEN
+jahrgang:=elf;startwert:="n11"ELSE jahrgang:=sonst;startwert:="nso"FI ;FI ;
+IF sortalphaTHEN aktuelleindexnr:=ixsustatfamrufgebELSE aktuelleindexnr:=
+ixsustatschulkennFI ;#note("Nr,: "+text(aktuelleindexnr));noteline;#inittupel
+(dnrschueler);initobli(8);parsenooffields(21);setzeidentiwert("");putwert(
+fnrsustatuss,startwert);#objektlistestarten(aktuelleindexnr,"",fnrsustatuss,
+TRUE ,b);#objektlistestarten(aktuelleindexnr,"",staticfield,TRUE ,b);
+setzebestandende(b).staticfield:IF sortalphaTHEN dnrschueler+1ELSE
+fnrsuskennlschuleFI .END PROC neuanlilistenvorbereiten;PROC
+neuanlibildschirmvorbereiten:LET fnrausganf=2,aufein="",aufaus=" ",
+neuanliueberschriftneu1="Liste der Neuanmeldungen zur Jgst. ",
+neuanliueberschriftneu2="Liste der sonstigen Neuanmeldungen";
+standardkopfmaskeaktualisieren(neueueberschrift);initspalten;
+setzespaltenbreite(spalte1bildbreite);setzespaltenbreite(spalte2bildbreite);
+setzespaltenbreite(spalte3breite);initausgabekopf(bildstrich);bildanf:=
+fnrausganf;INT VAR i;FOR iFROM 1UPTO ausgkopflaengeREPEAT ausgkopf(i)IN
+bildanf;bildanfINCR 1END REPEAT ;setzebildanfangsposition(bildanf).
+neueueberschrift:IF (jgst5OR jgst11)THEN neuanliueberschriftneu1+aufein+
+jahrgang+aufausELSE neuanliueberschriftneu2FI .END PROC
+neuanlibildschirmvorbereiten;PROC neuanliseitezeigen:blaettern(PROC (INT
+CONST )schuelerzeigen,aktion,TRUE ,TRUE ,BOOL PROC multistop)END PROC
+neuanliseitezeigen;PROC schuelerzeigen(INT CONST x):schuelerholen;
+schueleraufbereiten;schueleraufbildschirmEND PROC schuelerzeigen;PROC
+schueleraufbildschirm:INT VAR i;FOR iFROM 1UPTO ausgfeldlaengeREPEAT ausgfeld
+(i)IN ausgabepos;erhoeheausgabeposumeinsEND REPEAT .END PROC
+schueleraufbildschirm;PROC neuanlidruckvorbereiten:LET schluessel="Schuljahr"
+,uebteil1="Folgende Schüler wurden zum Schuljahr ",uebteil2=" für die",
+uebteil31="Jahrgangsstufe ",uebteil32="sonstigen Jahrgangsstufen ",uebteil4=
+" angemeldet:";TEXT VAR ueberschrift1,ueberschrift2;anfbuchstabe:=blank;
+druckvorbereiten;variablenfuerdrucksetzen;ueberschriftvorbereitendruck;
+initdruckkopf(ueberschrift1,ueberschrift2);initspalten;setzespaltenbreite(
+spalte1druckbreite);setzespaltenbreite(spalte2druckbreite);setzespaltenbreite
+(spalte3breite);initausgabekopf(druckstrich);holemeldungen;inittupel(
+dnrschueler);putwert(fnrsustatuss,startwert);lesenvorbereitendruck(PROC (INT
+CONST ,BOOL PROC ,INT VAR )scanforward,BOOL PROC multistopsim).
+variablenfuerdrucksetzen:druckstrich:=druckbreite*mittestrich;
+spalte1druckbreite:=(druckbreite-anzspaltentrenner-spalte3breite)DIV 2;
+spalte2druckbreite:=spalte1druckbreite;druckzeilenzahl:=drucklaenge(
+ueberschriftenzeilen)-ausgkopflaenge.ueberschriftvorbereitendruck:schuljahr:=
+schulkenndatum(schluessel);schuljahraufbereiten;ueberschrift1:=uebteil1+
+schuljahr+uebteil2;IF (jgst5OR jgst11)THEN ueberschrift2:=uebteil31+jahrgang+
+uebteil4ELSE ueberschrift2:=uebteil32+uebteil4FI .schuljahraufbereiten:
+schuljahr:="19"+subtext(schuljahr,1,2)+"/"+subtext(schuljahr,3,4).
+holemeldungen:meldungstext(mnrbearbeitetwerdenschulen,bearbeitetwerdenschulen
+);meldungstext(mnrbearbeitetwerdenschueler,bearbeitetwerdenschueler).END
+PROC neuanlidruckvorbereiten;PROC neuanliseitedrucken:
+neuanliueberschriftdrucken;seitedrucken(PROC (INT VAR )schuelerdrucken,
+druckzeilenzahl,ausgfeldlaenge,BOOL PROC multistopsim);seitenwechsel.END
+PROC neuanliseitedrucken;PROC neuanliueberschriftdrucken:druckkopfschreiben;
+INT VAR i;FOR iFROM 1UPTO ausgkopflaengeREPEAT druckzeileschreiben(ausgkopf(i
+))END REPEAT .END PROC neuanliueberschriftdrucken;PROC schuelerdrucken(INT
+VAR zeilenzaehler):LET markiert="#";schuelerholen;ggflmeldunganfbuchstabe;
+schueleraufbereiten;zeilenzaehlerINCR ausgfeldlaenge;schuelerindruckdatei.
+ggflmeldunganfbuchstabe:IF anfbuchstabegeaendertTHEN zwischenmeldungFI .
+anfbuchstabegeaendert:IF sortalphaTHEN neueranfbuchstabe:=schuelernameSUB 1
+ELSE neueranfbuchstabe:=schuelerherkschuleSUB 1FI ;anfbuchstabe<>
+neueranfbuchstabe.zwischenmeldung:IF sortalphaTHEN standardmeldung(
+bearbeitetwerdenschueler,neueranfbuchstabe+markiert)ELSE standardmeldung(
+bearbeitetwerdenschulen,neueranfbuchstabe+markiert)FI ;anfbuchstabe:=
+neueranfbuchstabe;END PROC schuelerdrucken;PROC schuelerindruckdatei:INT VAR
+i;FOR iFROM 1UPTO ausgfeldlaengeREPEAT druckzeileschreiben(ausgfeld(i))END
+REPEAT .END PROC schuelerindruckdatei;PROC initausgabekopf(TEXT CONST strich)
+:spaltenweise(nname);spaltenweise(schule);spaltenweise(klasse);ausgkopf(1):=
+zeile;ausgkopf(2):=strich;END PROC initausgabekopf;PROC schuelerholen:
+schuelername:=wert(3);schuelerrufname:=2*blank+wert(4);schuelernamenszus:=
+wert(fnrsunamenszusatzs);sucheschule;schuelerherkklasse:=wert(
+fnrsuklasselschule).sucheschule:putwert(fnrschkennung,wert(fnrsuskennlschule)
+);search(dnrschulen,TRUE );IF dbstatus=okTHEN schuelerherkschule:=wert(
+fnrschname)ELSE schuelerherkschule:=wert(fnrsuskennlschule)FI .END PROC
+schuelerholen;PROC schueleraufbereiten:schuelernameaufbereiten;
+schreibenameschuleklasse;schreiberufname.schreibenameschuleklasse:
+spaltenweise(schuelernameaufber);spaltenweise(schuelerherkschule);
+spaltenweise(schuelerherkklasse);ausgfeld(1):=zeile.schreiberufname:
+spaltenweise(schuelerrufname);spaltenweise(blank);spaltenweise(blank);
+ausgfeld(2):=zeile.END PROC schueleraufbereiten;PROC schuelernameaufbereiten:
+schuelernameaufber:=niltext;IF schuelernamenszus<>niltextTHEN
+schuelernameaufber:=schuelernamenszus+blankFI ;schuelernameaufber:=
+schuelernameaufber+schuelername+komma;END PROC schuelernameaufbereiten;END
+PACKET neuanlisten;
+