External Interface (XIF) Setup
Your business requirement is to transfer the data created/modified say a product, a BP or an individual object (vehicle, equipment etc) from one CRM system to another CRM (or non-SAP) system, automatically.
Example: Products created in development system should automatically get replicated to test/quality environment.
In case of SAP CRM and SAP ECC integrated scenario, this can be achieved by activating delta download feature provided by CRM Middleware. If this is not the case, then XIF adapters can be used to achieve the same.
There are 2 scenarios involved here:
- Outbound direction (to push the data from the system, so that other system can consume it)
- Inbound direction (to pull the data into the system)
This means that using XIF adapters, it is possible to import/replicate the data which is already present in some other system (SAP or non-SAP) into SAP CRM or to push the data from the current SAP CRM system into another system (SAP or non-SAP) automatically.
To check whether XIF feature is supported for a particular application (Inbound/Outbound), you can refer the below customizing path:
SPRO–>IMG–>Customer Relationship Management–>CRM–>Middleware and Related Components–>Exchanging
Data With External Components–>XIF Adapter Setup–>Overview
You can also go to transaction: SXDA and then navigate to, Goto–>DX Program Library and check for the registered programs to know the function module, documentation or the test report, to test the scenario.
For example, CRMXIF_PRODUCT_MATERIAL_SAVE is the FM for Inbound, for object PRODUCT (BUS1178). And you can use the report: CRMXIF_PRODUCT_MATERIAL_TEST to test Outbound scenario.
Setting up XIF for Inbound/Outbound is very simple and it hardly takes about 30 minutes, if necessary authorizations are in place.
I will take an example of automatically replicating vehicle data (individual object with object family 0601) from one client (558) to another client (800) of same CRM system (Q0C), for demonstration purpose. But please note that the same set up can be used to transfer data from one CRM system to another SAP or non-SAP system.
In below demonstration, System Q0CCLNT558 is a Source System (Outbound direction) and System Q0CCLNT800 is a Destination Sytem (Inbound direction), so that vehicles created in Q0CCLNT558 automatically gets transferred to Q0CCLNT800, without any manual intervention.
Below are the steps involved.
1) Define RFC Connections
This has to be done in both Source and Destination Systems.
In source system, you need to define an RFC connection for target system and vice versa.That is, in Q0CCLNT558 define an RFC connection for Q0CCLNT800 and vice versa.
This can be done via transaction SM59, ABAP Connections, use Create button. If there exists, already an RFC connection for destination, then no need to create it again.
But make sure that RFC connection works fine using button ‘Connection Test’, before you proceed further.
2) Ports in IDoc processing
This has to done only in the source system, in this case Q0CCLNT558.
Check using transaction WE21, under Transactional RFC, whether a port (example: A000000001) already exists for your RFC destination (Q0CCLNT800)? If not, then you need to create a port using Create button for Transactional RFC.Choose ‘Generate Port Name’ and in the next screen provide description and RFC Destination (Q0CCLNT800).
3) Generate/Maintain Partner Profile
This can be done via transaction WE20, under Partner Type LS (Logical System) and has to be done in both the systems.If there exists already a Partner Profile, no need to create once again.
In source system (Q0CCLNT558), there has to be an entry for destination system (Q0CCLNT800) under Partner Type LS. And for this Partner Number, add an entry under Outbound Parameters using ‘Create outbound parameter’ button as below:
Message Type = CRMXIF_PRODUCT_INDOBJ_SAVE
Maintain below values under the tab ‘Outbound Options’:
Receiver Port = Choose a port corresponding to destination (in this case port for Q0CCLNT800), which was created in
Choose ‘Transfer IDoc Immediately’
Basic Type = CRMXIF_PRODUCT_INDOBJ_SAVE01
In destination system (Q0CCLNT800), there has to be an entry for source system (Q0CCLNT558) under Partner Type LS. And for this Partner Number, add an entry under Inbound Parameters using ‘Create inbound parameter’ button as below:
Message Type = CRMXIF_PRODUCT_INDOBJ_SAVE
Maintain below values under the tab ‘Inbound Options’:
Process code = APLI
Choose ‘Trigger Immediately’
4) Site Creation and Subscription
This has to be done in Source System alone and can be done via transaction SMOEAC.
In Admin Console, choose Object Type: Site, click on Display Objects.Right click on Sites and choose Create.
Provide Name and Description.
Choose Type as ‘External Interface for IDocs’.
Click on Site Attributes and maintain below details:
EDI Partner Number: <RFC-Destination of target system> (Q0CCLNT800)
EDI Partner Type : LS
Using the same transaction, you can create Subscription for Publication: Product Individual Objects via Object Family (MESG) and give criteria value as below:
PRODUCT_INDOBJ_ROOT OBJECT_FAMILY EQ D 0601
Assign the subscription to the site created above.
Replication Object involved here is PRODUCT_INDOBJ.
5) Assign Site and BDoc Type to Interface Type
This has to be done only in the source system and using transaction CRMXIF_C1.
Please note that, all the above steps can be found under the below customizing path as well :
SPRO–>IMG–>Customer Relationship Management–>CRM Middleware and Related Components–>Exchanging
Data With External Components–>XIF Adapter Setup–>Outbound Direction (and Inbound Direction)
You can monitor the IDocs using transaction WE05 and view the detailed data using transaction WE19.
With above setup in place, vehicles created in Q0CCLNT558 automatically gets replicated to Q0CCLNT800.
What you need to make sure here is that basic settings like product category etc. exists in both the system,
otherwise object creation in target system would not be successful.
Similar set up can be done for automatic replication of order, BP from one system to another or from one client to another.
You can also use this XIF adapter together with LSMW (Legacy System Migration Workbench), in order to
import the data present in a flat file, to generate the IDocs first and then to save them in CRM system.
Hope you find this blog useful 🙂