Dear community,
Some time ago
andre.fischer wrote a blog post called
Support of multiple backend systems – How to use Multi Origin Composition and Routing that explains a cool Netweaver Gateway functionality regarding oData.
Multiple Origin Composition (MOC) is the ability to collect data from different back-end systems, aggregate them in one single service and updating different back-end systems while using the same user. Check note
2512090 for more details.
I wanted to test in a real fiori app and I decided to use Manage Bank Accounts ( ID F1366A ) app as it's really used in lot's of customers. One use case could be that you have a fiori frontend with only one client but you want to manage bank accounts from two different clients in same systems or two different systems.
Based on MOC specifications it should be possible to get Bank Accounts from different back-end systems and show/modify them in the same fiori app.
The architecture is the following:
To simplify the POC I used the same s/4hana system, so the fiori, gateway and two clients are in the same system.
Manage Bank Accounts fiori app uses the service FCLM_BAM_ACCOUNTWD_SRV and after following the configuration proposed by
andre.fischer I have the following configuration in transaction /IWFND/MAINT_SERVICE
Now we can test the service but it's very important to add the parameter ";mo" to the service to enable Multi Origin, so if the service is normally called with following url path:
/sap/opu/odata/sap/FCLM_BAM_ACCOUNTWD_SRV/C_BankAccountTP?$skip=0&$top=20
we have to use now ( notice the ";mo" addition
😞
/sap/opu/odata/sap/FCLM_BAM_ACCOUNTWD_SRV
;mo/C_BankAccountTP?$skip=0&$top=20
We can see in the response that now we have SAP__Origin tags
Odata service with MOC ready!
Let's go now to the fiori app. The service url is specified in manifest.json and for testing purpuses we will modify it directly in the BSP but this should
not be done. The right way is to extend the controller to modify the standard url ( see
Extending SAP-delivered SAP Fiori for extending correctly ) but for now we modify the url to have:
If we open the app and get the accounts we can see that we have accounts from different systems, I included the new column SAP__Origin.
Additionally we can edit the account and see the Origin with fast adaptation of the UI.
With that POC you can see that multi origin is possible with standard apps. I don't know if this a feature supported by SAP but it would be great if someones uses it in a productive way, let me know.
Best Regards,
Jose Muñoz