Ansicht
Dokumentation

SFW_BS_ACCESS_PERMISSION - Sperren/Entsperren für EU-Objekte; Prüfen Berechtigungen und Pflegesprache

SFW_BS_ACCESS_PERMISSION - Sperren/Entsperren für EU-Objekte; Prüfen Berechtigungen und Pflegesprache

Vendor Master (General Section)   TXBHW - Original Tax Base Amount in Local Currency  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

RS_ACCESS_PERMISSION ist ein Funktionsbaustein, der für Objektklassen

- Programme,
- Textelemente von Programmen,
- Attribute von Programmen,
- benutzerdefinierte Typen,
- Dynpros,
- Oberflächen,
- Data-Dictionary-Objekte,
- logische Datenbanken,
- Nachrichten,
- UFM-Objekte,
- UDM-Objekte,
- DDIC-Objekte,
- Funktionsbausteine und -gruppen (einschl. Testsequenzen)
- Entwicklungsklassen,
- Paketschnittstellen,
- Transaktionscodes,
- Dialogbausteine,
- Parameter-Ids,
- CATT-OBJEKTE,
- Control Composites
- Klassenobjekte und Klassen-Interfaces,
- Business Server Pages Applications,
- XSLT-Transformationen,
- WebDynpros,
- WebDynpro Applikationen,
- MIME Objekte,
- COOL Objekte,

- Prozess Agenten Framework,
- Formularobjekt,
- Enhancement Objekte,
- Swicht Framework Objekte

solche Prüfungen und Leistungen zentralisiert, die erforderlich sind, um Objekte dieser Objektklassen

- bearbeiten zu können,
- anzeigen zu können und
- (nach einer Bearbeitung) wieder freizugeben.

RS_ACCESS_PERMISSION hat folgende Anwendungsvoraussetzungen:

1. Allen Objektklassen mit Ausnahme von DD-Objekten und Dokumentationen ist das Berechtigungsobjekt S_EDITOR zugeordnet.
DD-Objekten ist vorläufig das Berechtigungsobjekt S_ADMI_FCT zugeordnet.
Benutzerdefinierten Typen sind die Berechtigungsobjekte von Editor und DD-Objekten gemeinsam zugeordnet.

2. Alle Objektklassen mit Ausnahme von DD-Objekten verwenden die Berechtigung
S_DEVELOP ... Berechtigung für Objekte der Workbench.
DD-Objekte verwenden die Berechtigung DDIC.

Bedeutung und Werte wesentlicher Parameter:

