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/2.kw anschr kurslisten sek2 | 90 +++++++++++++++++++++++ 1 file changed, 90 insertions(+) create mode 100644 app/schulis/2.2.1/src/2.kw anschr kurslisten sek2 (limited to 'app/schulis/2.2.1/src/2.kw anschr kurslisten sek2') diff --git a/app/schulis/2.2.1/src/2.kw anschr kurslisten sek2 b/app/schulis/2.2.1/src/2.kw anschr kurslisten sek2 new file mode 100644 index 0000000..2f79a1b --- /dev/null +++ b/app/schulis/2.2.1/src/2.kw anschr kurslisten sek2 @@ -0,0 +1,90 @@ +PACKET kwanschrkurslistensek2DEFINES kursliauskunfteingang, +kursliauskunftstarten,kursliauskunftsonderwerte,kursliauskunftscanbedingung, +kursliauskunftdruckdateibauen:LET swkurs=520,swanrede=521,swlehrer=522, +swklausur=523,swname=524,swvorname=525,swgebdat=526,maske= +"ms anschr kwkursli sek2 eingang",fnrjgst=2,fnrfach=3,fnrkennung=4,fnrakthj=5 +,fnrgeplhj=6,fnrausgbs=7,fnrausgdr=8,niltext="",blank=" ",null=0,satztrenner= +"$",feldtrenner="�",mnrbittewarten=69,mnrbittepraeziser=129,mnrkeinekwdatenda +=406,mnrjgstfalsch=404;INT VAR mnrallgemein;TEXT CONST dateimitvordruck1:= +"vordruck1 kursli kopfueb",dateimitvordruck2:="vordruck2 kursli zeile";INT +VAR index,status,dbstatusgemerkt,fehler,zeilenzahl,zusatzzeilen, +zeilenhilfszahl,anzahlsaetze,satzanfpos,feldpos1,feldpos2;TEXT VAR hj, +fuerkwsj,jgst,fachkennung,fach,kennung,kwdaten,kurs,anredetext,lehrer;BOOL +VAR bestfach,bildschirmausgabe,akthjgewaehlt,hilfsdateida;PROC +kursliauskunfteingang:standardvproc(maske)END PROC kursliauskunfteingang; +PROC kursliauskunftstarten:bestfach:=FALSE ;standardpruefe(5,fnrausgbs, +fnrausgdr,null,niltext,status);IF status<>0THEN infeld(status);return(1)ELSE +standardpruefe(5,fnrakthj,fnrgeplhj,null,niltext,status);IF status<>0THEN +infeld(status);return(1)ELSE bildschirmausgabe:=standardmaskenfeld(fnrausgdr) +=niltext;akthjgewaehlt:=standardmaskenfeld(fnrgeplhj)=niltext;jgst:= +standardmaskenfeld(fnrjgst);fach:=standardmaskenfeld(fnrfach);kennung:= +standardmaskenfeld(fnrkennung);IF weiterepruefungenokTHEN startenausfuehren +ELSE standardmeldung(mnrallgemein,niltext);return(1)FI ;FI ;FI ;. +weiterepruefungenok:standardpruefe(2,fnrjgst,null,null,niltext,status);IF +status<>0THEN infeld(fnrjgst);mnrallgemein:=mnrjgstfalsch;LEAVE +weiterepruefungenokWITH FALSE FI ;IF int(jgst)<11COR int(jgst)>13THEN infeld( +fnrjgst);mnrallgemein:=mnrjgstfalsch;LEAVE weiterepruefungenokWITH FALSE FI ; +IF (fach=niltextAND kennung<>niltext)THEN infeld(fnrfach);mnrallgemein:= +mnrbittepraeziser;LEAVE weiterepruefungenokWITH FALSE FI ;IF (fach<>niltext +AND kennung=niltext)THEN infeld(fnrkennung);mnrallgemein:=mnrbittepraeziser; +LEAVE weiterepruefungenokWITH FALSE FI ;IF NOT kwdatenraumokTHEN infeld( +fnrjgst);mnrallgemein:=mnrkeinekwdatenda;LEAVE weiterepruefungenokWITH FALSE +FI ;inittupel(dnrlehrveranstaltungen);putwert(fnrlvsj,fuerkwsj);putwert( +fnrlvhj,hj);putwert(fnrlvjgst,jgst);putwert(fnrlvfachkennung,text(fach,2)+ +kennung);IF fach<>niltextAND kennung<>niltextTHEN bestfach:=TRUE ;search( +dnrlehrveranstaltungen,TRUE );IF dbstatus<>0THEN mnrallgemein:= +mnrkeinekwdatenda;LEAVE weiterepruefungenokWITH FALSE FI ;ELSE search( +dnrlehrveranstaltungen,FALSE );IF dbstatus<>0COR wert(fnrlvjgst)<>jgstCOR +wert(fnrlvhj)<>hjCOR wert(fnrlvsj)<>fuerkwsjTHEN mnrallgemein:= +mnrkeinekwdatenda;LEAVE weiterepruefungenokWITH FALSE FI ;FI ;kurs:=text(fach +,2)+kennung;TRUE .kwdatenraumok:hj:=schulkenndatum("Schulhalbjahr");IF +akthjgewaehltTHEN kurswahlinitialisieren(jgst,jgst,hj,niltext,fuerkwsj)ELSE +IF hj="1"THEN hj:="2"ELSE hj:="1";jgst:=text(int(jgst)+1);FI ; +kurswahlinitialisieren(jgst,jgst,hj,niltext,fuerkwsj)FI ;kurswahlbasisholen( +fehler);fehler=0.startenausfuehren:setzesonderwerteschulkenndaten;IF bestfach +THEN index:=ixlvsjhjkennELSE index:=dnrlehrveranstaltungenFI ;standardmeldung +(mnrbittewarten,niltext);zusammengesetztesanschreiben(index,bildschirmausgabe +,FALSE ,BOOL PROC kursliauskunftsonderwerte,BOOL PROC +kursliauskunftscanbedingung,TEXT PROC kursliauskunftdruckdateibauen)END PROC +kursliauskunftstarten;BOOL PROC kursliauskunftscanbedingung:BOOL VAR ok;IF +bestfachTHEN ok:=dbstatus=0AND jgst=wert(fnrlvjgst)AND kurs=wert( +fnrlvfachkennung)ELSE ok:=dbstatus=0AND jgst=wert(fnrlvjgst)FI ;okEND PROC +kursliauskunftscanbedingung;BOOL PROC kursliauskunftsonderwerte:BOOL VAR +schuelerda:=FALSE ;initialisieresonderwerte;fachkennung:=wert( +fnrlvfachkennung);adressat(fachkennung);fach:=subtext(fachkennung,1,2); +kennung:=subtext(fachkennung,3,6);dbstatusgemerkt:=dbstatus;kwdaten:= +schuelerundklausur(fach,kennung,niltext);IF length(kwdaten)<>0THEN schuelerda +:=TRUE ;setzesonderwert(swkurs,wert(fnrlvjgst)+blank+fach+blank+kennung); +inittupel(dnrlehrer);putwert(fnrlparaphe,wert(fnrlvparaphe));search(dnrlehrer +,TRUE );IF dbstatus=0THEN lehrer:=wert(fnrlamtsbeztitel);lehrerCAT blank; +lehrerCAT wert(fnrlzusatz);lehrerCAT blank;lehrerCAT wert(fnrlfamname);IF +wert(fnrlgeschlecht)="m"THEN anredetext:="Herr "ELSE anredetext:="Frau "FI ; +FI ;setzesonderwert(swanrede,anredetext);setzesonderwert(swlehrer,lehrer); +dbstatus(dbstatusgemerkt);FI ;dbstatus=0AND schuelerdaEND PROC +kursliauskunftsonderwerte;TEXT PROC kursliauskunftdruckdateibauen:LET +druckdatei="liste.1",hilfsdatei="hilfsdatei";vordruckeholen; +setzemitseitennummern(TRUE );setzeanzahlderzeichenprozeile(78); +druckvorbereiten;zeilenzahl:=0;zusatzzeilen:=0;briefalternative( +dateimitvordruck1,hilfsdatei);hilfsdateiindruckdatei(hilfsdatei);hilfsdateida +:=FALSE ;satzanfpos:=pos(kwdaten,satztrenner);WHILE satzanfpos<>0AND +satzanfpos=drucklaengeTHEN seitenwechsel;zeilenzahl:=0;FI ;FOR iFROM 1 +UPTO zeilenhilfszahlREP getline(f,zeile);druckzeileschreiben(zeile)PER ; +forget(hilfsdatei,quiet);zeilenzahlINCR zeilenhilfszahlEND PROC +hilfsdateiindruckdatei;END PACKET kwanschrkurslistensek2; + -- cgit v1.2.3