In this document I would like to detail about Enhancing the LO Master Data Extractors.
Scenario
We have a business requirement of adding a field Production Planning Group (ZPPGRP) to the standard extractor 0MATERIAL_ATTR which is already in use in DEV.
Steps
ECC Side
1) RSA6
Double click and check the extract structure.
Double click on the Extract Structure.
2) Click on Append Structure to append the field.
Here if no append structure is created, create one and give Short Description. Here I am using the append structure ZMATNR_AP.
Here give the Component and Component type. If the field you are enhancing is a currency/quantity field you need
to give reference table and reference field in the Currency/quantity tab. Once the fields have been added Check, Save, and
Activate the extract structure.
3)You can check for the enhanced field in RSA6 again.
By default, the enhanced field will hidden, unhide it. Field only should be checked as this indicates that the
field is an enhanced one and the customer exit should be checked to fill the values.
The SAP has an enhancement RSAP001 for filling the enhanced fields. It has the following enhancement components:
exit_saplrsap_001 - for Transaction Data.
exit_saplrsap_002 - for Master Data Attributes/Texts
exit_saplrsap_004 – for Hierachies.
Here we will be using EXIT_SAPLRSAP_002.
Go to se37 give this exit and display/change mode.
Go into the Include
Give the code in the tab Source Code.
Check, Save, and Activate.
Now you can check the DataSource in RSA3.
BI Side
1) Go to RSA1--> DataSources and Select yours, Context Menu Replicate MetaData.
Once the replication is successful, create and infopackage and fetch the records to PSA.
Here I will be using the already available InfoPackage.
2) Once this is successful create an InfoObject for the appended field.
Now add this as an attribute to the InfoObject 0Material.
Here it is required that the attribute be a navigational attribute. For this, I have unchecked ‘Attribute Only’ flag while creating the InfoObject ZZPPGRP and have switched on the navigation attribute while adding this to the InfoObject 0Material.
Now while activating the 0Material, in my case, the following screen pops up indicating that the transformations have become inactive.
For making an InfoObject as a master data bearing one we need to select the InfoArea in which it has to be contained and context menu ‘Insert Characteristics as an InfoProvider’. Give 0Material here.
Now create a transformation and DTP between the DataSource and the InfoObject. In my case, I have activated the inactive transformation and DTP.
Execute the DTP and fetch the records to the InfoObject. Check the data in the enhanced field.
Hope this has been helpful.