Show TOC

Verwendung der generischen AblagetabelleLocate this document in the navigation structure

Zum Sichern von Daten in der generischen Ablage werden die Methoden der Klasse CL_PERS_ADMIN verwendet.

Methode Beschreibung

get_data

Lesen der Daten zum Benutzer

set_data

Schreiben der Daten zum Benutzer

get_data_role

Lesen der Daten zu einer Rolle

set_data_role

Schreiben der Daten zu einer Rolle

get_data_system

Lesen der Daten zum System

set_data_system

Lesen der Daten zum System

save_buffer

Speichern der gepufferten Daten

get_object

Abrufen eines Personalisierungsobjektes zum Benutzer

get_object_role

Abrufen eines Personalisierungsobjektes zu einer Rolle

get_object_system

Abrufen eines Personalisierungsobjektes zum System

user_dialog

Dialogaufruf für Objekte zu Benutzern

role_dialog

Dialogaufruf für Objekte zu Rollen

system_dialog

Dialogaufruf für Objekte zum System

Grundsätzlich gibt es zwei Arten, auf die Personalisierungsdaten zuzugreifen. Die Daten können direkt gelesen bzw. geschrieben werden oder über ein ABAP-Objekt manipuliert werden.

Direktes Schreiben von Daten

Verwenden Sie die Methoden SET_DATA, SET_DATA_ROLE und SET_DATA_SYSTEM zum direkten Schreiben von Personalisierungsdaten.

Beispiel für das direkte Schreiben von Daten in die generische Ablagetabelle

Im Beispiel werden die Daten aus demo_data im Schlüssel DEMO_KEY für den Benutzer SY-UNAME abgelegt.

Parameter Typ Beschreibung

p_pers_key

SPERS_KEY

Schlüssel für Personalisierungsdaten.

Dieser Schlüssel wurde bei der Registrierung des Personalisierungsobjektes vergeben.

p_uname

UNAME

Benutzername, zu dem die Daten gelesen werden sollen.

p_pers_data

ANY

Personalisierungsdaten

p_write_through

CHAR1

Kennzeichen für die Umgehung des Pufferungsmechanismus:

Wenn das Kennzeichen auf X gesetzt wurde, werden die Daten sofort in die Datenbank geschrieben.

p_append

CHAR1

Kennzeichen zum Anhängen von Daten:

Wurde das Kennzeichen auf X gesetzt, werden die Daten angehängt.

Um die Daten später wieder zu lesen, muss dann eine interne Tabelle mit entsprechendem Zeilentyp verwendet werden.

p_modify

CHAR1

Kennzeichen zum Modifizieren von Daten (interne Tabellen):

Wenn das Kennzeichen gesetzt ist, werden die Daten in der Ablage ersetzt, die in den vorgegebenen Schlüsselfeldern mit den mitgegebenen Daten identisch sind.

Der Parameter kann nur in Verbindung mit p_append = 'X' verwendet werden.

Die Schlüsselfelder werden im Parameter p_key_tab übergeben.

 

p_key_tab

SPERS_SELT

Liste der Schlüsselfelder für die Änderung.

Die Methoden SET_DATA_AGR und SET_DATA_SYSTEM können analog verwendet werden.

Direktes Lesen von Daten

Zum direkten Lesen von Daten werden die Methoden GET_DATA, GET_DATA_AGR und GET_DATA_SYSTEM verwendet.

Daten direkt aus der generischen Ablagetabelle lesen

In dem Beispiel werden die Personalisierungsdaten unter dem Schlüssel DEMO_KEY zu dem Benutzer SY-UNAME in die Variable demo_data gelesen. demo_data. Die Daten zu den Rollen, denen der Benutzer zugewiesen ist, befinden sich in der Tabelle demo_data_list.

Parameter Typ Beschreibung

p_pers_key

SPERS_KEY

Schlüssel für Personalisierungsdaten.

Dieser Schlüssel wurde bei der Registrierung des Personalisierungsobjektes vergeben.

p_uname

UNAME

Benutzername, zu dem die Daten gelesen werden sollen.

p_user_data_only

CHAR1

