Ingo Biermann
19. Oktober 2011

SAP BI – DataSource-Erweiterung 0PERSON_ATTR sowie Anreicherung durch BAdI-Erweiterungstechnik

Dies ist ein Gastbeitrag von Christian Wiegleb.

DataSource erweitern

0Der folgende Beitrag zu SAP BI soll anhand der DataSource 0PERSON_ATTR exemplarisch aufzeigen, wie eine DataSource um zusätzliche Felder / Informationen erweitert und mit Hilfe der Business-Add-in-Erweiterungstechnik angereichert werden kann.

Zunächst muss nach Aufruf der Transaktion RSA6 (DataSource und Hierarchie nachbearbeiten) die DataSource markiert werden, welche nachbearbeitet werden soll.

In unserem Fall der Stammdatenextraktor 0PERSON_ATTR (Person).

SAP BI DataSource

DataSource markieren, die nachbearbeitet werden soll.

Metadaten ändern und anpassen

Über den Dialog „ExtraktStruktur erw.“ wird nun die Extraktstruktur HRMS_BW_IO_PERSON  der DataSource über  eine Z*-Append-Struktur um die geforderten Felder erweitert. (Informationen zur Behinderung einer Person).

Nachdem die Felder hinzugefügt wurden, müssen sie eingeblendet werden, sodass sie im BW-System sichtbar sind. Mit Hilfe des Dialogs „DataSource ändern“ werden die Metadaten der Felder – das in nachfolgender Abbildung ersichtlich wird – geändert bzw. angepasst.

SAP BI Metadaten der Felder anpassen

Metadaten der Felder anpassen.

Mit dem Speichern / Aktivieren  der  Konfiguration ist die Erweiterung und somit auch der erste Schritt erfolgreich abgeschlossen. Die DataSource 0PERSON_ATTR besitzt nun alle relevanten Felder zur Abbildung der geforderten Informationen. Ebenso wurden die Felder für angeschlossene BW-Systeme „freigeschaltet“

Als nächstes werden die zusätzlichen Felder durch die BAdI-Erweiterungstechnik angereichert. Dabei definiert ein BAdI eine Entwicklungsvorschrift und verwaltet die BAdI-Implementierungen. Zur Laufzeit hat das BAdI die Aufgabe, die benötigten Implementierungen zu „suchen“,  die Klasse zu instanziieren und die relevanten Methoden aufzurufen.

Über die Transaktion SE18 (BAdI-Builder) wird nun das BAdI RSU5_SAPI_BADI ausgewählt und eine Implementierung angelegt.

Unser E-Book zum Thema SAP Entwicklung

E-Book: SAP Entwicklung

Wir erklären Ihnen im E-Book die 3 wichtigsten Frameworks und zeigen Ihnen weitere Erfolgsbooster, die wir selbst einsetzen.

Die angelegte Klasse ZDS_0PERSON_ATTR enthält dabei das Interface IF_EX_RSU5_SAPI_BADI mit den Methoden DATA_TRANSFORM und HIER_TRANSFORM.

Die Methode DATA_TRANSFORM wird nun um folgendes Snippet erweitert:

CHECK I_DATASOURCE EQ ‘0PERSON_ATTR’.

FIELD-SYMBOLS: <PERS> TYPE HRMS_BW_IO_PERSON.

LOOP AT C_T_DATA ASSIGNING <PERS>.

SELECT SINGLE SBGRU SBPRO SBART SBFAK

FROM PA0004

INTO (<PERS>-ZZSBGRU, <PERS>-ZZBPRO, <PERS>-ZZBART, <PERS>-ZZBFAK)

WHERE PERNR = <PERS>-RFPNR

AND BEGDA LE <PERS>-BEGDA

AND ENDDA GE <PERS>-BEGDA .

ENDLOOP.

Mit dem Extraktorchecker S-API (Transaktion RSA3) kann abschließend die Implementierung getestet werden.

Ihr ABAP-Entwicklungspartner

Unser ABAP-Entwicklungspartner unterstützt Sie bei all Ihren ABAP-Projekten und steht Ihnen als langjähriger Partner stets zur Seite.

 Save as PDF

Ingo Biermann

Ingo Biermann

Als Management- und Technologieberater unterstütze ich seit mehr als 15 Jahren große und mittelständische Unternehmen in Fragen der IT-Strategie und bin unterwegs in unterschiedlichen SAP-Themen wie SAP S/4HANA, User Experience und SAP Entwicklung.

Sie haben Fragen? Kontaktieren Sie mich!



Das könnte Sie auch interessieren

Jeder kennt sie: Die REUSE-Funktionsbausteine für die ALV-Generierung in einem klassischen ABAP-Report. Oft benutzt, wenn schnell ein kleiner Report benötigt wird, um Daten auszulesen, aber auch bei komplexeren Programmen mit […]

weiterlesen

Mitarbeiter in der Basis kümmern sich heutzutage immer mehr und mehr um hochkomplexe Aufgaben, welche innovative Lösungen erfordern und damit Unternehmen weiter entwickeln. Trotzdem investieren Sie weiterhin wertvolle Zeit in […]

weiterlesen

Schreiben Sie einen Kommentar

Bitte füllen Sie alle mit * gekennzeichneten Felder aus. Ihre E-Mail Adresse wird nicht veröffentlicht.





Kontaktieren Sie uns!
Alexander Koessner-Maier
Alexander Kössner-Maier Kundenservice