summaryrefslogtreecommitdiff
path: root/app/schulis/2.2.1/src/0.listen.faecher
diff options
context:
space:
mode:
Diffstat (limited to 'app/schulis/2.2.1/src/0.listen.faecher')
-rw-r--r--app/schulis/2.2.1/src/0.listen.faecher86
1 files changed, 86 insertions, 0 deletions
diff --git a/app/schulis/2.2.1/src/0.listen.faecher b/app/schulis/2.2.1/src/0.listen.faecher
new file mode 100644
index 0000000..650efde
--- /dev/null
+++ b/app/schulis/2.2.1/src/0.listen.faecher
@@ -0,0 +1,86 @@
+PACKET faecherlistenDEFINES faecherlispezielleteile:LET faechereingangsmaske=
+"mu liste einfach eingang",spaltentrenner=" ",faecheranfpos=2,spalte1breite=5
+,spalte2breite=35,spalte3breite=10,spalte4breite=11,niltext="",blank=" ",null
+=0,strich="-",ueberschriftenzeilen=2,mnrauswahlnichtsinnvoll=56,
+mnrbearbeitetwerden=109,ausgkopflaenge=2,ausgfeldlaenge=1,
+anzahlderobjekteprobildschirm=17;TEXT VAR faecherueberschrift:=
+"Liste der Fächer",fach,fachbezeichnung,fachgruppe,fachbereich,anfbuchstabe,
+neueranfbuchstabe:="",auswahlnichtsinnvoll,bearbeitetwerden;TEXT CONST
+leerzeile:=bildbreite*blank,textueberschrift:=("Fach"+2*blank+
+"Fachbezeichnung"+21*blank+"Fachgruppe"+blank+"Fachbereich");INT VAR
+eingabestatus,lesestart,bildanfang,spalte2druckbreite,druckzeilenzahl;INT
+CONST aktuelleindexnr:=dnrfaecher,fnrfach:=fnrffach,fnrfachbezeichnung:=
+fnrffachbez,fnrfachgruppe:=fnrffachgrp,fnrfachbereich:=fnrffachbereich;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 faecherlispezielleteile(INT CONST nr):SELECT nrOF CASE 1:
+faecherdialogvorbereitenCASE 2:faechereingabenrichtigCASE 3:
+faecherlistenvorbereitenCASE 4:faecherdruckvorbereitenCASE 5:
+faecherseitedruckenCASE 6:faecherbildschirmvorbereitenCASE 7:
+faecherseitezeigenENDSELECT .END PROC faecherlispezielleteile;PROC
+faecherdialogvorbereiten:faecherueberschrift:=text(vergleichsknoten);
+setzeanfangswerte(faechereingangsmaske,faecheranfpos)END PROC
+faecherdialogvorbereiten;PROC faechereingabenrichtig: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:meldungstext(mnrauswahlnichtsinnvoll,
+auswahlnichtsinnvoll);standardmeldung(auswahlnichtsinnvoll,niltext).END PROC
+faechereingabenrichtig;PROC faecherlistenvorbereiten:BOOL VAR b;initspalten;
+setzespaltentrenner(spaltentrenner);lesestart:=fnrfach;inittupel(dnrfaecher);
+setzeidentiwert("");initobli(anzahlderobjekteprobildschirm);
+objektlistestarten(aktuelleindexnr,"",lesestart,TRUE ,b);setzebestandende(
+NOT multistopCOR b);END PROC faecherlistenvorbereiten;PROC
+faecherbildschirmvorbereiten:LET fnrausganf=2;standardkopfmaskeaktualisieren(
+faecherueberschrift);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(
+spalte1breite);setzespaltenbreite(spalte2breite);setzespaltenbreite(
+spalte3breite);setzespaltenbreite(spalte4breite);END PROC
+faecherbildschirmvorbereiten;PROC faecherseitezeigen:blaettern(PROC (INT
+CONST )faecherdatenzeigen,aktion,TRUE ,FALSE ,BOOL PROC multistop)END PROC
+faecherseitezeigen;PROC faecherdatenzeigen(INT CONST x):faecherdatenholen;
+faecherdatenaufbereitenbild;faecherdatenaufbildschirm.END PROC
+faecherdatenzeigen;PROC faecherdatenholen:fach:=wert(fnrfach);fachbezeichnung
+:=wert(fnrfachbezeichnung);IF wert(fnrfachgruppe)=text(null)THEN fachgruppe:=
+strichELSE fachgruppe:=wert(fnrfachgruppe);FI ;IF wert(fnrfachbereich)=
+niltextTHEN fachbereich:=strichELSE fachbereich:=wert(fnrfachbereich)FI ;END
+PROC faecherdatenholen;PROC faecherdatenaufbereitenbild:spaltenweise(fach);
+spaltenweise(fachbezeichnung);spaltenweise(fachgruppe);spaltenweise(
+fachbereich);END PROC faecherdatenaufbereitenbild;PROC
+faecherdatenaufbildschirm:INT VAR i;FOR iFROM 1UPTO ausgfeldlaengeREP
+ausgfeld(i):=zeile;ausgfeld(i)IN ausgabepos;erhoeheausgabeposumeins;PER ;END
+PROC faecherdatenaufbildschirm;PROC faecherdruckvorbereiten:setzebestandende(
+FALSE );anfbuchstabe:=" ";druckvorbereiten;variablenfuerdrucksetzen;
+initdruckkopf(zentriert(faecherueberschrift,druckbreite),zentriert(length(
+faecherueberschrift)*"-",druckbreite));initspalten;setzespaltenbreite(
+spalte1breite);setzespaltenbreite(spalte2breite);setzespaltenbreite(
+spalte3breite);setzespaltenbreite(spalte4breite);holemeldung;inittupel(
+dnrfaecher);initausgabekopfdruck;lesenvorbereitendruck(PROC (INT CONST ,BOOL
+PROC ,INT VAR )scanforward,BOOL PROC multistop);.holemeldung:meldungstext(
+mnrbearbeitetwerden,bearbeitetwerden).variablenfuerdrucksetzen:
+druckzeilenzahl:=drucklaenge(ueberschriftenzeilen)-ausgkopflaenge.END PROC
+faecherdruckvorbereiten;PROC initausgabekopfdruck:ausgkopfdruck(1):=
+textueberschrift;ausgkopfdruck(2):=leerzeile;END PROC initausgabekopfdruck;
+PROC faecherseitedrucken:faecherueberschriftdrucken;seitedrucken(PROC (INT
+VAR )lehrerdrucken,druckzeilenzahl,ausgfeldlaenge,BOOL PROC multistop);
+seitenwechsel.END PROC faecherseitedrucken;PROC faecherueberschriftdrucken:
+INT VAR i;druckkopfschreiben;FOR iFROM 1UPTO ausgkopflaengeREP
+druckzeileschreiben(ausgkopfdruck(i))PER END PROC faecherueberschriftdrucken;
+PROC lehrerdrucken(INT VAR zeilenzaehler):LET markiert="#";faecherdatenholen;
+ggflmeldunganfbuchstabe;faecheraufbereitendruck;zeilenzaehlerINCR
+ausgfeldlaenge;faecherindruckdatei.ggflmeldunganfbuchstabe:IF
+anfbuchstabegeaendertTHEN meldunganfbuchstabeFI .anfbuchstabegeaendert:
+neueranfbuchstabe:=fachSUB 1;anfbuchstabe<>neueranfbuchstabe.
+meldunganfbuchstabe:standardmeldung(mnrbearbeitetwerden,neueranfbuchstabe+
+markiert);anfbuchstabe:=neueranfbuchstabe.END PROC lehrerdrucken;PROC
+faecheraufbereitendruck:spaltenweise(fach);spaltenweise(fachbezeichnung);
+spaltenweise(fachgruppe);spaltenweise(fachbereich);ausgfeld(1):=zeile;END
+PROC faecheraufbereitendruck;PROC faecherindruckdatei:INT VAR i;FOR iFROM 1
+UPTO ausgfeldlaengeREP druckzeileschreiben(ausgfeld(1))PER .END PROC
+faecherindruckdatei;END PACKET faecherlisten
+