Wenn das Kennzeichen auf X gesetzt ist, werden nur die Daten zum Benutzer gelesen. Die Daten an den zugewiesenen Rollen werden nicht gelesen.

p_refresh_buffer

CHAR1

Kennzeichen für die Umgehung des Pufferungsmechanismus.

Wurde das Kennzeichen auf X gesetzt, werden die Daten direkt aus der Datenbank gelesen. Der Puffer wird dabei ignoriert.

p_pers_data

ANY

Personalisierungsdaten

p_pers_data_list

SPERS_ADT

Personalisierungsdaten der Rollen, denen der Benutzer zugewiesen ist. Die Tabelle enthält den Namen der Rolle und eine Referenz auf die Personalisierungsdaten.

p_sel_tab

SPERS_SELT

Tabelle mit Auswahlbedingungen (interne Tabellen).

Die interne Tabelle enthält Feld-Wert-Kombinationen für die Auswahl von Daten.

p_sel_cond_and

CHAR1

Und-Verknüpfung der Auswahlbedingungen.

Die Methoden GET_DATA_AGR und GET_DATA_SYSTEM können analog verwendet werden.

Sichern der gepufferten Daten

Wurden die Personalisierungsdaten nicht direkt in die Datenbank geschrieben, können die gepufferten Daten mit der Methode SAVE_BUFFER gesichert werden. Beim Aufruf der Methode werden sämtliche Daten der Personalisierungsablage gesichert.

Aufruf eines Dialogs

Zum Aufruf des Dialogs werden die Methoden USER_DIALOG, ROLE_DIALOG und SYSTEM_DIALOG verwendet.

Dialog für allgemeine Ablage abrufen

In dem Beispiel wird ein Dialog zu dem Personalisierungsobjekt mit dem Schlüssel DEMO_KEY für den Benutzer SY-UNAME aufgerufen. Die Daten verbleiben zunächst im Puffer.

Parameter Typ Beschreibung

p_pers_key

SPERS_KEY

Schlüssel für Personalisierungsdaten.

Dieser Schlüssel wurde bei der Registrierung des Personalisierungsobjektes vergeben.

p_uname

UNAME

Benutzername, zu dem die Daten gelesen werden sollen.

p_check_user

CHAR1

Wurde das Kennzeichen auf X gesetzt, wird der Benutzer auf Existenz überprüft.

p_commit

CHAR1

Kennzeichen für die Umgehung des Pufferungsmechanismus:

Wurde das Kennzeichen auf X gesetzt, werden die Daten direkt in die Datenbank geschrieben.

Die Methoden ROLE_DIALOG und SYSTEM_DIALOG können analog verwendet werden.

Löschen von Daten

Zum Löschen von Personalisierungsdaten aus der generischen Ablage stehen die Methoden DELETE_DATA_USER, DELETE_DATA_ROLE und DELETE_DATA_SYSTEM zur Verfügung.

Benutzerdaten löschen

Im Beispiel werden die Daten zum Benutzer SY-UNAME und dem Schlüssel DEMO_KEY gelöscht.

Parameter Typ Beschreibung

p_pers_key

SPERS_KEY

Schlüssel für Personalisierungsdaten.

Dieser Schlüssel wurde bei der Registrierung des Personalisierungsobjektes vergeben.

p_uname

UNAME

Benutzername, zu dem die Daten gelesen werden sollen.

p_sel_tab

SPERS_SELT

Tabelle mit Auswahlbedingungen (interne Tabellen).

Die interne Tabelle enthält Feld-Wert-Kombinationen für die Auswahl von Daten.

p_sel_cond_and

CHAR1

Und-Verknüpfung der Auswahlbedingungen.

p_buffer_only

CHAR1

Wurde das Kennzeichen gesetzt, wird nur die Puffertabelle gelöscht.

Die Methoden DELETE_DATA_ROLE und DELETE_DATA_SYSTEM können analog verwendet werden.

Zugriff auf die Personalisierungsdaten über ein ABAP-Objekt

