From 04e68443040c7abad84d66477e98f93bed701760 Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Mon, 4 Feb 2019 13:09:03 +0100 Subject: Initial import --- app/schulis/2.2.1/src/0.listen.klassengruppen | 104 ++++++++++++++++++++++++++ 1 file changed, 104 insertions(+) create mode 100644 app/schulis/2.2.1/src/0.listen.klassengruppen (limited to 'app/schulis/2.2.1/src/0.listen.klassengruppen') diff --git a/app/schulis/2.2.1/src/0.listen.klassengruppen b/app/schulis/2.2.1/src/0.listen.klassengruppen new file mode 100644 index 0000000..7543dad --- /dev/null +++ b/app/schulis/2.2.1/src/0.listen.klassengruppen @@ -0,0 +1,104 @@ +PACKET klassengruppenlistenDEFINES klassengruppenspezielleteile:LET +klassengruppeneingangsmaske="mu liste einfach eingang",spaltentrenner=" ", +klassengruppenanfpos=2,spaltenbreite1=12,spaltenbreite2=7,niltext="",blank= +" ",strich="-",null=0,ueberschriftenzeilen=2,ausgkopflaenge=2,ausgfeldlaenge= +1,anzahlderobjekteprobildschirm=5,mnrauswahlnichtsinnvoll=56, +mnrbearbeitetwerden=352;TEXT CONST spaltentext1:="Klassengruppe",spaltentext2 +:="Bezeichnung Zusammensetzung";TEXT VAR klassengrueberschrift:= +"Liste der Raumgruppen",schuelergrfuerzeile1,schuelergrfuerzeile2, +schuelergrfuerzeile3,klassengruppe,alteklassengruppe:="",anfbuchstabe, +neueranfbuchstabe:="",teiltextmeldung:= +"die Klassengruppe dem Anfangsbuchstaben:";INT VAR eingabestatus,bildanfang, +druckzeilenzahl;LET AUSGFELD =ROW ausgfeldlaengeTEXT ,AUSGKOPF =ROW +ausgkopflaengeTEXT ,AUSGKOPFDRUCK =ROW ausgkopflaengeTEXT ;AUSGFELD VAR +ausgfeld;AUSGKOPF VAR ausgkopf;AUSGKOPFDRUCK VAR ausgkopfdruck;BOOL PROC +multistop:TRUE END PROC multistop;PROC klassengruppenspezielleteile(INT +CONST nr):SELECT nrOF CASE 1:klassengrdialogvorbereitenCASE 2: +klassengreingabenrichtigCASE 3:klassengrlistenvorbereitenCASE 4: +klassengrdruckvorbereitenCASE 5:klassengrseitedruckenCASE 6: +klassengrbildschirmvorbereitenCASE 7:klassengrseitezeigenENDSELECT .END PROC +klassengruppenspezielleteile;PROC klassengrdialogvorbereiten: +klassengrueberschrift:=text(vergleichsknoten);setzeanfangswerte( +klassengruppeneingangsmaske,klassengruppenanfpos)END PROC +klassengrdialogvorbereiten;PROC klassengreingabenrichtig:LET fnrausgdrucker=2 +,fnrausgbild=3;standardpruefe(5,fnrausgdrucker,fnrausgbild,null,niltext, +eingabestatus);IF eingabestatus=0THEN setzeeingabetest(TRUE ); +setzeausgabedrucker(standardmaskenfeld(fnrausgbild)=niltext);ELSE meldefehler +;setzeeingabetest(FALSE )FI ;.meldefehler:standardmeldung( +mnrauswahlnichtsinnvoll,niltext).END PROC klassengreingabenrichtig;PROC +klassengrlistenvorbereiten:BOOL VAR b;initspalten;setzespaltentrenner( +spaltentrenner);inittupel(dnrklassengruppen);setzeidentiwert("");initobli( +anzahlderobjekteprobildschirm);objektlistestarten(dnrklassengruppen,"", +fnrkgklassengrp,TRUE ,b);setzebestandende(NOT multistopCOR b);END PROC +klassengrlistenvorbereiten;PROC klassengrbildschirmvorbereiten:LET fnrausganf +=2;standardkopfmaskeaktualisieren(klassengrueberschrift);bildanfang:= +fnrausganf;setzebildanfangsposition(bildanfang);initspalten; +setzespaltenbreite(bildbreite);spaltenweise(spaltentext1);ausgfeld(1):=zeile; +ausgfeld(1)IN ausgabepos;erhoeheausgabeposumeins;spaltenweise(spaltentext2); +ausgfeld(1):=zeile;ausgfeld(1)IN ausgabepos;erhoeheausgabeposumeins; +spaltenweise(blank);ausgfeld(1):=zeile;ausgfeld(1)IN ausgabepos; +erhoeheausgabeposumeins;setzebildanfangsposition(5);spaltenbreitensetzenEND +PROC klassengrbildschirmvorbereiten;PROC klassengrseitezeigen:blaettern(PROC +(INT CONST )klassengrdatenzeigen,aktion,TRUE ,FALSE ,BOOL PROC multistop)END +PROC klassengrseitezeigen;PROC klassengrdatenzeigen(INT CONST x): +klassengrdatenholen;klassengrdatenaufbereitenbild1; +klassengrdatenaufbildschirm;klassengrdatenaufbereitenbild2; +klassengrdatenaufbildschirm;klassengrdatenaufbereitenbild3; +klassengrdatenaufbildschirmEND PROC klassengrdatenzeigen;PROC +klassengrdatenaufbereitenbild1:INT VAR y:=1;spaltenweise(klassengruppe); +spaltenweise(subtext(schuelergrfuerzeile1,y,y+5));yINCR 6;spaltenweise( +subtext(schuelergrfuerzeile1,y,y+5));yINCR 6;spaltenweise(subtext( +schuelergrfuerzeile1,y,y+5));yINCR 6;spaltenweise(subtext( +schuelergrfuerzeile1,y,y+5));yINCR 6;spaltenweise(subtext( +schuelergrfuerzeile1,y,y+5));yINCR 6;END PROC klassengrdatenaufbereitenbild1; +PROC klassengrdatenaufbereitenbild2:INT VAR y:=1;spaltenweise(blank); +spaltenweise(subtext(schuelergrfuerzeile2,y,y+5));yINCR 6;spaltenweise( +subtext(schuelergrfuerzeile2,y,y+5));yINCR 6;spaltenweise(subtext( +schuelergrfuerzeile2,y,y+5));yINCR 6;spaltenweise(subtext( +schuelergrfuerzeile2,y,y+5));yINCR 6;spaltenweise(subtext( +schuelergrfuerzeile2,y,y+5));yINCR 6;END PROC klassengrdatenaufbereitenbild2; +PROC klassengrdatenaufbereitenbild3:INT VAR y:=1;spaltenweise(blank); +spaltenweise(subtext(schuelergrfuerzeile3,y,y+5));yINCR 6;spaltenweise( +subtext(schuelergrfuerzeile3,y,y+5));yINCR 6;spaltenweise(subtext( +schuelergrfuerzeile3,y,y+5));yINCR 6;spaltenweise(subtext( +schuelergrfuerzeile3,y,y+5));yINCR 6;spaltenweise(subtext( +schuelergrfuerzeile3,y,y+5));yINCR 6;END PROC klassengrdatenaufbereitenbild3; +PROC klassengrdatenaufbildschirm:INT VAR i;FOR iFROM 1UPTO ausgfeldlaengeREP +ausgfeld(i):=zeile;ausgfeld(i)IN ausgabepos;erhoeheausgabeposumeins;PER ;END +PROC klassengrdatenaufbildschirm;PROC klassengrdruckvorbereiten: +setzebestandende(FALSE );anfbuchstabe:=" ";druckvorbereiten; +variablenfuerdrucksetzen;initdruckkopf(zentriert(klassengrueberschrift, +druckbreite),zentriert(length(klassengrueberschrift)*strich,druckbreite)); +initausgabekopfdruck;inittupel(dnrklassengruppen);spaltenbreitensetzen; +lesenvorbereitendruck(PROC (INT CONST ,BOOL PROC ,INT VAR )scanforward,BOOL +PROC multistop);.variablenfuerdrucksetzen:druckzeilenzahl:=drucklaenge( +ueberschriftenzeilen)-ausgkopflaenge.END PROC klassengrdruckvorbereiten;PROC +klassengrseitedrucken:klassengrueberschriftdrucken;seitedrucken(PROC (INT +VAR )klassengrdatendrucken,druckzeilenzahl,ausgfeldlaenge,BOOL PROC multistop +);seitenwechsel.END PROC klassengrseitedrucken;PROC +klassengrueberschriftdrucken:INT VAR i;druckkopfschreiben;FOR iFROM 1UPTO +ausgkopflaengeREP druckzeileschreiben(ausgkopfdruck(i))PER ;ausgfeld(1):= +zeile;druckzeileschreiben(ausgfeld(1))END PROC klassengrueberschriftdrucken; +PROC klassengrdatendrucken(INT VAR zeilenzaehler):LET markiert="#"; +klassengrdatenholen;ggflmeldunganfbuchstabe;klassengrdatenaufbereitenbild1; +zeilenzaehlerINCR ausgfeldlaenge;klassengrindruckdatei;IF +schuelergrfuerzeile2<>niltextTHEN klassengrdatenaufbereitenbild2; +zeilenzaehlerINCR ausgfeldlaenge;klassengrindruckdatei;IF +schuelergrfuerzeile3<>niltextTHEN klassengrdatenaufbereitenbild3; +zeilenzaehlerINCR ausgfeldlaenge;klassengrindruckdatei;FI FI ;. +ggflmeldunganfbuchstabe:IF anfbuchstabegeaendertTHEN meldunganfbuchstabeFI . +anfbuchstabegeaendert:neueranfbuchstabe:=klassengruppeSUB 1;anfbuchstabe<> +neueranfbuchstabe.meldunganfbuchstabe:standardmeldung(mnrbearbeitetwerden, +teiltextmeldung+neueranfbuchstabe+markiert);anfbuchstabe:=neueranfbuchstabe. +END PROC klassengrdatendrucken;PROC initausgabekopfdruck:ausgkopfdruck(1):= +spaltentext1;ausgkopfdruck(2):=spaltentext2;END PROC initausgabekopfdruck; +PROC klassengrindruckdatei:ausgfeld(1):=zeile;INT VAR i;FOR iFROM 1UPTO +ausgfeldlaengeREP druckzeileschreiben(ausgfeld(1))PER END PROC +klassengrindruckdatei;PROC spaltenbreitensetzen:INT VAR z;initspalten; +setzespaltenbreite(spaltenbreite1);FOR zFROM 1UPTO 5REP setzespaltenbreite( +spaltenbreite2);PER END PROC spaltenbreitensetzen;PROC klassengrdatenholen: +klassengruppe:=wert(fnrkgklassengrp);schuelergrfuerzeile1:=subtext(wert( +fnrkgschuelergrp),1,30);schuelergrfuerzeile2:=subtext(wert(fnrkgschuelergrp), +31,60);schuelergrfuerzeile3:=subtext(wert(fnrkgschuelergrp),61,90);END PROC +klassengrdatenholen;END PACKET klassengruppenlisten; + -- cgit v1.2.3