OBJECT_CLASS Klasse des EU-Objekts Sperrobjekt
'ABAP' ... Report/Modulpool/Include (Bearbeitung ESRDIRE
durch SE38)
'TEXT' ... Textelemente eines Reports/Modulpools EABAPTEXTE
'ABAT' ... Attribute eines Reports/Modulpools ERSDIRE +
EABAPTEXTE
'TYPE' ... benutzerdefinierte Typen ESRDIRE
'SCUA' ... SCUA-Oberfläche ESCUAPAINT
'SCRP' ... Dynprobearbeitung mit ScreenPainter ESCRP
'SLDB' ... logische Datenbanken ESRDIRE
'T100' ... Nachrichten ES_MSGSI
'SUFM' ... UFM-Objekte ESFUM
'SUDM' ... UDM-Objekte ESDUM
'FUNC' ... Funktionsbausteine ESFUNCTION
'FUGR' ... Funktionsgruppen ES_PROG
'DEVC' ... Entwicklungsklassen EEUDB
'DEVP' ... Paket Verwendungserlaubnis EEUDB
'PINF' ... Paketschnittstelle EEUDB
'PIFH' ... Paketschnittstelle Headerinfo EEUDB
'PIFA' ... Paketschnittstelle Zuordnungen EEUDB
'PCHK' ... Paketprüfung Entkoppelungszuordnung EEUDB
'PCEX' ... Paketprüfung Ausnahmen EEUDB
'XSLT' ... XSLT Programm EEUDB
'XTRA' ... Transforamation ABAP <-> XML EEUDB
'TRAN' ... Transaktionscodes EEUDB
'DIAL' ... Dialogbausteine EEUDB
'PARA' ... Parameter-Ids EEUDB
'DICT' ... Data-Dictionary-Objekt ESDICT
'SCAT' ... CATT-Objekt CATA
'CATU' ... CATT-Objekt (Varianten) CATU
'COCO' ... Control Composites EEUDB
'CLAS' ... Klassen ESEOCLASS
'CLSD' ... Klassen (Class Definition) ESEOCLASS
'CREP' ... Klassen (Local Part) ESEOCLASS
'CPUB' ... Klassen (Public Part) ESEOCLASS
'CPRO' ... Klassen (Protected Part) ESEOCLASS
'CPRI' ... Klassen (Private Part) ESEOCLASS
'CPAK' ... Klassen (Package Part) ESEOCLASS
'METH' ... Klassen (Method part) ESEOCLASS
'INTF' ... Klassen-Interfaces ESEOCLASS
'WAPA' ... BSP Applications EO2WAPA
'WAPD' ... BSP Applications (Attributes EO2WAPA
'WAPP' ... BSP Applications (Pages) EO2WAPA
'WAPN' ... BSP Applications (Navigation) EO2WAPA
'WDYN' ... WebDynpro EWDY
'WDYD' ... WebDynpro(Definition) EWDY
'WDYV' ... WebDynpro(View) EWDY
'WDYC' ... WebDynpro(Controller) EWDY

'BTAG' BTM: Task Agent ,,,, ,, ESBTM_TASK_AGENT

'BTTP' BTM: Task Type Proxy ,,,, ESBTM_TASK_TYPE

'PAOT' ... PAF: Outbound Prozess Agent,,E_SPAF_OUT_PA

'PAIN' ... PAF: Inbound Prozess Agent,,E_SPAF_IN_PA
'SFPI' ... Formularobjekt: Interface EFPINTERFACE
'SFPF' ... Formularobjekt: Formular EFPFORM
'ENHO' ... Enhancement E_ENHANCE
'ENHD' ... Enhancement (DDIC) E_ENHANCE
'ENHS' ... Enhancement Spot E_ENHANCE
'ENSC' ... Enhancement Composite E_ENHANCE
'ENHC' ... Enhancement Spot Compusite E_ENHANCE
'ENHR' ... Hierarchy Types for Composite Enhancement Implementations and Spots E_ENHANCE
'SFBS' ... SFW:Business Set EEUDB
'SFBF' ... SFW:Business Function EEUDB
'SFSW' ... SFW:Schalter EEUDB
'SF01' ... SFW:Mandanteneinstellungen EEUDB

OBJECT i.a. Sperrschlüssel des EU-Objekts gemäß entsprechendem
Sperrobjekt; spezielle Strukturen, die mindestens den
Sperrschlüssel enthalten, für 'UDM', 'UFM'
MODUS beabsichtigter Bearbeitungsmodus
'MODIFY' ... Pflegemodus (Objekt soll geändert
werden)
'INSERT' ... Pflegemodus (Objekt wird neu angelegt und braucht
einen Eintrag in die Tabelle TADIR)
'SHOW' ... Anzeigemodus (Objekt darf nicht
geändert werden)
'ENQUEUE' ... nur Kurzzeitsperre setzen
'FREE' ... Ende der Bearbeitung des Objekts (Kurzzeitsperre
rücknehmen)
'DEQUEUE' ... nur Kurzzeitsperre rücknehmen
AUTHORITY_CHECK Berechtigungsprüfung ja/nein
' ' ... Berechtigungsprüfung wird unterdrückt
'X' ... Berechtigungsprüfung wird ausgeführt
(default)

In Abhängigkeit von MODUS und AUTHORITY_CHECK führt der FuBa folgende Schritte aus:

Modus 'MODIFY'/'INSERT':
Geprüft wird, ob
- falls AUTHORITY_CHECK = 'X':
. der Benutzer die Berechtigung S_EDITOR_ALL zum
Berechtigungsobjekt S_EDITOR oder
. für 'DDIC': der Benutzer die Berechtigung DDIC zum
Berechtigungsobjekt S_ADMI_FCT besitzt oder
- keine Langzeitsperre (Korrektursystem) wirksam
ist,
- falls SUPPRESS_CORR_CHECK = ' ':
. keine Sperre durch nicht übersetzte Texte wirksam ist (Textlog),
- keine Kurzzeitsperre (ENQUEUE) wirksam ist,
- die Originalsprache des zu bearbeitenden EU-Gesamtobjekts
(Import-Parameter MASER_LANGUAGE) mit der Anmeldesprache
übereinstimmt.
Stimmen die Sprachen nicht überein, kann sofort in einen Zweig
"Originalsprache ändern" verzweigt werden, in dem die
Umsetzung in eine andere Sprache angestoßen wird. In die
Umsetzung sind Übersetzungstools integriert. Die Umsetzung
wird für alle zusammengehörigen Teilojekte gemeinsam ausgeführt
(z.B. gehören zu einem Programm nicht nur die
ABAP-Textelemente, sondern auch alle GUI-Bestandteile und alle
Dynpros).
Nach Beendigung der Übersetzungstools wird zu einem Funktions-
baustein verzweigt, dessen Name als Parameter LANGUAGE_UPD_EXIT
anzugeben ist. Dort müssen die Teile der Sprachumsetzung
programmiert sein, die nicht mit dem reinen Übersetzen von
Texten zusammenhängen.
- in einem Kundensystem ein SAP-Objekt bearbeitet werden soll und
der Import-Parameter MASTER_LANGUAGE mit der Anmeldesprache
übereinstimmt.
Stimmen sie überein, bekommt MODIFICATION_LANGUAGE den
Wert von MASTER_LANGUAGE.
Stimmen sie nicht überein, muß sich der Benutzer in einem
Popup entscheiden, ob er das EU-Objekt in der
SAP-Pflegesprache (MASTER_LANGUAGE) oder in der Anmeldesprache
bearbeiten will. MODIFICATION_LANGUAGE wird entsprechend
gesetzt. Wenn nach Rückkehr aus RS_ACCESS_PERMISSION die
beiden Parameter NEW_MASTER_LANGUAGE und MODIFICATION_LANGUAGE
nicht übereinstimmen, muß das EU-Objekt in der Sprache
MODIFICATION_LANGUAGE zur Bearbeitung angeboten werden, wobei
fehlende Texte aus der NEW_MASTER_LANGUAGE ergänzt werden
müssen.

Sind alle Prüfungen erfolgreich, wird das Objekt
gesperrt (ENQUEUE). Gesperrt wird auch dann, wenn die Prüfung auf
Übereinstimmung zwischen Originalsprache und Anmeldesprache negativ
ausfiel, der Anwender sich im Dialog aber dafür entschieden hat, die
Originalsprache nicht zu wechseln, also in der Anmeldesprache zu
pflegen.
Im Modus 'INSERT' wird ein popup des Korrektursystems erzwungen, auf
dem die Entwicklungseigenschaften des neuen Objektes anzugeben sind.

Modus 'SHOW':
Geprüft wird, ob der Benutzer die Berechtigung
S_EDITOR_SHOW zum Berechtigungsobjekt S_EDITOR.
Für DDIC und DOCU wird keine Berechtigung geprüft.
Ist die Prüfung erfolgreich, wird das Objekt mit Ausnahme von
DD-Objekten entsperrt (DEQUEUE).

Modus 'FREE':
Das Objekt wird entsperrt (DEQUEUE).

Zusammenspiel mit anderen Funktionsbausteinen:

Im Modus 'MODIFY' ruft RS_ACCESS_PERMISSION den Funktionsbaustein RS_CORR_CHECK auf. Dieser prüft, ob eine Langzeitsperre vom Korrektursystem vorliegt. Ist der Zugriff seitens des Korrektursystems nicht untersagt und ist das zu bearbeitende Objekt noch nicht in einer Korrektur enthalten, wird das Objekt n o c h n i c h t in eine Korrektur aufgenommen. Dies geschieht erst durch einen Aufruf von RS_CORR_INSERT, der an das Sichern des zu bearbeitenden Objektes zu binden ist. Damit ergibt sich für die Bearbeitung eines Objektes im Modus 'MODIFY' folgender typischer Ablauf:

Beginn der Bearbeitung: RS_ACCESS_PERMISSION mit MODUS = 'MODIFY'

(erstes) Sichern: RS_CORR_INSERT

Ende der Bearbeitung: RS_ACCESS_PERMISSION mit Modus = 'FREE'

Besonderheiten der EXCEPTIONs:

- In der Regel werden alle exceptions in der Form
MESSAGE .... RAISING ....
ausgelöst. Eine Ausnahme bildet die exception PERMISSION_FAILURE, die
von RS_CORR_CHECK übernommem und mit RAISE weitergegeben wird. Man
kann davon ausgehen, daß diese exception nur dann auftritt, wenn
durch das Korrektursystem bereits ein Fehlerdialog mit dem Anwender
geführt wurde.

- ENQUEUED_BY_USER Objekt gesperrt durch anderen
Benutzer; nach der Rückkehr aus
RS_MODE steht der Name dieses
anderen Benutzers in
SY-MSGV1 zur Verfügung.





Parameter

AUTHORITY_CHECK
DEQUEUE_SYNCHRON
DEVCLASS
DEVCLASS_GEN
ERROR_INFO
EXTEND
FROZEN
FROZEN_OBJECTS
GENFLAG
GLOBAL_LOCK
KORRNUM
LANGUAGE_UPD_EXIT
MASTER_LANGUAGE
MODE
MODIFICATION_LANGUAGE
NEW_MASTER_LANGUAGE
OBJECT
OBJECT_CLASS
ORDERNUM
REQUEST_LANGUAGE
SUPPRESS_CORR_CHECK
SUPPRESS_CORR_CHECK_ALTOGETHER
SUPPRESS_EDITOR_LOCK_CHECK
SUPPRESS_EXTEND_DIALOG
SUPPRESS_LANGUAGE_CHECK
SUPPRESS_LANGUAGE_DIALOG
SUPPRESS_UPGRADE_CHECK
TADIRE
TRANSPORT_KEY
TRDIR_INF

Ausnahmen

CANCELED_IN_CORR
ENQUEUED_BY_USER
ENQUEUE_SYSTEM_FAILURE
ILLEGAL_PARAMETER_VALUES
LOCKED_BY_AUTHOR
NO_MODIFY_PERMISSION
NO_SHOW_PERMISSION
OTHERS
PERMISSION_FAILURE
REQUEST_LANGUAGE_DENIED

Funktionsgruppe

SFW_ACCESS_CONTROL

Vendor Master (General Section)   General Material Data  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 13982 Date: 20240523 Time: 104405     sap01-206 ( 111 ms )