Professional Documents
Culture Documents
Be Prepared For Sap Hana
Be Prepared For Sap Hana
Products Industries
Industries Support
Support Training
Training Community
Community Developer
Developer
Partner
Partner About
About
Be prepared for the new ABAP
programming model in SAP S/4HANA
December 7, 2017 | 3,039 Views |
Carine Tchoutouo Djomo
more by this author
ABAP Development
SAP S/4HANA
share
0 share
4 tweet share
330
Follow
You’ve surely already heard about the new ABAP programming model
for building state-of-the-art, intrinsically SAP HANA-optimized Fiori
apps in SAP S/4HANA [If not, then get started here] and maybe even
played around with it, but you are still on SAP Business Suite –
optimally on SAP HANA.
This is the situation for the vast majority of SAP’s customers and
partners right now in 2017, but sooner or later they will get in touch with
the Digital Core, that is SAP S/4HANA!
As a developer or development manager, the questions at this stage
are surely about how to best prepare yourself, your team and the new
custom application developments for this new world – as this is just a
matter of time until you get in touch with the digital core that is SAP
S/4HANA.
Introduction
The new ABAP programming model has been introduced with the
ABAP release 7.50 SPS01, first only supporting the development of
read-only Fiori apps, and then successively enhanced and improved
with the following ABAP releases.
The new ABAP programming model is based on proven technologies
such as Core Data Services (CDS) for the data modelling and access,
OData protocol for the service exposure and the business object
processing framework for the transactional processing.
The picture below gives an overview of the end-2-end stack:
Figure: ABAP Programming Model for SAP Fiori – Big Picture
Here are the major deliveries up to date – i.e. until SAP NetWeaver AS
ABAP 7.52:
annotations – e.g. Analytics, search, SAP Gateway and
more.
Different development guides are available on the SAP Help Portal to
help you getting started with the development of the different
application types.
With AS ABAP 7.52, various enhancements and improvements for the
different application types – incl. supportability and access control
enhancements have been delivered. But note that the programming
model is still evolving and further major deliveries are on their way.
Read more on this in the Outlook section of this blog.
Hence it is important for you to understand where to invest now in
order to make yourself ready for the “new world”.
Recommendations
You may have already seen the slide below somewhere – e.g. at SAP
TechEd 2017 session S4H140 or in blogs. If not yet, then check it out
here!
The slide above provides a list of recommendations meant to guide you
for a best preparation for the future. They are meant for application
developments where the new ABAP programming model cannot be
used. The reasons for that may be that you’re not yet on SAP
S/4HANA or your application requirements cannot be fulfilled with the
current function scope of the new programming model – e.g. the use of
legacy write APIs.
Let me restructure the different recommendations a bit and briefly
elaborate on them.
YOU SHOULD
Follow the programming model and best practices and use…
and the new ABAP programming model.
Availability: ≥ AS ABAP 7.40 SPS 05 | Documentation | Getting
Started with ABAP CDS
Such an authorization access is declared once for a given CDS
view and automatically used every time the view is consumed –
everywhere.
Availability: ≥ AS ABAP 7.50 SPS10 | Documentation
It offers a separation of matters by separating UI metadata from
the back-end relevant metadata.
Availability: ≥ AS ABAP 7.51 SPS 02 | Documentation | Compact
Intro
Note that a lightweight, CDS-based BOPF is used within the new
ABAP programming model where the BOPF business objects are
automatically generated out of the given CDS-based data models.
BOPF concepts like actions, determinations, validations and
authorization checks are still valid.
Availability: ≥ SAP ERP 6.0 EHP5 (SAP_BS_FND 7.02)
| Documentation | BOPF Feature Availability Matrix
SAP Gateway integration of CDS or BOPF
Regarding the code-based implementation of OData service in
transaction SEGW, we strongly recommend the use of the
mapped data source option in ABAP 7.40 and referenced data
source option as of ABAP 7.50, together with CDS entities.
For these service implementation options, the SAP Gateway
runtime offers generically the read-only OData calls including
goodies like sorting, filtering and text search for CDS views out of
the box.
The reference data source (RDS) option is the option used within
the new ABAP Programming models and is also the valid
approach for the use of legacy write APIs – like BAdIs/Function
modules – when building new SAP Fiori apps since this scenario
is not yet supported by the new ABAP programming model.
Whenever possible make use of the OData Exposure option
which is available as of release 7.50 SP01.
Availability: ≥ AS ABAP 7.40 | Documentation | OData service
development options
DO NOT
Implement things that are already solved:
are already explained in the DO’s section.
By doing this, you’re able to easily reuse your custom business
logic at different places with less effort – i.e. in different
scenarios/applications.
Similarly to the previous recommendation, when manually
implementing your SAP Gateway services in transaction SEGW,
do not put your custom business logic directly in the predefined
SAP Gateway extensions classes (ending with DPC_EXT), but
instead decouple it, so it can be reused easily somewhere else.
BENEFITS
Reuse / Prepare your skillset and custom coding for the future –
i.e. SAP S/4HANA
Outlook
The new ABAP programming model can already be used today to build
SAP HANA-optimized Fiori apps, but it is still evolving. Thus do expect
new deliveries to come with the future ABAP platform releases in order
to optimize the total cost of development (TCD) with the goal of
providing a RESTful programming model.
The main investment areas of the future development are:
Enhancement of the ABAP Language to provide a native support of the
business object concepts (BO as first-class ABAP citizens)
Support of typed APIs for default business object implementation tasks
Avoidance of code generation
Support the integration of legacy write APIs
End-to-end OData V4 support
Optimization of the end-to-end development flow
Improvement of testability and supportability
Enablement for the definition of UI semantics in the SAP Web IDE
For more road map details, check out the recording of session
S4H140 at SAP TechEd 2017.
You may also be interested in general recommendations about what
you can do today to prepare your custom ABAP code for
SAP S/4HANA. Find this information here.
Back to the top
Related Information:
• Getting started with the new ABAP Programming model in SAP
S/4HANA
• Online Documentation in the SAP Help Portal
• Getting started with ABAP Core Data Services (CDS)
• About the OData service development options
Alert Moderator
3 Comments
You must be Logged on to comment or reply to a post.
Nic Teunckens
December 7, 2017 at 2:45 pm
Nice Summary …
Sebastian Freilinger-Huber
December 7, 2017 at 3:55 pm
Hi Carine,
Thanks for your summary!
Nevertheless when I read the headline, I hoped to find something about BDL,
Service Binding and Service Definition here as well – Maybe this will be
included in some upcoming Blogs?
Best regards,
Sebastian
Prasenjit Singh Bist
December 11, 2017 at 7:38 am
Thanks Carine
Would really appreciate if we get more vide tutorials of the BOPF based draft
handling and transactional app development techniques.
Regards,
Prasenjit
Share & Follow
Privacy Terms of Use Legal Disclosure Copyright Trademark Sitemap Newsletter