cancel
Showing results for 
Search instead for 
Did you mean: 

Creating RFC function module , Its Web services in SAP & Testing using SOAPUI.

Introduction:  

By leveraging RFC, organizations can enable robust data exchange and process integration across different SAP and non-SAP systems. 

However, creating RFCs is only half the battle. To harness their full potential, these RFCs often need to be exposed as web services, providing a standardized way for external applications to interact with SAP functionalities. This is where the power of web services comes into play, bridging diverse systems and enabling seamless, real-time data transactions. 

But how can you ensure that these web services are functioning correctly? This is where testing tools like SOAPUI become invaluable. SOAPUI allows developers and testers to validate the performance, security, and reliability of web services before they go live, ensuring smooth and error-free operations. 

In this blog post, we will dive deep into the process of creating RFCs in SAP, transforming them into web services, and rigorously testing them using SOAPUI. Whether you are a seasoned SAP professional or a newcomer looking to enhance your integration skills, this guide will provide you with the insights and tools needed to master SAP web services and ensure their optimal performance. 

  STEPS 

  1. Create a function group in SE80. 

Pramod_Hiremath_0-1716031664471.png

 2.Provide the package name & click on SAVE.


Pramod_Hiremath_1-1716031664473.png

3.Activate the FUNCTION GROUP. 

Pramod_Hiremath_2-1716031664474.png

4.Execute the T-code SE37 & Create a FUNCTION MODULE.  

Pramod_Hiremath_3-1716031664475.png 

  1.  Give the Function group name, short description & click on SAVE. 

Pramod_Hiremath_4-1716031664475.png

  1. Click on the Radio button REMOTE ENABLED MODULE  

Pramod_Hiremath_5-1716031664478.png

  1. Take some importing parameters in order to receive the values as per the requirement. 

Pramod_Hiremath_6-1716031664480.png

  1. Take one exporting parameter to return the message if the value is not found. 

Pramod_Hiremath_7-1716031664481.png

 

  1. Take internal tables in order to store multiple data. Here, Gt_mara is referring to mara structure having some fields like MATNR, ERSDA &  Gt_marc  is referring to marc structure having some fields like MATNR, PLIFZ. 

Pramod_Hiremath_8-1716031664482.png 

  1. You can write your own logic to test the RFC FM, whether it returns some value or not. 

Pramod_Hiremath_9-1716031664484.png

  1. Now, check the result by providing input values from MARA & MARC 

Pramod_Hiremath_10-1716031664486.png

 

Pramod_Hiremath_11-1716031664487.png

 

Pramod_Hiremath_12-1716031664488.png

 

 Pramod_Hiremath_13-1716031664488.png

12.now, create its webservice from function module. 

Pramod_Hiremath_14-1716031664489.png

 13. Provide the service definition & description. 

Pramod_Hiremath_15-1716031664491.png

 

Pramod_Hiremath_16-1716031664492.png

 

Pramod_Hiremath_17-1716031664493.png

 

Pramod_Hiremath_18-1716031664495.png

 

Pramod_Hiremath_19-1716031664497.png

14. Below we can see the service definition properties. And activate it. Pramod_Hiremath_20-1716031664498.png 

  1.  Execute the T-code SOAMANAGER in S4HANA.   

Pramod_Hiremath_21-1716031664499.png

Click on to the Webpages. 

16.Provide your Hana-user id & Password. 

Pramod_Hiremath_22-1716031664502.png

 

 17.Click on web service configuration. 

Pramod_Hiremath_23-1716031664505.png

18.Choose the object type as Object Name and pass the correct service definition name. If the service definition exists, then we can be able to see ‘entry found’ otherwise not found. 

 

Pramod_Hiremath_24-1716031664506.png

 

Pramod_Hiremath_25-1716031664508.png 

19.Now, Click on Internal Name --->Click on Create service.  

Pramod_Hiremath_27-1716032478137.png


20.
Fill up the details like service & binding name, Provide security, SOAP protocol & Operation settings. 

Pramod_Hiremath_28-1716032502249.png

Pramod_Hiremath_29-1716032536645.png

 21.Fill up the provide security 

Pramod_Hiremath_30-1716032620620.png


Pramod_Hiremath_32-1716032702986.png

 

 

Pramod_Hiremath_31-1716032696645.png

 

 22.No need to fill out SOAP protocol details so, click on next. In operation settings click on finish.  

Pramod_Hiremath_33-1716032753539.png


23.Then Choose the service & activated--> below interface will open--> click on save .

 

Pramod_Hiremath_34-1716032793811.png

24.Select the service & click on republish 

Pramod_Hiremath_35-1716032885383.png 

 

  1. Click on save  
    Pramod_Hiremath_36-1716032914591.png

     

    26. Don’t provide any details, click on OK. 
    Pramod_Hiremath_37-1716032951122.png

    27. Click on the below Execute button under the WSDL generation.  Pramod_Hiremath_38-1716033030943.png

 28. Press CTRL+S and save the file in WSDL format.  

Pramod_Hiremath_39-1716033091308.png

 

Pramod_Hiremath_40-1716033197666.png


29. Now, we are ready to test the service in SOAPUI. S
o, let's download the SOAPUI.

Notes:

 how to Download the SOAPUI software & implement it. 

  •  Go to SOAPUI.ORG website and download SOAPUI open source. 

Pramod_Hiremath_41-1716033275587.png

 

Pramod_Hiremath_42-1716033403570.png

 

  • Below is the interface of how the SoapUI looks like. can start doing the API testcases.  
  • Click on soap-->new soap project--> give a project name -->choose the WSDL which we have downloaded -->ok 

Pramod_Hiremath_43-1716033423652.png

 

Pramod_Hiremath_44-1716033479047.png

Pramod_Hiremath_45-1716033511356.png

 

  • Click upon request1 then we can see the details in XML file. 

Pramod_Hiremath_46-1716033530496.png

 

  • To access the data, provide the authorization. Click on add new authorization. 

Pramod_Hiremath_47-1716033585666.png

 

  • Finally, we can see the result as shown below. For success the status code will be 200.  

Pramod_Hiremath_26-1716031664511.png

 

 

Accepted Solutions (0)

Answers (1)

Answers (1)

Sandra_Rossi
Active Contributor
0 Kudos

Unfortunately, you have posted it in Q&A, not in Blogs.

Go there: https://community.sap.com/t5/technology-blogs-by-members/bg-p/technology-blog-members