Sie sind auf Seite 1von 11

Scenario on RFC to SOAP

By Viswanadh, PI Competency Team, Yash Technologies


In this blog, we will discuss on how to design and configure a scenario to use sender RFC adapter
and receiver SOAP adapter.

RFC adapter in XI Adapter Engine supports Secure Network Communications (SNC). It is used to get
connected to SAP R/3 system, used for synchronous communications and receive RFC messages
when triggered in SAP R/3 System. SNC protects the data communication paths between the various
components of the SAP System.
RFC adapter converts the RFC data into RFC XML (XML message format) and send it Integration
engine for further processing using the pipe line steps.
SOAP adapter in XI Adapter Engine is used to exchange SOAP message between Integration server
and Web service servers. Though you can specify security settings to be used to sign/verify the
message to add security to the message exchange, scenario is developed selecting HTTP as
transport protocol and SOAP 1.1 as message protocol.
The scenario in this posting is to trigger RFC message to XI that will send SOAP message to Web
Service server to execute its method like sending a SMS to remote mobile and gets the response
message and passes it to source R/3 System.
Find below the step-by-step procedure to achieve this scenario:
Development in R/3 System:
a. RFC is created at the R/3 side with the following parameter

Designing activities in Integration Repository:
1. Enable the option import of RFC/IDOC permitted of Software component version to
import RFC into XI as illustrated in below:

No need of Creating Objects for Outbound Interface when we import the RFC from R/3 system, we
get the relevant Data Type, Message Type and Message Interface along with it.
2. In this scenario we are using method SendSMSToIndia from Free Web Service
ofwebservicex. http://www.webservicex.net/WS/WSDetails.aspx?WSID=59&CATID=4
So, the scenario has been made interesting which would send an SMS to a remote mobile.
The SendSMSToIndia Method sends the SMS to Given Mobile Number as Input parameters
SendSMSToIndia Method
Input parameters:
Mobile Number, FromEmailAddress, Message
Output information:
FromEmailAddress, Mobile Number, Provider, State, Status
3. SOAP Connection parameters would be as follows:
Target URL : http://www.webservicex.net/SendSMS.asmx?WSDL
SOAP Action: http://www.webserviceX.NET/SendSMSToIndia
Inbound Data Type
For Inbound data type, download the WSDL file
SAVE as SendSMS.wsdl and create a new External Definition using the SendSMS.wsdl WSDL File

4. Create Outbound Message Interface

5. Create Inbound Message Interface

6. Create Message Mapping to convert RFC structure to Web Service Request

7. Create another Message Mapping to convert Web service Response to RFC Response

8. Create Interface Mapping

Save the objects and activate them

Configuration activities in Integration Directory:
1. Configure Sender RFC communication channel

Note: As soon as you create Sender RFC communication channel, save and activate it.
Immediately now create a RFC destination in R/3 System of type TCP/IP with server registered
program as mentioned in this communication channel against Program ID.
Remember first activate then create RFC destination in R/3 system.
2. Configure Receiver SOAP communication Channel.

3. Configure sender agreement

4. Configure receiver agreement

5. Configure Interface determination

6. Configure Receiver Determination

7. Save them and activate.
Testing the scenario:
1. Run the Function Module in SE37 in R/3 System which will send RFC message to XI

Using RFC sender adapter the message is converted to RFC XML and then routed to
Integration server for Receiver determination, Mapping and routing to SOAP adapter in adapter
engine.
SOAP adapter sends SOAP message to web service method which will execute to send a
message to remote Mobile in this case.
Response message is sent to XI and there after it retraces to RFC which would be waiting for
the response. There by it is going to be synchronous processing of the message.