If you have a requirement to create custom outbound proxy from ECC through RFC for sending data to non-sap / sap system, then you can follow below steps:

1. Create RFC Function Module with Importing Parameters – Following points needs to be taken care while

    creating RFC FM

    a. In attributes, select “Remote-Enabled Module”

    b. Make sure name of function module does not consist of “_” or any other special characters because

        while creating wsdl, “_” are removed automatically and then name of service definition and operation

        becomes different, which creates problem later on

    b. We are using RFC FM to generate the structure automatically that is required for proxy. So if you

        have huge number of fields to be added to proxy structure with different heads, then those fields can

        be added in custom structures(one structure per head).

    d. These structures can be added as importing parameters. Make sure you do not add exporting or

        any other type of parameters, otherwise while generating proxy, it will consider as Inbound

        Synchronous proxy

ZSDGLACCOUNT.PNG

2. After activating RFC FM, Goto -> More Utilities -> Create Web Service -> From the Function Module

Create WebService.png

3. Following screen will appear to create service definition – Make sure you enter to same name as RFC

    name and press continue

Service Definition.PNG

4. Following screen will appear – Checked Map Name with FM and press continue

Map FM.PNG

5. Following screen will appear to select profile – Select PRF_DT_IF_SEC_LOW or based on your

    requirement and press continue

SOAP Appl.PNG

6. Select Package and TR, Press Continue

TR.PNG

7. Click on Complete, to get below screen of Service Definition

sd.PNG

Traverse to External View – You will see all heads are displayed under Input Tag which were mentioned as

input parameters in FM (Don’t worry about Input tag. It should be Output tag ideally, but it comes as Input tag)

external view.PNG

Go to Configuration tab to check Operation Profile – It should be Asynchronous Reliable. It would have come

as synchronous if output parameters were added to the FM.

configuration.PNG

Go to WSDL Tab and copy the URL

esdl.PNG

8. Now we will consume the proxy in ECC. Goto transaction SPROXY -> Click on create button ->

    Select Service Consumer -> Press Continue

sc.PNG

9. Select External WSDL/Schema option

ext wsdl.PNG

10. Select URL option and paste the URL copied in Step 7

11. Provide credentials, Package, TR details, and prefix. This will create service consumer and generate

     required proxy structure

sc view.PNG

Now we will have to add the logical port to consumer proxy we just generated so that it can point to correct system

12. Go to transaction SOAMANAGER, browser will open up, click on Web Service Configuration

ws config.PNG

13. Search for consumer proxy and select the consumer proxy created

soamanager sc.PNG

14. Create the Logical Port as per your requirement. In this case I have used Manual Configuration option.

      Check the ping test and it should be successful

logical port.PNG

Now all configuration is done to create custom outbound proxy. In order to test if proxy will run without errors,

please open Service consumer in ECC and execute it. Please provide Logical port created in step 14.

test sc.PNG

On executing, you will get Request tab. Again Execute and it should give successful message

test sc1.PNG

In order to test with real data and to check if it has been sent data to third party, create custom program

as below and execute it

test program.PNG

Go to SRT_MONI and you should get an entry of the triggered proxy with the data as below. Even though

status of the proxy is in error, it has been triggered successfully from ECC end, there might be problem at

receiving end.

data.PNG

This is all I wanted to share. Please let me know if there are any concerns / issues while implementing using this approach.

Thank you !!!

To report this post you need to login first.

1 Comment

You must be Logged on to comment or reply to a post.

  1. Matthew Billingham

    b. Make sure name of function module does not consist of “_” or any other special characters because

            while creating wsdl, “_” are removed automatically and then name of service definition and operation

            becomes different, which creates problem later on”

    Not true. I’ve been doing this for years, and have plenty with _ in the name.

    (0) 

Leave a Reply