PACKET erfschuldatenDEFINES erfassungschuldaten:LET maskenname= "ms erf schuldaten",fnrletztesfeld=9,fnrkennung=2,fnrschulname=3, fnrstrasseundnummer=4,fnrtelefon=5,fnrplzort=6,fnrschulart=7,fnrschulnr=8, fnrbundesland=9,trenner=" = ";LET maxlaengekennung=7,meldkennungzulang=60; LET bestandschulart="c02 schulart";PROC erfassungschuldaten(INT CONST proznr) :systemdboff;reinitparsing;SELECT proznrOF CASE 1:setzeerfassungsparameter CASE 2:zeigeschluesselzurbearbeitungCASE 3:pruefeplausibilitaetCASE 4: setzewertefuerdbspeicherungCASE 5:setzeidentiobjektfuerobjektlisteCASE 6: schuldatenlesenCASE 7:schuldatenaendernCASE 8:schuldateneinfuegenCASE 9: schuldatenloeschenEND SELECT END PROC erfassungschuldaten;PROC setzeerfassungsparameter:setzeerfassungsparameter(dnrschulen,maskenname, fnrletztesfeld)END PROC setzeerfassungsparameter;PROC zeigeschluesselzurbearbeitung:setzeerfassungsfeld(wert(fnrschkennung), fnrkennung);setzeerfassungsfeld(wert(fnrschname),fnrschulname); setzeerfassungsfeld(wert(fnrschstrnr),fnrstrasseundnummer); setzeerfassungsfeld(wert(fnrschtelnr),fnrtelefon);setzeerfassungsfeld(wert( fnrschplzort),fnrplzort);setzeerfassungsfeld(wert(fnrschart),fnrschulart); setzeerfassungsfeld(wert(fnrschamtlnr),fnrschulnr);setzeerfassungsfeld(wert( fnrschbundesland),fnrbundesland);END PROC zeigeschluesselzurbearbeitung;PROC pruefeplausibilitaet:LET leer="",null=0;INT VAR fehlerstatus;pruefe(1, erfassungsmaske,PROC erfassungswert,fnrkennung,null,null,leer,fehlerstatus); ueberpruefefehlerstatus;IF length(erfassungswert(fnrkennung))> maxlaengekennungTHEN meldeauffaellig(erfassungsmaske,meldkennungzulang); setzefehlerstatus(fnrkennung);LEAVE pruefeplausibilitaetFI ;pruefe(1, erfassungsmaske,PROC erfassungswert,fnrschulname,null,null,leer,fehlerstatus) ;ueberpruefefehlerstatus;pruefe(1,erfassungsmaske,PROC erfassungswert, fnrschulart,null,null,leer,fehlerstatus);ueberpruefefehlerstatus;pruefe(4, erfassungsmaske,PROC erfassungswert,fnrschulart,null,null,bestandschulart, fehlerstatus);ueberpruefefehlerstatus;.ueberpruefefehlerstatus:IF fehlerstatus<>0THEN setzefehlerstatus(fehlerstatus);LEAVE pruefeplausibilitaetFI ;.END PROC pruefeplausibilitaet;PROC setzewertefuerdbspeicherung:putwert(fnrschkennung,erfassungswert(fnrkennung)) ;putwert(fnrschname,erfassungswert(fnrschulname));putwert(fnrschstrnr, erfassungswert(fnrstrasseundnummer));putwert(fnrschtelnr,erfassungswert( fnrtelefon));putwert(fnrschplzort,erfassungswert(fnrplzort));putwert( fnrschart,erfassungswert(fnrschulart));putwert(fnrschamtlnr,erfassungswert( fnrschulnr));putwert(fnrschbundesland,erfassungswert(fnrbundesland));END PROC setzewertefuerdbspeicherung;PROC setzeidentiobjektfuerobjektliste:LET trennsymbolfuerobli="$";TEXT VAR identizeile;identizeile:=wert(dnrschulen+1)+ trenner+wert(dnrschulen+2);identizeile:=subtext(identizeile,1, maxidentizeilenlaenge);setzeidentiwert(identizeilemitschluesselanhang). identizeilemitschluesselanhang:identizeile+trennsymbolfuerobli+wert( dnrschulen+1).END PROC setzeidentiobjektfuerobjektliste;PROC schuldatenlesen: putwert(fnrschkennung,schluessel);search(dnrschulen,TRUE );IF dbstatus=ok THEN saveupdateposition(dnrschulen);FI END PROC schuldatenlesen;PROC schuldatenaendern:restoreupdateposition(dnrschulen);update(dnrschulen);END PROC schuldatenaendern;PROC schuldateneinfuegen:insert(dnrschulen)END PROC schuldateneinfuegen;PROC schuldatenloeschen:delete(dnrschulen)END PROC schuldatenloeschen;TEXT PROC schluessel:erfassungswert(fnrkennung)END PROC schluessel;END PACKET erfschuldaten;