Ansicht
Dokumentation

CL_EXM_IM_WRBX_ENTITY - Beispiel-Implementierung zur BAdI-Definition WRBX_ENTITY

CL_EXM_IM_WRBX_ENTITY - Beispiel-Implementierung zur BAdI-Definition WRBX_ENTITY

SUBST_MERGE_LIST - merge external lists to one complete list with #if... logic for R3up   RFUMSV00 - Advance Return for Tax on Sales/Purchases  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

Funktionalität

Diese Klasse CL_EXM_IM_WRBX_ENTITY zeigt die Implementierung der Factorymethoden des BAdIs WRBX_ENTITY.

Als Factorymethode wird dabei eine Methode bezeichnet, die ein Objekt erzeugt und an den Aufrufer der Methode zurückgibt. Wie schon in der Dokumentation zum BAdI erläutert, müssen vom Entitätstyp abhängige Klassen erstellt werden, die die notwendigen Daten aus den zum Entitätstyp zugehörigen Tabellen bereitstellt. Zumeist sind diese Daten ein Schlüsselfeld und ein Beschreibungsfeld einer Datenbanktabelle.

Das Implementierungsbeispiel zeigt die Implementierung für die Entität "Filiale". Aus technischer Sicht ist ein Objekt zum Entitätstyp "Filiale" ein Datenbankeintrag auf der Tabelle T001W, dessen Tabellenfeld VLFKZ den Wert A enthält.

Die Klassenimplementierung für "Filiale" ist die gleiche, wie sie bereits von SAP für den Entitätstyp "Filiale" (mit dem zugehörige Schlüssel C_ENTITY_TYPE_SITE_STORE, Definition im Interface IF_WRB_CONSTANTS) implementiert ist.

Die Beispielimplementierung des BAdIs zeigt, wie die Methoden implementiert werden. Die Klassenimplementierungen können je nach Entitätstyp variieren.

Beziehungen

Zur Entität "Filiale" können folgende Klassen verwendet werden:

  • Aus dem iView "Meine<Entitäten>" soll ein entitätstypspezifisches iView "MeineFilialen" erstellt werden. Die für die Backendfunktionen geeignete Klasse ist CL_WRB_MYSITE, da sie das Interface IF_WRB_MYENTITYimplementiert und die Daten von Tabelle T001Wliest. Um die Klasse für Filialen zu nutzen, muss der Konstruktor mit dem Wert IF_WRB_CONSTANTS=>C_SITE_TYPE_STORE für den Parameter PI_SITE_TYPEaufgerufen werden.
Aufgabe der BAdI-Methode CREATE_MYENTITY_INSTANCE ist es, eine Instanz der Klasse CL_WRB_MYSITE zurückzugeben. Die so erzeugte Objektinstanz wird von der Factoryklasse CL_WRB_ENTITY_FACTORY zurückgeliefert und in den RFC-fähigen Funktionsbausteinen der Funktionsgruppe WRB_ENTITY benötigt.
  • Aus dem iView "<Entitäts>Einzelsuche" soll ein entitätstypspezifisches iView "FilialEinzelsuche" erstellt werden. Die für die Backendfunktionen geeignete Klasse ist CL_WRB_SITE_SEARCH, da Sie das Interface IF_WRB_ENTITY_SEARCHimplementiert und die Daten von Tabelle T001Wliest. Um die Klasse für Filialen zu nutzen, muss der Konstruktor mit dem Wert IF_WRB_CONSTANTS=>C_SITE_TYPE_STORE für den Parameter PI_SITE_TYPE aufgerufen werden.
Aufgabe der BAdI-Methode CREATE_ENTITY_SEARCH_INSTANCE ist es, eine Instanz der Klasse CL_WRB_SITE_SEARCH zurückzugeben. Die so erzeugte Objektinstanz wird von der Factoryklasse CL_WRB_ENTITY_FACTORY zurückgeliefert und wird in den RFC-fähigen Funktionsbausteinen der Funktionsgruppe WRB_ENTITY benötigt.

Beispiel

Hinweise

Weiterführende Informationen

Weitere Informationen finden Sie in der technischen Dokumentation der Bausteine in Funktionsgruppe WRB_ENTITY, der Dokumentation des BAdIs WRBX_ENTITY sowie der Dokumentation der verwendeten Interfaces und Klassen.






rdisp/max_wprun_time - Maximum work process run time   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 3826 Date: 20240425 Time: 111802     sap01-206 ( 84 ms )