summaryrefslogtreecommitdiff
path: root/app/schulis/2.2.1/src/0.listen.schuelergruppen
diff options
context:
space:
mode:
Diffstat (limited to 'app/schulis/2.2.1/src/0.listen.schuelergruppen')
-rw-r--r--app/schulis/2.2.1/src/0.listen.schuelergruppen109
1 files changed, 109 insertions, 0 deletions
diff --git a/app/schulis/2.2.1/src/0.listen.schuelergruppen b/app/schulis/2.2.1/src/0.listen.schuelergruppen
new file mode 100644
index 0000000..cbef1c3
--- /dev/null
+++ b/app/schulis/2.2.1/src/0.listen.schuelergruppen
@@ -0,0 +1,109 @@
+PACKET schuelergruppenlistenDEFINES schuelergruplispezielleteile:LET
+AUSGFELD =ROW ausgfeldlaengeTEXT ,AUSGKOPF =ROW ausgkopflaengeTEXT ,
+AUSGKOPFDRUCK =ROW ausgkopflaengeTEXT ;AUSGFELD VAR ausgfeld;AUSGKOPF VAR
+ausgkopf;AUSGKOPFDRUCK VAR ausgkopfdruck;LET schuelergruppeneingangsmaske=
+"ms liste schuelergruppen",ausgfeldlaenge=1,anzahlderobjekteprobildschirm=17,
+ueberschriftenzeilen=2,ausgkopflaenge=2,spaltentrenner=" ",
+schuelergruppenanfpos=2,jgstspalte1breite=14,zugspalte2breite=9,
+lehrerspalte3breite=15,stellvspalte4breite=15,strich="/",niltext="",blank=" "
+,null=0,mnrauswahlnichtsinnvoll=56;LET textsj="Schuljahr",texthj=
+"Schulhalbjahr";TEXT VAR schuelergruppenueberschrift:="",schuljahr,halbjahr,
+jahrgangsstufe,altejahrgangsstufe:="",bearbeitungsschuljahr,
+bearbeitungshalbjahr,zugtutor,klassenlehrer,stellvertreter,
+auswahlnichtsinnvoll;TEXT CONST leerzeile:=bildbreite*blank,textueberschrift
+:=("Jahrgangsstufe"+blank+"Zug/Tutor"+blank+"Klassenleiter"+3*blank+
+"Stellvertreter");INT VAR eingabestatus,bildanfang,spalte2druckbreite,
+druckzeilenzahl;INT CONST aktuelleindexnr:=dnraktschuelergruppen;BOOL VAR
+aktuelleshjgewaehlt;BOOL PROC multistop:BOOL VAR b;IF dbstatus=okTHEN b:=(
+bearbeitungshalbjahr=wert(fnrsgrphj)AND bearbeitungsschuljahr=wert(fnrsgrpsj)
+)ELSE b:=FALSE FI ;bEND PROC multistop;BOOL PROC multistopsim:
+setzebestandende(FALSE );BOOL VAR b:=multistop;setzebestandende(NOT b);bEND
+PROC multistopsim;PROC schuelergruplispezielleteile(INT CONST nr):SELECT nr
+OF CASE 1:schuelergruppendialogvorbereitenCASE 2:
+schuelergruppeneingabenrichtigCASE 3:schuelergruppenlistenvorbereitenCASE 4:
+schuelergruppendruckvorbereitenCASE 5:schuelergruppenseitedruckenCASE 6:
+schuelergruppenbildschirmvorbereitenCASE 7:schuelergruppenseitezeigen
+ENDSELECT .END PROC schuelergruplispezielleteile;PROC
+schuelergruppendialogvorbereiten:schuelergruppenueberschrift:=text(
+vergleichsknoten);setzeanfangswerte(schuelergruppeneingangsmaske,
+schuelergruppenanfpos)END PROC schuelergruppendialogvorbereiten;PROC
+schuelergruppeneingabenrichtig:LET fnrausggeplanteshj=2,fnrausgaktuelleshj=3,
+fnrausgdrucker=4,fnrausgbild=5;standardpruefe(5,fnrausgdrucker,fnrausgbild,
+null,niltext,eingabestatus);IF eingabestatus=0THEN standardpruefe(5,
+fnrausggeplanteshj,fnrausgaktuelleshj,null,niltext,eingabestatus);IF
+eingabestatus=0THEN gewaehlteshalbjahrmerken;setzeeingabetest(TRUE );
+setzeausgabedrucker(standardmaskenfeld(fnrausgbild)=niltext)ELSE meldefehler;
+setzeeingabetest(FALSE )FI ;ELSE meldefehler;setzeeingabetest(FALSE )FI .
+meldefehler:meldungstext(mnrauswahlnichtsinnvoll,auswahlnichtsinnvoll);
+standardmeldung(auswahlnichtsinnvoll,niltext).gewaehlteshalbjahrmerken:
+aktuelleshjgewaehlt:=standardmaskenfeld(fnrausgaktuelleshj)<>niltext.END
+PROC schuelergruppeneingabenrichtig;PROC schuelergruppenlistenvorbereiten:
+BOOL VAR b;initspalten;setzespaltentrenner(spaltentrenner);
+bearbeitungsschuljahr:=schulkenndatum(textsj);bearbeitungshalbjahr:=
+schulkenndatum(texthj);IF NOT (aktuelleshjgewaehlt)THEN
+geplanteshjundsjberechnen(bearbeitungshalbjahr,bearbeitungsschuljahr)FI ;
+inittupel(dnraktschuelergruppen);setzeidentiwert("");initobli(
+anzahlderobjekteprobildschirm);parsenooffields(6);putwert(fnrsgrpsj,
+bearbeitungsschuljahr);putwert(fnrsgrphj,bearbeitungshalbjahr);
+setzescanendewert("255");objektlistestarten(aktuelleindexnr,
+bearbeitungsschuljahr,fnrsgrpjgst,TRUE ,b);setzebestandende(NOT multistopCOR
+b);END PROC schuelergruppenlistenvorbereiten;PROC
+schuelergruppenbildschirmvorbereiten:LET fnrausganf=2;
+standardkopfmaskeaktualisieren(schuelergruppenueberschrift);bildanfang:=
+fnrausganf;setzebildanfangsposition(bildanfang);INT VAR i;setzespaltenbreite(
+bildbreite);spaltenweise(textueberschrift);ausgfeld(1):=zeile;ausgfeld(1)IN
+ausgabepos;erhoeheausgabeposumeins;spaltenweise(leerzeile);ausgfeld(1):=zeile
+;ausgfeld(1)IN ausgabepos;erhoeheausgabeposumeins;setzebildanfangsposition(4)
+;initspalten;setzespaltentrenner(spaltentrenner);setzespaltenbreite(
+jgstspalte1breite);setzespaltenbreite(zugspalte2breite);setzespaltenbreite(
+lehrerspalte3breite);setzespaltenbreite(stellvspalte4breite);END PROC
+schuelergruppenbildschirmvorbereiten;PROC schuelergruppenseitezeigen:
+blaettern(PROC (INT CONST )schuelergruppendatenzeigen,aktion,TRUE ,TRUE ,
+BOOL PROC multistop)END PROC schuelergruppenseitezeigen;PROC
+schuelergruppendatenzeigen(INT CONST x):schuelergruppendatenholen;
+schuelergruppendatenaufbereitenbild;schuelergruppendatenaufbildschirm;END
+PROC schuelergruppendatenzeigen;PROC schuelergruppendatenholen:schuljahr:=
+wert(fnrsgrpsj);halbjahr:=wert(fnrsgrphj);jahrgangsstufe:=wert(fnrsgrpjgst);
+zugtutor:=wert(fnrsgrpkennung);klassenlehrer:=wert(fnrsgrplehrer);
+stellvertreter:=wert(fnrsgrpstellvlehrer);END PROC schuelergruppendatenholen;
+PROC schuelergruppendatenaufbereitenbild:IF length(jahrgangsstufe)=1THEN
+spaltenweise(13*blank+jahrgangsstufe);ELSE spaltenweise(12*blank+
+jahrgangsstufe);FI ;spaltenweise(zugtutor);spaltenweise(klassenlehrer);
+spaltenweise(stellvertreter);END PROC schuelergruppendatenaufbereitenbild;
+PROC schuelergruppendatenaufbildschirm:INT VAR i;FOR iFROM 1UPTO
+ausgfeldlaengeREP ausgfeld(i):=zeile;ausgfeld(i)IN ausgabepos;
+erhoeheausgabeposumeins;PER ;END PROC schuelergruppendatenaufbildschirm;PROC
+schuelergruppendruckvorbereiten:setzebestandende(FALSE );druckvorbereiten;
+variablenfuerdrucksetzen;TEXT VAR schjaufbereitet:=text(bearbeitungsschuljahr
+,2)+strich+text(bearbeitungsschuljahr,2,3),halbjaufbereitet:=
+bearbeitungshalbjahr+". Halbjahr";schuelergruppenueberschrift:=
+"Liste der Schülergruppen im Schuljahr "+schjaufbereitet+blank+
+halbjaufbereitet;initdruckkopf(zentriert(schuelergruppenueberschrift,
+druckbreite),zentriert(length(schuelergruppenueberschrift)*"-",druckbreite));
+initspalten;setzespaltenbreite(jgstspalte1breite);setzespaltenbreite(
+zugspalte2breite);setzespaltenbreite(lehrerspalte3breite);setzespaltenbreite(
+stellvspalte4breite);inittupel(dnraktschuelergruppen);initausgabekopfdruck;
+putwert(fnrsgrpsj,bearbeitungsschuljahr);putwert(fnrsgrphj,
+bearbeitungshalbjahr);lesenvorbereitendruck(PROC (INT CONST ,BOOL PROC ,INT
+VAR )scanforward,BOOL PROC multistopsim);.variablenfuerdrucksetzen:
+druckzeilenzahl:=drucklaenge(ueberschriftenzeilen)-ausgkopflaenge.END PROC
+schuelergruppendruckvorbereiten;PROC initausgabekopfdruck:ausgkopfdruck(1):=
+textueberschrift;ausgkopfdruck(2):=leerzeileEND PROC initausgabekopfdruck;
+PROC schuelergruppenseitedrucken:schuelergruppenueberschriftdrucken;
+seitedrucken(PROC (INT VAR )schuelergruppendrucken,druckzeilenzahl,
+ausgfeldlaenge,BOOL PROC multistopsim);seitenwechsel.END PROC
+schuelergruppenseitedrucken;PROC schuelergruppenueberschriftdrucken:INT VAR i
+;druckkopfschreiben;FOR iFROM 1UPTO ausgkopflaengeREP druckzeileschreiben(
+ausgkopfdruck(i))PER END PROC schuelergruppenueberschriftdrucken;PROC
+schuelergruppendrucken(INT VAR zeilenzaehler):schuelergruppendatenholen;IF
+altejahrgangsstufe<>jahrgangsstufeTHEN spaltenweise(" ");spaltenweise(" ");
+spaltenweise(" ");spaltenweise(" ");ausgfeld(1):=zeile;zeilenzaehlerINCR
+ausgfeldlaenge;schuelergruppenindruckdateiFI ;schuelergruppenaufbereitendruck
+;zeilenzaehlerINCR ausgfeldlaenge;schuelergruppenindruckdatei.END PROC
+schuelergruppendrucken;PROC schuelergruppenaufbereitendruck:
+setzespaltentrenner(spaltentrenner);schuelergruppendatenaufbereitenbild;
+ausgfeld(1):=zeile;altejahrgangsstufe:=jahrgangsstufe;END PROC
+schuelergruppenaufbereitendruck;PROC schuelergruppenindruckdatei:INT VAR i;
+FOR iFROM 1UPTO ausgfeldlaengeREP druckzeileschreiben(ausgfeld(1))PER END
+PROC schuelergruppenindruckdatei;END PACKET schuelergruppenlisten
+