Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
Former Member
0 Kudos

How to update a R3 table via portal – SOA Environment?

Here I am trying to explain an interesting scenario. We need to update user information in R3 system via portal and 3rd party will get the confirmation about
posting status.

Let’s try to establish sync communication.

  1. User can fill information about his details.
  2. Get the Confirmation that data has been updated in
    R3 table.. User created


   Now idea is that..

   1. Create A RFC Enabled Funcation module form Se37..        
     Import parameter : Information provided by 3rd Party application

      Export parameter : Confirmation message.. User id had been created.

  2. Create a Service Defication for that service ( Se37 /or SPROXY or SE80)

  3. Expose that service in SOAMANGER

  4. Expose the service in Service Registry

  5. Test form WS Navigator tool and 3rd Party application


Create Custom table, where you want to update data : SE11


Ref : Fig 1 
 

Create RFC enable Function Module : ( Transaction Se37 –SAP R3)

Import Parameters :

Ref : Fig 2

Export Parameters :

Ref : Fig 3

Source Code

FUNCTION ZRFC_USER_CREATE.

*"----------------------------------------------------------------------

*"*"Local Interface:

*"  IMPORTING

*"     VALUE(NAME) TYPE  STRING

*"     VALUE(FNAME) TYPE  STRING

*"     VALUE(LNAME) TYPE  STRING

*"     VALUE(REGIO) TYPE  STRING

*"     VALUE(LAND1) TYPE  STRING

*"  EXPORTING

*"     VALUE(MSG) TYPE  STRING

*"----------------------------------------------------------------------

Data : it_user type standard table of ZUSER_HATI,

       wa_user type ZUSER_HATI.

Data : str1 type string.

if NAME is initial.

str1 = 'Please fill user name field'.

  1. endif.

select single * from ZUSER_HATI into wa_user where NAME = NAME.

if sy-subrc eq 0.

concatenate 'The user ' NAME ' has already exists. Please choose other
one' into str1.

  1. else.

clear : wa_user.

wa_user-NAME = NAME.

wa_user-fname = fname.

wa_user-lname = lname.

wa_user-regio = regio.

wa_user-land1 = land1.

insert ZUSER_HATI from wa_user.

if sy-subrc eq 0.

concatenate 'The user ' NAME ' created successfully.' into str1.

  1. else.

concatenate 'The user ' NAME ' is not created. Technical issue!' into
str1.

  1. endif.

  1. Endif.

MSG =  str1.

  1. ENDFUNCTION.

Now RFC Enabled Function Module ( also called RFC) has been create as SAP Service

Ref : Fig 4


Now we need to
create on Service Defination for this service which will be expose in SOAMANGER
further.


Goto : Utilitiesà More Utilities--> Create Web Service à From the Function Module

Ref : Fig 5

It will open Configutaion Wizard . Provide Service Defination name different so that 3rd
Party application may not confiuse while trying to consume service( writing
some custom code) . Press “Continue”

Ref : Fig 6


Press “Continue”

Ref : Fig 7


Choose as below setting

Ref : Fig 8


Press “Complete”. Now check this configuration tab like this :

Ref : Fig 9


Change the Authontication Level as “Low”

Ref : Fig 10


Trasnport Sceurity should be low

Ref : Fig 11


Now expose the service form SOAMANAGER..


Serach your service

Goto Configuration tab and create Button

Ref : Fig 12


Check Basic Authontication

Ref : Fig 13


Press Save Button .. End point URL has been created

Ref : Fig 14

Test the service


Open Web Service Navigator

Ref : Fig 15


First provide WS
Navigator credentials and then SOAMANAGER USER and PASS

Press Next

Fill the information and press Next

Ref : Fig 16

Check the export parametes Synchonous Communication. “The userbhati created successfully.”

Ref : Fig 17

Check the R3 table entry.

Ref : Fig 18


Please note ..
you can expose this service in service Registry. So that 3rd Party
application can directly consume this.

Labels in this area