Skip to Content
Author's profile photo Goutham Nagaraj Naidu

All About System Alias and Routing of Requests in SAP NetWeaver Gateway

Recently I have been answering queries around the system alias configuration in SAP NetWeaver Gateway, I thought I will share information on the same in this blog.

Prerequisite:

You just have to know the basics of developing OData services using SAP NetWeaver Gateway.

This blog does not cover web service part of the System alias.

System Alias is the wrapper around the RFC_Destination + the information related to routing of requests which is created using transaction code SPRO in Gateway HUB system (IWFND). Here is the navigation path:

SPRO -> SAP Reference IMG -> SAP Netweaver -> Gateway -> OData Channel -> Configuration -> Connection Settings

-> SAP NetWeaver Gateway to SAP System -> Manage SAP System Alias

/wp-content/uploads/2013/05/snagsystemalis_222556.png

SAP NetWeaver Gateway System Alias has the following properties:

SAP System Alias: Name

Description: <Enter the description>

Local GW: N/A

Local App: Check box that specifies the deployment of component IWBEP .

RFC Destination: RFC destination you created using the transaction code SM59

Software Version: Default/which ever applicable

SystemID: Not Required

Client: Not Required

WS provider Sytem: Not Required

Deployment Examples and its System alias configurations:

/wp-content/uploads/2013/05/localapp2_222584.jpg

Example 1: Local APP

In this case (Example 1: Local APP), System alias configuration should have Local App flag set as IWFND and IWBEP are together and RFC destination should point to SAP back-end. RFC destination will be used by BEP data provider to call the RFC from SAP Backend.

Now how do you get the RFC destination in your Data provider?

Follow the code below

DATA lo_destination_finder TYPE REF TO /iwbep/if_destin_finder.

DATA lo_dp_facade TYPE REF TO /iwbep/if_mgw_dp_int_facade.

DATA lv_destination TYPE rfcdest.

* Get RFC destination

lo_dp_facade         ?= /iwbep/if_mgw_conv_srv_runtime~get_dp_facade( ).

lo_destination_finder = lo_dp_facade->get_destination_finder( ).

lv_destination        = lo_destination_finder->get_rfc_destination_via_rout( ).

Remoteapp2.jpg

Example 2:Remote APP  

In this case (Example  2: Remote App), System alias configuration should not have Local App flag set, as IWFND and IWBEP are in different SAP systems and RFC destination should point to back-end where IWBEP is present which is used by IWFND to route the calls.

Here IWBEP data provider and metadata provider classes can use the local RFC Function Modules as well.

SAPBS2.jpg

Example 3: Local App ,all the components in SAP Business Suite/Backend


In this case (Example 3: Local APP), system alias configuration should have Local App flag set as IWFND and IWBEP are together and RFC destination can be empty as all the components are in the SAP back-end.

System Alias in Service Builder:


There is another system alias which is used by Service Builder’s service maintenance node which is used only in design time for registering and maintaining  the service in the Gateway HUB from IWBEP(Service Builder) system .

/wp-content/uploads/2013/05/snaggsm2_222578.png

System alias in this case should be created/configured in the system where IWBEP is installed i.e using transaction code SPRO. Navigation path below:

SAP Reference IMG -> SAP Netweaver -> Gateway Service Enablement -> Connection Settings to SAP Netweaver Gateway -> SAP NetWeaver Gateway Settings

/wp-content/uploads/2013/05/snaggservicemaintance_222579.png

System Alias here points to the HUB system.

It has the following properties

Destination System: Destination system name

Client

System alias name

RFC Destination

RFC Destination here is used to navigate from IWBEP(Service Builder) system to Gateway HUB System(IWFND) when the Register or Maintain or Error Log Button is clicked in the Service Maintenance node of Service Builder

SM03.png

Once the Maintain button is clicked,control goes to the corresponding IWFND system’s /iwfnd/maint_service

screen

SM02.png

And that is all!! Feel free to contact me if you have any queries:)

Thanks and Best Regards,

Goutham