Die Methoden GET_OBJECT, GET_OBJECT_AGR und GET_OBJECT_SYSTEM können zum Lesen eines ABAP-Objekts hinsichtlich eines Schlüssels verwendet werden. Sie können dieses ABAP-Objekt zum Manipulieren von Personalisierungsdaten verwenden.

Zugriff auf die Personalisierungsdaten über ein ABAP-Objekt

Im Beispiel wird ein Personalisierungsobjekt in Referenzvariable pers_objekt im Schlüssel DEMO_KEY für den Benutzer SY-UNAME gelesen.

Über den Parameter P_USER_DATA_ONLY wird festgelegt, ob auch die Objekte zu den Rollen gelesen werden sollen, die dem Benutzer zugewiesen sind. Die Objekte zu den Rollen werden in dem Parameter P_OBJECTS_AGR ausgegeben.

Mithilfe des Parameters P_RFC kann eine RFC-Destination angegeben werden, über die die Daten gelesen werden sollen.

Das Personalisierungsobjekt gehört der Klasse CL_PERS_OBJECT_DATA an. Die Methoden SET_DATA, GET_DATA, SAVE_OBJECT_DATA und DIALOG können für den Zugriff auf die Daten verwendet werden.

Parameter Mögliche Werte Beschreibung

p_db_commit

Standardwert X

space

Dieser Parameter ermöglicht den Aufruf ohne Commit. Die Anwendung kann selbst bestimmen, wann ein Commit durchgeführt wird.

Standardmäßig ist der Vorschlagswert X für den Parameter gesetzt, um das bisherige Verhalten zu gewährleisten. Um Commit zu übergehen setzen Sie p_db_commit = space.

Schreiben der Daten über das ABAP-Objekt

Der Schreibzugriff auf die Daten eines Personalisierungsobjektes erfolgt über die Methode SET_DATA.

Daten über das ABAP-Objekt schreiben

Im Beispiel werden die Daten aus der Variable demo_data direkt in die zentrale Ablage geschrieben. Die Bedeutung der Parameter ist analog zum direkten Schreiben von Daten.

Lesen der Daten über das ABAP-Objekt

Der Lesezugriff auf die Daten eines Personalisierungsobjektes erfolgt mit der Methode GET_DATA.

Daten über das ABAP-Objekt lesen

In dem Beispiel werden die Daten des Personalisierungsobjektes von der Datenbank in das Feld demo_data gelesen. demo_data. Die Bedeutung der Parameter ist analog zum direkten Lesen von Daten.

Aufruf des Pflegedialoges

Der Aufruf des Pflegedialoges zu einem Personalisierungsobjekt erfolgt mit der Methode DIALOG.

Aufruf des Pflegedialoges

In dem Beispiel wird der Dialog zu einem Personalisierungsobjekt aufgerufen. An den Daten vorgenommene Änderungen werden direkt in die Datenbank geschrieben, da der Parameter p_commit auf X gesetzt wurde.

Um einen Dialog aufrufen zu können, muss zu dem Schlüssel des Personalisierungsobjektes ein Dialog definiert sein. Dazu muss ein entsprechender Funktionsbaustein implementiert werden.

Gepufferte Daten sichern

Falls die Daten nicht direkt auf die Datenbank geschrieben wurden, können die Daten über die Methode SAVE_OBJECT_DATA gesichert werden. Die Methode hat den Parameter P_BACKGROUND. Wurde der Parameter auf X gesetzt, wird zum Sichern der Daten ein Hintergrundprozess gestartet.

Löschen von Daten

Zum Löschen von Daten steht die Methode DELETE_DATA zur Verfügung.

Löschen von Daten

Im Beispiel werden die Daten ohne Auswahlparameter gelöscht.

Parameter Typ Beschreibung

p_sel_tab

SPERS_SELT

Tabelle mit Auswahlbedingungen (interne Tabellen).

Die interne Tabelle enthält Feld-Wert-Kombinationen für die Auswahl von Daten.

p_sel_cond_and

CHAR1

Und-Verknüpfung der Auswahlbedingungen.

p_buffer_only

CHAR1

Wurde das Kennzeichen gesetzt, wird nur die Puffertabelle gelöscht.