SPA/GPA Parameter

Aus SAP-Wiki
Zur Navigation springenZur Suche springen

SPA/GPA-Parameter werden im SAP-Memory gespeichert. Hier können Felder transaktionsübergreifend gefüllt werden. Der SAP-Memory steht dem Benutzer während einer Anmeldung zur Verfügung. Die Speicherung von Werten in SPA/GPA-Parametern ist benutzerspezifisch.

Verwandt mit den SPA/GPA-Parametern (SAP-Memory) ist der ABAP-Memory.

Füllen eines SPA/GPA-Parameters

SET PARAMETER ID <pid> FIELD <f>. 

Diese Anweisung speichert den Inhalt des Felds <f> unter der Kennung <pid> im SAP-Memory. Die Kennung <pid> kann aus zwanzig Zeichen bestehen. Sie lässt sich auch länger anlegen, aber dann gibt es einen Laufzeitfehler beim Lesen der Parameter-ID im Coding.

Die Anweisung überschreibt einen schon vorhandenen Wert mit der Kennung <pid>.

Anlegen einer neuen Parameter-ID

 Data: lv_test type xfeld.

 GET PARAMETER ID 'Z_UPDATE_INVOICE' FIELD lv_test.

 if lv_test = 'X'.
   ...
 endif.
  • Durch Doppelklick auf <pid> im ABAP-Editor können nichtvorhandene Parameter als Repository-Objekt erzeugt werden.
  • Alternativ über SE80: Button "Objekt bearbeiten". Es öffnet sich ein Fenster. Hier beim Radiobutton "SET/GET-Parameter-ID" den neuen Parameter-ID eintragen und Button "Anlegen".

ParameterIDs1.JPG

Lesen eines SPA/GPA Parameters

GET PARAMETER ID <pid> FIELD <f>. 
  • Diese Anweisung stellt den unter der Kennung <pid> abgelegten Wert in die Variable <f>. Falls das System keinen Wert zu <pid> im SAP-Memory findet, wird SY-SUBRC auf 4, ansonsten auf 0 gesetzt.

Identifizieren Parameter-ID

  • Sehr häufig werden Felder eine Parameter-ID haben, die genutzt werden kann.
  • Die Parameter ID lässt sich über die technische Info identifizieren.
  • Hier möchte man z. B. die Parameter-ID identifizieren, die das Auftragsfeld (Transaktions VA03) hat.

ParameterID1.jpg


  • Klick auf das Feld und F1 und hier auf F9 bzw. ParameterID3.jpg klicken.

ParameterID2.jpg


  • Hier sieht man im Feld "Parameter-ID" den Wert "AUN".

ParameterID4.jpg

Pflege Werte von Parameter-ID in Eigene Daten

Die Pflege von Parameter-IDs bei "Eigene Daten" (Menü: System - Benutzervorgaben - Eigene Daten) kann genutzt werden, um komfortabel pro User die Parameter-ID vorzubelegen oder man nutzt es als einfache Berechtigungsabfragen, wo man nicht den klassischen Weg über Berechtigungsvergabe gehen will.

ParameterIDs2.JPG

In diesem Beispiel sind u. a. die Parameter-IDs "SCL" und "SOST" gepflegt und z. B. der Wert "G" von dem Parameter-ID "SCL" kann dann im Programmcode ausgelesen werden.

Data: lv_test type char10.

GET PARAMETER ID 'SCL' FIELD lv_test.

Web-Links