Assigned Tags

      19 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Sascha Wenninger
      Sascha Wenninger

      Hi Goutham,

       

      Thank you very much for the clear and concise explanation of the different options. It really helped me to understand this a lot better.

       

      Looking forward to the next blog of yours!

       

      Sascha

      Author's profile photo Avishek Gorai
      Avishek Gorai

      Thanks a lot for this blog Goutham, clarifies things further.

      Author's profile photo Syambabu Allu
      Syambabu Allu

      Excellent Goutham.

       

      Cheers,

      Syam

      Author's profile photo Aakash Raj
      Aakash Raj

      Nicely put!

      Author's profile photo Prathik Nagaraj
      Prathik Nagaraj

      Nice blog....simple and easy to understand

      Author's profile photo Andre Fischer
      Andre Fischer

      Hi Goutham,

      very well and comprehensive explained.

      Best Regards,

      Andre

      Author's profile photo Former Member
      Former Member

      Hi Goutham,

               Very well explained. Looking forward to many more blogs from you!

      Regards,

      Ravi Chaudhary

      Author's profile photo Former Member
      Former Member

      Nice job, This helped a lot.  Keep up the good work!!!

      found more information for GW_HUB to use trusted RFC's to ECC.

      USE Transaction /iwfnd/maint_service to change alias from LOCAL to the Trusted RFC that points to the ECC backend system.  Works well.

       

      Chad

      Author's profile photo Srinivas Rao
      Srinivas Rao

      Hello Goutham Nagaraj Naidu...

       

        It's awesome blog.. so informative too..

        Can you please help me in resolving my issue.. I have followed all the steps you have mentioned.. but i am getting error in /IWFND/GW_CLIENT transaction when I consume service... My aim is to get SAP_Origin parameter in the response as i am trying for MOC( Multiple Origin Composition )..

       

        The error is "No service found for namespace /IWFND/, name "..

       

        Please find the screenshot attached.. Odata Error.PNG

      Author's profile photo Paul Lauwers
      Paul Lauwers

      Hi Goutham,

       

      We are setting up a central Hub with IWBEP installed in the backend systems. We have three environments in the transport landscape (Development, Quality, Production). When I set up the Hub Alias in the backend systems do I use a general Alias name (e.g. GWHUB) or do I use an environment specific name (e.g. DWG for Test, QGW for Quality and PGW for Production). Maybe it doesn't matter, but I ask this with regard to transports.

       

      Regards, Paul Lauwers.

      Author's profile photo Sahir Nidagundi
      Sahir Nidagundi

      Thanks for sharing the useful tips.

       

      With regards,

      Sahir.

      Author's profile photo Vishnu Pankajakshan Panicker
      Vishnu Pankajakshan Panicker

      Excellent document Gautham....solved most of the confusions i had...

      Author's profile photo Former Member
      Former Member

      Hello,

       

      Please guide me for SAP Netweaver 7.40.

      As in SAP Netweaver 7.40 the software component SAP_GWFND gets installed on SAP Netweaver gateway server which composite the function of IW_FND,GW_CORE and IW_BEP.

      So how will we go for system alias and routing of request.?

       

      Regards,

      Akshay

      Author's profile photo Ekansh Saxena
      Ekansh Saxena

      Hi Akshay,

       

      The configuration of system alias depends on deployment scenario in your landscape. Once you have decided the deployment scenario, you can go with the config as described in the above post.

      One thing that you need to consider is even the NW 7.4 contains all three components bundled in SAP_GWFND. You can still use it as Central Hub and the system alias config remains same. The same thing also applies for embedded scenario.

      For various deployment scenario Book Analogy to understand Central Hub and Embedded Scenario

       

      Regards,

      Ekansh

      Author's profile photo Former Member
      Former Member

      Hi Goutham,

       

      Thanks for the blog. It really helped in the understanding on aliases and their configuration. I have a question which I was hoping you could help with.

       

      I have used your sample code to retrieve the destination. This code works fine when executing the URL from the Gateway server. However, I have connected my Gateway to SMP. Here the system alias information is not being populated.

       

      On debugging, I noticed that neither the destination finder class nor the model class has retrieved the information. These structures are being populated when run through Gateway.

       

      Could you please let me know why this is happening? And if there is any way that I can get around this other than fetching the system alias from the customizing table directly based on the service ID?

       

      Best regards,

      Prem

      Author's profile photo Former Member
      Former Member

      Hello Gautam, thanks for the information here. For some reason my user profile does not let me add a service on the gateway builder. do you have some thoughts to it ?

      Author's profile photo Former Member
      Former Member

      Great blog Goutham! can we have multiple clients/System Aliases in gateway builder?

       

      Thanks

      David

      Author's profile photo Ekansh Saxena
      Ekansh Saxena

      Hi David,

       

      In service builder transaction, the system aliases are listed for registering the service on the Hub system. If you have multiple gateway hub systems in your landscape, you can definitely maintain those as explained in System Alias in Service Builder section of this blog. This way those aliases will get listed in your service builder transaction.

      Let me know if I get your query in a wrong way.

       

      Regards,

      Ekansh

      Author's profile photo Former Member
      Former Member

      Thanks Ekansh! it is possible to have multiple system aliases pointing to multiple clients?

       

      Regards,

      David