Single Fiori app to display data from multiple backend systems at same time.
Let’s take an example where we need to use only single gateway in a landscape (at least for Development and Quality systems) or need to get data from different SAP backend systems and display it on FLP in Single App at the same time.
So I have configured standard Odata service to get data simultaneously from two backend systems in HUB environment.
(Same is applicable in embedded approach).
- Same SAP user, used in Gateway has to be available in backend system1 and system2.
- Odata service URL should contain ‘mo;’ keyword while setting model in ui5 app and while passing service URL in Tile configuration. (Standard Fiori apps has ‘mo’ parameter in ui5 application and tile configuration by default).
- Create 2 RFC connections from gateway system to backend system 1 and system2 respectively. Refer to create system alias in hub environment: http://scn.sap.com/docs/DOC-62040
- I have used System alias called Default pointing to system1 and Default1 pointing to system2.
- Assign both system alias to one Odata service without defaulting any (Do not tick any check box for default system alias).
I have done this with Standard App called ‘Purchase Contract Approval’ and assigned both System alias.
As shown above none of the system alias is defaulted which is why Odata will fetch data from both systems and will display in same app.
As shown above one record is from system1 which is fetched by Odata service assigned DEFAULT1 system alias and one record is from system2 as highlighted in URL.
We can further extend standard app to display system details using parameters present in URL (SAP_Origin).
E.g. we can display backend system name in master list for every record by extending standard app.
This could be “Real use of Multi Origin” and capability of Gateway for Fiori.
Hope this post will be helpful. 🙂
Thanxs for this helpful post... 🙂
thanks for the useful post ...
If no System Alias is defaulted an error message is thrown "No System Alias flagged as "Default" for Service". How do you overcome this?