F4-Wertehilfe im Variablenbild (Query, Workbook etc.)

Die Wertehilfe im Variablenbildschirm einer Query oder im BEx Analyzer modifizieren zu können ist eine Anforderung die mich bereits seit dem Ramp Up des aktuellen Releases im Jahre 2006 verfolgt. Nun ist das endlich möglich durch die Verwendung eines neuen BAdIs (RSR_VARIABLE_F4_RESTRICT_BADI). Damit kann auf dem Variablenbild im BEx Analyzer und im BEx Web, sowie in Dropdown-Boxen in Webtemplates die verfügbare Wertemenge eingeschränkt werden. Da zum Zeitpunkt des Aufrufs alle übrigen Variablenwerte verfügbar sind können auch voneinander abhängige Einschränkungen umgesetzt werden. Beispielsweise können also zu einer gewählten Region die zugehörigen Länder angezeigt werden. Diese neue Funktionalität wird offiziell zwar erst ab Version 7 EhP 2 unterstützt, mit einem kleinen Trick funktioniert das aber auch bereits ab Version 7 EhP 1 (7.01).

Ersetzt man in der Methode IF_RSR_VAR_RUNTIME~GET_F4_PARAMETERS der Klasse CL_RSR_VAR, bzw. CL_RSR_VAR_RUNTIME in Zeile 40, bzw. 34 den Ausdruck „IF sy-saprl > ‚701‘.“ durch „IF sy-saprl >= ‚701‘.“ so wird der BAdI angesprochen. Die Nutzung erfolgt selbstverständlich auf eigenes Risiko, da dieses Feature noch nicht von der SAP offiziell freigegeben wurde.

Eine Beispiel-Implementierung ist sowohl für eine flache Werteliste als auch eine hierarchische Wertemenge im BW-System in der Klasse CL_RSR_VAR_F4_RESTRICT_EXAMPLE verfügbar.



Durch einen geeigneten Filter lässt sich der BAdI gezielt für einzelne Infoobjekte verwenden.


Die Klassenmethoden verfügen über eine definierte Schnittstelle die ähnlich derer im BEx Variablenexit aufgebaut ist:

I_VNAM (techn. Name der Variable),
I_IOBJNM (techn. Name des Infoobjekts),
I_T_COMPID (ID der verwendeten Queries),
I_T_VAR_RANGE (Variablenselektion),
C_T_RANGE (Die Wertemenge für Variablenselektion),
C_INFOPROV (Infoprovider),
C_F4_MODE (Wertehilfe-Modus: M=Stammdaten; A=Attribut; D=Dimensionstabelle des Infoproviders)

So lässt sich die Verwendung des BAdI auch gezielt auf einzelne Infoprovider, Queries, Variablen einschränken.

Getagged mit: , ,

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

*

*