Implementation of BADI – Enhancing 0ASSET_ATTR
Generally SAP user exit RSAP001 is used to add any additional fields to the Standard BW Extractors which includes both Master Data and Transaction Data extractors.
But as per SAP’s recommendation BADI’s are more efficient way to enhance the standard extractors than using the exit RSAP001
Enhancing a Standard DataSource using BADI has the following advantage over using the exit RSAP001:
- BADI can have multiple implementations (only if Multiple use flag is set for the Badi) so several developers can work simultaneously on different implementations and different logics.
RSU5_SAPI_BADI is used to enhance the standard BI DataSources
Below are the steps to be followed:
- Enhance the Extract Structure
- Create the Append Structure
- Once Appended, activate the structure,
The fields would be available in the extract structure now.
- Activate the DS. Make sure these fields are available in the DS now
- Filling the data to enhanced fields
- In SE24, create the class
- In the interfaces tab, use the following BADI : IF_EX_RSU5_SAPI_BADI
- In the Methods tab, double click on the Data Transformation
- The ABAP editor will open up & here write the code as per your requirement. Sample code snippet as below
- Goto SE 18 & for the BADI definition RSU5_SAPI_BADI create the implementation of the BADI
- In the Interface tab, ensure to put the name of the class that you had created earlier.
- Testing through RSA3
- Go to t/x RSA3 & execute the datasource 0ASSET_ATTR & check for the data on the enhanced fields.