Monday 23 May 2022

LO Data source enhancement using SAPI

In this blog we will discuss about LO Data source enhancement using SAPI. The scenario is same.

For a Particular Order we need to have material Status and other fields in our data flow for which Material Number is available in our datasource 2LIS_04_P_MATNR.

But before going to the implementation I want to discuss about the enhancement framework architecture which given below –

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

It is better and good practice to enhance i.e. append to communication structure instead of directly appending extract structure. It will increase the scope for reusability.

List of TCODE for filling different setup table –

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

Material Status MMSTA exists in T141 and using join with MATNR we will populate it. But before that lets go through the SMOD and CMOD concept and diagram which will help you to understand the enhancement.

The below diagram will describe how we implement the definition in customer space –

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

Now I will go step by step to implement i.e. Enhance our scenario i.e. 2LIS_04_P_MATNR enhancement –

1. Check the datasource in ROOSOURCE table to check the datasource type if it is transactional or Master data type.

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

2. Go to the LO cockpit by using LBWE transaction and check the field MMSTA exists in any of the communication system or not. in our case it is not there. Go to step 3 directly. But suppose for any other field the field exists in communication structure then follow below –

◉ A. Go to LBWE and go to maintenance, deactivate the datasource

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

◉ Clear the delta queue using RSA7.

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

◉ Add the field from the communication structure from the extract structure by dragging the required field.

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

◉ Activate the datasource.

3. When the required field is not exists in the communication structure the we need to enhance the communication structure by appending the structure. This scenario is our case and our communications structure is MCAFKO which we will enhance by appending a structure.

4. Go to se11 and put in Data Type MCAFKO. click Display.

5. Click on append structure and provide name ZMCAFKO.

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

6. Add field into MMSTA with data type into the append structure. Activate it –

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

7. Drag drop the MMSTA field into the extract structure. MC04P_0MAT.

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

8. Now we have to populate the field by enhancing the enhancement definition RSAP00001.

9. As I describe earlier you can go to SMOD to check the details of enhancement component definition of RSAP00001.

10. Before going to CMOD repeat the below steps –

◉ Delete the setup table for datasource 2LIS_04_P_MATNR if exist using LBWG Tcode. Put application 04 for our scenario Shop Floor Control. Delete the data.

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

◉ Delete outbound queue for the application component 04 using transaction LBWQ if any doc posted.
◉ Clear delta queue using Tcode RSA7 as described earlier.

11. Then go to CMOD and create a project in which the customize enhancement component. If it is already created use it.

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

12.Create an enhancement and assign it to the project.

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

13.Four Functional module will be created after this assignment.

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

14. As our datasource is of Transaction Type we will enhance EXIT_SAPLRSAP_001 component. For different datatype we will enhance different component and it is given below –

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

15. Double click on EXIT_SAPLRSAP_001 and double on Include ZXRSAU01.

16. Implement the below code. Check and activate it.

DATA : LT_DATA TYPE STANDARD TABLE OF MC04P_0MAT.

FIELD-SYMBOLS : <LS_DATA> TYPE MC04P_0MAT,
<LV_MMSTA> TYPE T141T-MMSTA.

CLEAR LT_DATA.
LT_DATA[] = C_T_DATA[].

LOOP AT LT_DATA ASSIGNING <LS_DATA>

SELECT SINGLE MMSTA INTO <LV_MMSTA> FROM T141 
WHERE MATNR = <LS_DATA>-MATNR.

IF SY-SUBRC = 0.
<LS_DATA>-MMSTA=<LV_MMSTA>.

ENDIF.

ENDLOOP.

REFRESH C_T_DATA.
c_t_data[] = lt_data[].

17. Activate the datasource.

17. Execute Tcode OLI4BW to load the Setup table.

BW (SAP Business Warehouse), SAP HANA, SAP HANA Career, SAP HANA Learning, SAP HANA Career, SAP HANA Skills, SAP HANA Jobs

18. Check the RSA3 to check the data for the datasource. New added field MMSTA will be populated.

No comments:

Post a Comment