I have once worked on OData Service in different SAP product such as C4C, CRM and S/4 HANA and observed some technical differences among them. Now I share the difference in this blog.
OData Service in CRM
In CRM we develop OData service in tcode SEGW – SAP Gateway Service Builder.
Attributes for each node are modeled, together with the hierarchy relationships among nodes. Once Generation button is pressed, runtime Artifacts like data provider class DPC and runtime data provider class MPC are automatically generated based on the modelling done in this tcode. The classes without post-fix will be overwritten during generation while the latter which inherit from them will not, this means it is correct to write the application logic within the _EXT classes.
In tcode /IWFND/MAINT_SERVICE, it is allowed to route a given OData service to multiple Business Suite backend systems. In the runtime different RFC destination will be used to delegate the OData request to actual backend system according to the different PFCG role assignment of the logon user. See one example below.
OData Service in S/4 HANA
In S/4 HANA, it is still allowed to develop OData service via tcode SEGW. Meanwhile thanks to the power of CDS view, it is support to automatically generate a OData service without any ABAP coding. Suppose you need to develop a Fiori application which only needs to provide the read-only access on for example Service Order in the system. For this requirement not a single line of ABAP code is needed. Instead all the necessary development task is to create CDS view, and that’s all. Once all views are done, activate the view containing annotation @OData.publish: true, and the OData service will automatically be generated.
The left task is to create a UI5 project via WebIDE with smart template to consume this generated OData service. More details could be found from these blogs of mine:
Create a CRM Service Order Fiori application within a couple of minutes
My CDS view self study tutorial – Part 4 how does annotation @OData.publish work
OData Service in C4C
You can find a list of all standard OData service in C4C from SAP help.
Further reading 1
You can find a list of all other blogs related to OData written by Jerry.
- Consume standard C4C OData service via ABAP code
- Leverage C4C Odata notification to monitor C4C Opportunity change in CRM system
- OData Service backend implementation in C4C, CRM and S4 HANA
- JMeter beginner – how to use JMeter to measure performance of OData service accessed parallelly
- Regarding cookie manipulation in CL_HTTP_CLIENT to avoid CSRF token validation failure issue
Further reading 2
Jerry’s blogs regarding the comparison how CRM and Cloud for Customer implement a given feature using different approaches:
- OData Service backend implementation in C4C, CRM and S4 HANA
- Excel export in CRM and C4C
- Saved query in C4C, CRM and S/4 HANA
- Direct navigation in CRM WebUI, CRM Fiori and C4C
- Formatted Text Edit in CRM and Cloud for Customer
- How Table column resize works in CRM and Cloud for Customer
要获取更多Jerry的原创文章,请关注公众号"汪子熙":