Friday, 4 October 2013

Adding Allotment Holder field to Vendor Line item Display (ENHANCING BTE)


Summary:

In this documentation i am explaining how to add an additional field (USER RESPONSIBLE) to Vendor Line Item which is not in the tables BKPF,BSEC,BSED,BSEG,PAYR & BSEGC.


Go to Se11.Display the structure RFPOS
 

Click on Append Structure to append a custom structure to RFPOS




Click on New button to create new structure.



Add User Responsible field to the structure and activate it.



Come back and display the structure RFPOSX.



 


Click on Append Structure to append a custom structure to RFPOSX.





Click on New button to create new structure.



Add User Responsible field to the structure and activate it.


 


Go to SE38.

Run the report to RFPOSXEXTEND generate the structure RFPOSXEXT

 

 

 

Start the BALVBUFDEL report when you enhance the special Fields. This resets the ALV buffer.

   

   


Then go to se11.
Open the structure RFPOSXEXT.

 

You can find the User responsible field in the structure.

 




 
Create BTE 1650 (Business Transaction Event).


For this purpose, copy the sample function module SAMPLE_INTERFACE_00001650 into the customer namespace.



Go to se37

 

Copy the sample function module SAMPLE_INTERFACE_00001650

 

In the customer module, read the fields from the relevant table and transfer the values to the internal fields.


   

Sample code fetching data based on cost center.



 SELECT SINGLE * FROM prps INTO ls_prps

      WHERE posid = lv_projk.

    IF ls_prps-xstat = 'X'.

      lv_kostl = ls_prps-kostl.

      IF lv_kostl IS NOT INITIAL.

        SELECT SINGLE verak_user INTO alt_hld FROM csks

           WHERE kostl = lv_kostl.

      ENDIF.

endif.




Then activate the module in transaction FIBF.


Go to FIBF Transaction:

Go to 'Settings -> Products -> ... of a customer' and create a product. You can choose the name of the product and the description.





  



  



Set the 'Active' indicator and save.

Go to 'Settings -> P/S Modules -> ... of a customer' and include this

entry:

Event: 00001650

Product: 'Product name' –(USER)

Lnd/Appl: empty

Function module: 'Your module'(ZFI_SAMPLE_INTERFACE_00001650)






 


Output:

Go to transaction code FBL1N.Provide required credentials.
 
 Following window gets displayed.

 

 
Done! :)




No comments:

Post a Comment