Technology Blogs by SAP
Learn how to extend and personalize SAP applications. Follow the SAP technology blog for insights into SAP BTP, ABAP, SAP Analytics Cloud, SAP HANA, and more.
cancel
Showing results for 
Search instead for 
Did you mean: 
Andre_Fischer
Product and Topic Expert
Product and Topic Expert
During the openSAP course Developing and Extending SAP Fiori Elements Apps we got the question whether an OData Service as it was used in this course could be developed in other backend systems as well.

At the same time there was the ask for a feature comparison between the different ABAP Programming Models that have been delivered by SAP in the past and that are available now.

I had to admit that there is no such comparison / overview available. 

So I thought that this is a nice topic for another blog post.

If there is an important scenario feature that I have missed, please let me know, so that I can update my blog post accordingly.



































































































SAP Gateway OData V2 framework SAP Gateway OData V4 framework ABAP Programming Model for SAP Fiori
(BOPF)
ABAP RESTful Application Programming Model
(RAP)
ABAP RESTful Application Programming Model
(RAP)
Release 

SAP ECC

(NW ≥7.0)
SAP S/4HANA
≥ 1709(≥ NW 7.52)
SAP S/4HANA
≥ 1610(≥ NW 7.51)
SAP BTP ABAP Environment SAP S/4HANA
≥ 1909
Greenfield implementation + + + + ≥ 2020 FSP1
Brownfield implementation + + + +
OData V2 + + + +
OData V4 + + ≥ 2020 FSP1
Draft handling + + ≥ 2020 FSP1
Multi-Inline-Edit + + ≥ 2021 FSP1
Asynchronous OData V4 Requests + + ≥ 2020 FSP1
Backend annotations in CDS views (+) + + +
Backend annotations using code based implementation + + (+)
Local annotations in SAP Fiori Tools + + + + +

(+) When using Referenced Data Source Approach (RDS)

 

Greenfield implementation

With greenfield implementation we mean scenarios where no legacy coding is called. Such scenarios are also called managed since in this case the underlying framework takes care of all create, update and delete requests and stores them in the database.

Brownfield implementation

With brownfield implementation we mean scenarios where existing legacy code such as a BAPI is being called by your service implementation in order to store the changed data in the database. Such scenarios are also called unmanaged. Another name for such scenarios are managed scenarios with a self implemented save.

 

Releated Links


ABAP RESTful Application Programming Model - RAP


for SAP BTP ABAP Environment

for SAP S/4HANA 1909 and later

ABAP Programming Model for SAP Fiori



SAP Gateway Framework



ABAP Platform and SAP Gateway Framework Release information


15 Comments