app/baisy/2.2.1-schulis/src/isp.erf.benutzerberechtigungen

Raw file
Back to index

PACKET erfbenutzerberechtigungenDEFINES erfassungbenutzerberechtigungen:LET 
maskenname="mu erf benutzerdaten",fnrschluessel=2,maxschluessellaenge=0,
fnrgeheimwort=3,fnrberechtigunganfang=4,fnrberechtigungende=43,
meldungkeineberechtigung=75,trenner=" = ";TEXT VAR felderinstring:="",bestand
:="s";INT VAR dateinummer:=0;#25.03.87#PROC erfassungbenutzerberechtigungen(
INT CONST proznr):systemdbon;SELECT proznrOF CASE 1:setzeerfassungsparameter
CASE 2:zeigeschluesselfuerbearbeitungCASE 3:pruefeplausibilitaetCASE 4:
setzewertefuerdbspeicherungCASE 5:setzeidentiobjektfuerobjektlisteCASE 6:
benutzerlesenCASE 7:benutzeraendernCASE 8:benutzereinfuegenCASE 9:
benutzerloeschenENDSELECT ;#systemdboff;##26.03.87#END PROC 
erfassungbenutzerberechtigungen;PROC setzeerfassungsparameter:dateinummer:=
dnrbenutz;bestand:=benutzerbestandSUB 1;setzeerfassungsparameter(dateinummer,
maxschluessellaenge,maskenname,fnrberechtigungende)END PROC 
setzeerfassungsparameter;PROC zeigeschluesselfuerbearbeitung:
setzeerfassungsfeld(wert(fnrbenutzgeheimwort),fnrgeheimwort);
berechtigungeninfeldersetzen(wert(fnrbenutzberecht),fnrberechtigunganfang)
END PROC zeigeschluesselfuerbearbeitung;PROC berechtigungeninfeldersetzen(
TEXT CONST berechtstring,INT CONST i):TEXT VAR t:=subtext(berechtstring,2);
INT VAR p:=pos(t,"/");INT VAR l:=length(t);INT VAR j;IF p>0THEN 
setzeerfassungsfeld(subtext(t,1,p-1),i);berechtigungeninfeldersetzen(subtext(
t,p),i+1)ELSE setzeerfassungsfeld(subtext(t,1,l),i);FOR jFROM i+1UPTO 
fnrberechtigungendeREP setzeerfassungsfeld("",j)PER FI END PROC 
berechtigungeninfeldersetzen;PROC pruefeplausibilitaet:INT VAR fehlerstatus:=
0;concatenation(felderinstring);erstellebenutzungsberechtigung(anzahl,
fehlerstatus,felderinstring);IF fehlerstatus<>0THEN melde(erfassungsmaske,
meldungkeineberechtigung);setzefehlerstatus(fnrberechtigunganfang+
fehlerstatus-1);LEAVE pruefeplausibilitaetFI .anzahl:fnrberechtigungende-
fnrberechtigunganfang+1.END PROC pruefeplausibilitaet;PROC concatenation(
TEXT VAR t):INT VAR i;INT VAR l:=length(erfassungsmaske,fnrberechtigunganfang
);t:="";FOR iFROM fnrberechtigunganfangUPTO fnrberechtigungendeREP IF 
erfassungswert(i)<>""THEN tCAT text(erfassungswert(i),l)FI PER END PROC 
concatenation;PROC setzewertefuerdbspeicherung:putwert(fnrbenutzbestand,
bestand);putwert(fnrbenutzname,erfassungswert(fnrschluessel));putwert(
fnrbenutzgeheimwort,erfassungswert(fnrgeheimwort));putwert(fnrbenutzberecht,
felderinstring)END PROC setzewertefuerdbspeicherung;PROC 
setzeidentiobjektfuerobjektliste:LET trennsymbolfuerobli="$";TEXT VAR 
identizeile;identizeile:=wert(fnrbenutzname)+trenner+wert(fnrbenutzberecht);
identizeile:=subtext(identizeile,1,maxidentizeilenlaenge);setzeidentiwert(
identizeilemitschluesselanhang).identizeilemitschluesselanhang:identizeile+
trennsymbolfuerobli+wert(fnrbenutzname).END PROC 
setzeidentiobjektfuerobjektliste;PROC benutzerlesen:inittupel(dnrbenutz);
putwert(fnrbenutzbestand,bestand);putwert(fnrbenutzname,erfassungswert(
fnrschluessel));search(dnrbenutz,TRUE );IF dbstatus=okTHEN saveupdateposition
(dnrbenutz)FI END PROC benutzerlesen;PROC benutzeraendern:
restoreupdateposition(dnrbenutz);update(dnrbenutz);logbucheintrag("Änderung")
END PROC benutzeraendern;PROC benutzereinfuegen:insert(dnrbenutz);
logbucheintrag("Neueinfügen")END PROC benutzereinfuegen;PROC benutzerloeschen
:delete(dnrbenutz);logbucheintrag("Entfernen")END PROC benutzerloeschen;PROC 
logbucheintrag(TEXT CONST logergaenzung):TEXT VAR eintrag:="Anw. 10.5.1 ";
eintragCAT logergaenzung;eintragCAT " """;eintragCAT schluessel;eintragCAT 
"""";logeintrag(eintrag)END PROC logbucheintrag;TEXT PROC schluessel:
erfassungswert(fnrschluessel)END PROC schluessel;END PACKET 
erfbenutzerberechtigungen