Professional Documents
Culture Documents
ABAP Platform in SAP S - 4HANA 2021 - Overview and Product Highlights
ABAP Platform in SAP S - 4HANA 2021 - Overview and Product Highlights
PUBLIC
Disclaimer
The information in this presentation is confidential and proprietary to SAP and may not be disclosed without the permission of SAP.
Except for your obligation to protect confidential information, this presentation is not subject to your license agreement or any other service
or subscription agreement with SAP. SAP has no obligation to pursue any course of business outlined in this presentation or any related
document, or to develop or release any functionality mentioned therein.
This presentation, or any related document and SAP's strategy and possible future developments, products and or platforms directions and
functionality are all subject to change and may be changed by SAP at any time for any reason without notice. The information in this
presentation is not a commitment, promise or legal obligation to deliver any material, code or functionality. This presentation is provided
without a warranty of any kind, either express or implied, including but not limited to, the implied warranties of merchantability, fitness for a
particular purpose, or non-infringement. This presentation is for informational purposes and may not be incorporated into a contract. SAP
assumes no responsibility for errors or omissions in this presentation, except if such damages were caused by SAP’s intentional or gross
negligence.
All forward-looking statements are subject to various risks and uncertainties that could cause actual results to differ materially from
expectations. Readers are cautioned not to place undue reliance on these forward-looking statements, which speak only as of their dates,
and they should not be relied upon in making purchasing decisions.
SUMMARY
Node.js, Java
SAP Business Suite1 SAP S/4HANA On-Premise SAP S/4HANA Cloud ABAP-based SaaS solutions
SAP NetWeaver hubs Extensions for SAP S/4HANA
SAP NetWeaver add-ons Custom cloud apps
Custom applications
SAP NETWEAVER ABAP PLATFORM 2021 ABAP PLATFORM CLOUD 2111 SAP BTP
AS FOR ABAP 7.5x 2 (indirect shipment only) (indirect shipment only) ABAP Environment 2111
PUBLIC INTERFACES
CLASSIC ABA LAYER NEW ABA LAYER NEW ABA LAYER NEW ABA LAYER
ANY DB & SAP HANA SAP HANA ONLY SAP HANA ONLY SAP HANA ONLY
1 2
(7.50) (7.50, 7.51 and 7.52)
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC This is the current state of planning and may be changed by SAP at any time. 7
ABAP development: Must learn topics
UX, SAP HANA, state-of-the-art development, cloud
On any device ABAP managed code Secure app development, Enterprise, upgrade-stable
pushdown high code quality cloud extensions
Role based
Agile and test-driven In-app and side-by-side
Device switch and
collaboration Custom code management Cloud-ready apps
Browser based
High developer efficiency with enhanced ABAP language and ABAP Development Tools in Eclipse
ABAP RESTful Application Programming Model for the efficient development of SAP HANA-optimized
SAP Fiori applications and Web APIs
Advanced quality assurance tools fully supporting custom code migration to SAP S/4HANA and
SAP BTP ABAP Environment
Real-time events, Industrial IoT, WebSocket RFC, M2M communication, MQTT and AMQP support
QUALITY ASSURANCE
SUPPORTABILITY
Debugging, profiling
Static and dynamic logging
Runtime monitoring and analysis
QUALITY
Editor for ABAP Test Cockpit check variants
Add all objects of a package to a transport request
TROUBLESHOOTING
ABAP Cross Trace for developments using ABAP RESTful Application Programming Model
Share ADT links for ABAP Traces
MISCELLANEOUS
The History view supports a version list for form-based objects
New icons for Identity and Access Management (IAM) editors
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 13
ABAP Development Tools in Eclipse (1)
DEVELOPMENT New Text Element editor: create and edit Text Elements
IMPROVEMENTS IN ADT Basics Tutorial for beginners and Tips and Tricks to make your daily work easier
DOCUMENTABILITY Linking to development objects within Knowledge Transfer documents
CAPABILITIES Linking objects in ABAP Doc Export
ABAP Unit Testing with test doubles and test seams More in the ABAP Keyword
Documentation
EXTENSION OF THE ABAP LANGUAGE CONTROL THE TRANSACTIONAL BO DIRECT API-BASED ACCESS TO RAP BOs
with an SQL-like syntax BEHAVIOR IN RAP CONTEXT
SAP HANA-CENTRIC
OPTIMIZATIONS
ABAP development for SAP HANA – Mainstream and code breakouts
MAINSTREAM
ABAP managed code pushdown
SQL SQL SQL SQLScript SQL SQL Extensions Specialized Engines SQLScript
Windowing Hierarchies Graph
CTE GEO Spatial Support
DB Tuning Objects
(view caches)
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 1*CDS Table Functions and ABAP Managed Database Procedures (AMDP) 24
ABAP CDS – Next generation data modeling and access
Semantically rich
Declarative
Close to conceptual thinking
COMMON
DATA
MODEL
SERVICES
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 25
ABAP CDS – Overview of supported CDS entity types
EXTENDED LOAD UNIT IN THE ABAP DICTIONARY FOR THE SAP HANA DATABASE
New load unit settings available for SAP HANA: Column Preferred, Page Preferred, Column Enforced, and
Page Enforced
Safe investments!
TOOLS
Greenfield developments
Universally usable
FRAMEWORKS
programming model
Brownfield developments
LANGUAGES
SAP S/4HANA, cloud and
Available in the cloud on-premise editions
BEST PRACTISES
and on-premise SAP BTP
ABAP environment
Powerful frameworks
Take over technical implementation tasks
Business logic added in code exits on protocol-agnostic layers
Behaviour
CRUD, Actions, Functions
Locks, eTag
Authorizations, Feature Control
Data Model Draft
R
2
COMPOSITION 1 3
TREE Runtime Implementation
(root, parent and child nodes)
INTERACTION PHASE
TX buffer
SAVE SEQUENCE
INTERACTION SAVE
PHASE SEQUENCE UNMANAGED
For brownfield developments with available application code for
finalize interaction phase, transactional buffer, and save sequence
➔ Developers in charge of BO runtime: CRUD operations
check_before_save
➔ Adapters needed to integrate the existing code
MODIFY
adjust_numbers
READ
LOCK
save
MANAGED
For greenfield developments with standard implementation
Transactional (opt. unmanaged appl. components: DB tables, lock/PFCG object, update task FM)
buffer ➔ Standard CRUD operations work out-of-the-box
SAP HANA ➔ Developers add BO-specific business logic
BUSINESS OBJECT RUNTIME
2
3
1 Tool support
UI: SAP Fiori Elements preview
4 Web API: Swagger UI preview
SERVICE
AUNIT DEFINITION
Scenario & integration test
DEFINE SCOPE
ADD
BEHAVIOR
AUNIT
Unit test
DATA MODEL BEHAVIOR
PROJECTION PROJECTION
ADD IMPLEMENT
CDS BEHAVIOR BEHAVIOR
Authority object
access control QUERY
DATA ACCESS CDS BASED CDS BEHAVIOR
CONTROL DATA MODEL DEFINITION ABAP CODE
AUTHORITY-CHECK DATABASE
TABLES Lock object
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 38
RAP – ABAP Platform 2021 feature scope (1)
SUPPORT FOR ADDITIONAL PROTOCOLS IN THE SERVICE BINDING EDITOR
Analytical scenarios: SAP Information Access (InA) based services for exposing CDS analytical queries with live data connection
Data integration scenarios: SQL-based services for accessing ABAP-managed data (CDS view entities) from external ODBC
based clients
* This presentation and SAP‘s strategy and possible future developments are subject to change
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 42
and may be changed by SAP at any time for any reason without notice.
ABAP PLATFORM 2021 PRODUCT HIGHLIGHTS
ABAP Test Cockpit for static quality checks and unit tests
USE STATISTICS VIEW with display criteria: ATC Statistics View with Simplification Item information
SAP Note number
Referenced Object
Application component
BASELINE ACTIVITIES
Adding/Removing individual check results
Deleting baseline (reset the test system to original state)
ABAP TEST COCKPIT (ATC) Run ATC in ABAP Development Tools in Eclipse
Tightly integrated in development (`Run As…` menu)
Browse all ATC check runs of the system (filter by users)
using ATC Result Browser Quick Fixes in the ATC Problems View
For custom code migration to SAP S/4HANA conversion:
Simplification Item information (e.g. SAP Notes, Referenced
Objects)
Integrate checks in your on-going development activities,
e.g. during transport release
DRILL DOWN
CODE
NAVIGATE
on premise cloud
SAP NETWEAVER
ABAP PLATFORM 2021 ABAP PLATFORM CLOUD 2111
AS FOR ABAP 7.x
SAP BTP
ABAP ENVIRONMENT 2111
Usage tracking of custom code Remote ATC to check for Adjust modifications in Performance tuning
in production S/4HANA related changes SPDD/SPAU
Check out Custom Code (SCMON/SUSG or UPL) (Simplification DB)
Code pushdown
ADT for Eclipse
Adaptation process Simplification
Custom Code Migration app Custom Code Migration app Quick Fixes for semi-automated
to detect unused code for efficient custom code custom code adaptation User experience
analysis
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC Remove unused code via SUM 53
Custom code analysis with Custom Code Migration app
SOLUTION OVERVIEW
Available in an SAP S/4HANA >=1809 system or in SAP BTP ABAP Environment
Analysis of custom code for SAP S/4HANA or SAP BTP readiness
Simplified custom code remediation
Obsolete custom code removal based on usage data
Identification of custom code candidates for back-to-standard and redesign
Evaluation of custom code for semi-automated adaptation (Quick Fixes in ADT in Eclipse)
Automated setup and configuration in SAP BTP ABAP Environment
SCOPING ANALYSIS
* Custom code evaluation with CCLM/UPL tools of SAP Solution Manager is still possible
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 55
Complexity analysis of custom code in Custom Code Migration app
BACK-TO-STANDARD
Clean up modifications and enhancements
Reset as much as possible to SAP standard
AGGREGATION OF FINDINGS Check out SAP Fiori App Custom Code Migration
2 PUSH 3 PULL
4 ADAPT
CLOUD
CONNECTOR
1 ANALYZE
BACKEND SYSTEM
e.g. SAP ERP, SAP S/4HANA,
SAP NetWeaver AS ABAP SAP BTP ABAP ENVIRONMENT
Check out How to bring your ABAP custom code to SAP BTP ABAP Environment
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 61
Semi-automatic code adaptation in ADT for SAP BTP ABAP Environment
SAP BTP
Required system Central ATC check system 1 Central ATC check system 2
ABAP Environment
Remote connectivity via RFC via RFC via RFC and SAP Cloud Connector
3
Analyze cloud findings
Support for replatforming projects: dependency analysis of custom code with SAP standard for SAP BTP transformation
Calls of SAP application APIs in custom code DB accesses to SAP tables in custom code
SAP Discovery Center Mission Use SAP Fiori Custom Code Migration app to analyze your ABAP custom code for SAP S/4HANA
Custom Code Migration app in SAP BTP ABAP Environment
Automated setup and configuration with CIAS guided workflow
Step-by-step guided custom code analysis
INTEGRATION AND
CONNECTIVITY
Real-time monitoring and Industrial IoT with ABAP Channels
SENSORS /
ABAP PUSH CHANNELS – CONNECTING THE WORLD USER INTERFACE MACHINES
Direct communication with sensors/machines
Push sensor data directly to UIs or to the Cloud
Extended protocol support:
WebSocket
native TCP/IP protocols (AS ABAP 7.50)
MQTT (ABAP Platform 1809) ABAP Push Direct TCP/IP
Channel communication
Application Application
Server Server
Check out ABAP Connectivity ABAP SYSTEM
TCP log
SUPPORTABILITY
Standard ABAP supportability tools for debugging, runtime analysis
and performance, kernel trace
Transaction SMWS shows active WebSocket, TCP Socket and
MQTT subscriptions on each app server
Supportability tools integrated into SAPC, SMWS transactions
TCP log
SECURITY
SMWS
Virus scan profile for messages, authorization for involved
addresses and domains
Secure communication using SSL (TCPS for TCP Sockets and
WSS for WebSockets)
USAGE EXAMPLES
Events scheduling Monitor active daemons with SMDAEMON
Tracing & Logging
Health Check, clean up of resources, synchronization
of caches and error handling
Proxy-Session for external communication
HTTP SERVICE
Create and activate an HTTP service based on the ABAP Internet Communication Framework
HTTP Service editor in ABAP Development Tools in Eclipse
SECURITY
Security – ABAP Platform 2021 feature scope
MISCELLANEOUS
Interface enhancement for global user ID (SAP Note 3003462)
SU22: new value “App is deprecated ”
OAuth: support of mTLS for secure client authentication
Activation of start authorization check for Web Dynpro applications (SAP Note 3064888)
SAP S/4HANA
(Cloud)
KEY-USER
remote API
EXTENSIONS
Low-/No code tools
PRO
Clear interface between SAP code and extension ✏︎ Cloud-ready and upgrade-stable extensions
CON
✏︎ Restricted flexibility and richness especially for tightly-coupled extension scenarios
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 76
SAP S/4HANA Extensibility
In-app extensibility and side-by-side extensibility
SAP Business
Key user can do
Technology Platform
easy changes directly
for side-by-side extensions
in the app
and cloud integration
© 2021 SAP SE or an SAP affiliate company. All rights reserved. ǀ PUBLIC 77
SAP S/4HANA Extensibility
In-app extensibility
Custom fields
Extensibility cockpit
Extensibility inventory
WEB
WEB API
API
WEB
WEBAPI
API
Cloud
SAP HANA
SAP system
SAP Business
Git code Technology Platform SAP Cloud On premise Non-SAP system
Connector
management
CLOUD
ML
Benefit from the newest ABAP Platform and
…
SAP HANA database technologies independent
connectivity Analytics from your existing on-premise system
landscape
Build your Fiori apps with the new future proof
SAP HANA ABAP RESTful Application Programming Model
Utilize SAP BTP services like IoT, machine
SAP BTP learning etc. in your cloud extension
Delegate operation of the ABAP PaaS and new
SAP CLOUD technologies to SAP
CONNECTOR
ON PREMISE ERP
ML
EXTERNAL USER GROUP
… Make your cloud app available to a broader audience that does
not have access to your core business systems (e.g. consumer
connectivity Analytics apps)
INTEGRATION HUB
Integrate in your cloud extension multiple cloud/on-premise
SAP HANA
systems with SAP/non-SAP cloud services
DATA INTEGRATION
Collect data from multiple sources in your cloud extension for
SAP BTP further processing and analysis
DECOUPLED EXTENSION
Cloud extensions use only well defined (remote) APIs of the
SAP CLOUD Business system. This reduces the risk and effort for business
CONNECTOR system upgrades.
SAP S/4HANA
WEB
WEB API
API
SAP System WEB
WEBAPI
API
ON PREMISE Non SAP System CLOUD
SAP COMMUNITY
ABAP Development
https://community.sap.com/topics/abap
ABAP Testing and Analysis
https://community.sap.com/topics/abap-testing-and-analysis
ABAP Connectivity
https://community.sap.com/topics/abap-connectivity
ABAP Extensibility
https://community.sap.com/topics/abap-extensibility
SAP BTP ABAP Environment
https://community.sap.com/topics/btp-abap-environment
DEVELOPERS ON SAP.COM
ABAP Platform: https://developers.sap.com/topics/abap-platform.html
Tutorials: https://developers.sap.com/tutorial-navigator.html?search=abap
Olga Dolinskaja
Product Management
Technology Core Platform, SAP SE
olga.dolinskaja@sap.com
Follow us
www.sap.com/contactsap