XI/PI: Data type enhancements (standard Business Partner)
These of course may not always suit all our needs for at least a few reasons:
– they may include too many fields
– they may not include some additional fields that we need to pass along with the standard message
To enable developers to add some additional fields to standard SAP messages
SAP developed a concept of Data Type Enhancements which I will try to show in this weblog.
With many new SAP application we can maintain a Business Partner (via transaction BP).
In standard when we activate the necassary function modules we can create a proxy output
out of every change done to the business partner. The message that is used is called: BusinessPartner
and it comes along with a Software Component called SAP ABA (which can be downloaded from http://service.sap.com/swdc).
I will try to extend the standard structure so it will include one additional field which I will fill during the Business Parter update.
– at first we need to create a new Enhanced Data Type (in our own Software Component)
that will have the SAP standard Data Type as a reference.
– then we need to create our own structure (in the Enhancement Definition tab)
that will be added to the SAP’s Data Type
– when we finish creating our new data type we can see the whole structure in the Enhanced Data Type tab
The next steps will be performed from the SAP Application system (ERP, AII etc.)
– at first we need to generate the Enhanced Data Type (from our own Software Component) via transaction SPROXY
– the new structure will be created as an append structure to the original SAP’s structure.
This will allow us to use it later on in the standard proxy output.
To send a business partner via a proxy we need to make one of the function modules that allows to send it active.
We can do it via transaction – CRMC_BUT_CALL_FU. Let’s add module ZBUPA_OUTBOUND_MAIN over there.
Event – BPOUT
Object – BUPA Business Partner
Func.Name – ZBUPA_OUTBOUND_MAIN
Call – X
– now we can copy standard FM BUPA_OUTBOUND_MAIN to ZBUPA_OUTBOUND_MAIN
and add a few lines that will fill the new field NEWHEADER with some constant value (for test purposes).
You can add the code just before the function call ABA_BUPA_CALL_PROXY (which sends the message to the XI server).
The last step is to change one of your Business Partners via Transaction BP.
If you succeed you should see a similar output in transaction SXI_MONITOR
on the SAP Application system (and also XI if you configured the routing properly).
I hope this blog showed you that it’s quite easy to extend a SAP standard proxy message
as very often you don’t need to build your own proxies for sending standard data
from your SAP Application system – all you need to do is to enhance the already provided solutions a little bit.