4
Most read
8
Most read
12
Most read
ABAP Development in time of S/4
Do's and Don'ts and Golden Rules
for Simplification
Christian Lechner (msg systems)
Tobias Trapp (AOK Systems)
Disclaimer
This presentation focuses on the on Premise world …
… the Cloud is a completely different Story!
Simplification - It Is All About Business
• Rethink your business process
• Ask yourself: Are those processes really a differentiator?
• Check simplified processes of S/4HANA and get rid of redundancies
• No idea about the future of your business … you are not yet ready for
the journey 
Recommendation #1: Read, Read, Read
• SAP changed quite some things in S/4HANA – make sure you know
https://help.sap.com/viewer/product/SAP_S4HANA_OVERVIEW/late
st/en-US
• Starting point: SAP S/4HANA Requirements for Partner Solutions On
Premise Guide
• Insights on:
▪ Performance
▪ Extensibility
▪ Software Lifecycle
▪ Architecture
https://uacp2.hana.ondemand.com/viewer/product/SAP_S4HANA_ON-PREMISE/1610%2520000/en-US
Recommendation #1: Read, Read, Read
• Another Source for Information: SAP Community
(well .. if you find the things )
• Read the S/4HANA blogs on SCN
• Topics:
▪ S/4HANA Transformation Options
▪ Business Partner Approach
▪ Material Field Length Extension
▪ Data Model Changes in SD Pricing
▪ Output Management
Recommendation #2: Book Keeping
aka “He is Dead, Jim”
• Clean up your code base and remove unused and obsolete code
• Every line of code you do not have to check for compatibility reduces
the effort
• Tools can support you in this undertaking (e. g. UPL)
Recommendation #3: Learn about Extension
Mechanisms
• SAP clearly defined the extension mechanisms for S/4HANA:
▪ InApp Extensibility
▪ Side-by-Side Extensibility
• Make sure you know and use them in case you do extensions
• Starting Point: Whitepaper on Extensibility
https://www.sap.com/documents/2015/07/2ad59b27-347c-0010-
82c7-eda71af511fa.html
Recommendation #4: Go Compatible
• SAP changed the code, the data model and the processes in S/4HANA
… your code will propably need adoption
• Simplification List describes the changes
https://archive.sap.com/documents/docs/DOC-70833
• SAP tries to make the transition smooth
▪ Best practices and automatic checks for custom code in S/4HANA on-
Premise: https://archive.sap.com/documents/docs/DOC-70449
▪ Data models are being simplified – read access still possible via CDS
compatibility views
Recommendation #4: Go Compatible
• Temporal bridge to quickly bring you to the S/4 world: Compatibility Pack
• OSS note 2269324 - Compatibility Scope Matrix for S/4HANA on-premise:
Through the Compatibility Packages listed in the attachment ("matrix"), SAP
provides customers a limited use right to run certain classic SAP ERP solutions
on S/4HANA installations, provided customers have licensed the applicable
solutions as set forth in their license Agreements. This use right expires on
Dec 31, 2025, and is available to installed-base as well as net-new customers
• FAQ on Compatibility Pack:
https://uacp.hana.ondemand.com/http.svc/rc/DRAFT/pdfac0fa9551dd8880
9f10000000b441570/1511%20000/en-US/CP_FAQ.pdf
Recommendation #5: Use Modern ABAP
• SAP is deleting legacy code:
▪ Keep control about dependencies
▪ Use the ABAP package concept
▪ Think in terms of APIs
• Don’t use blacklisted technology like Logical Databases, Batch Input, Matchcodes
and everything what SAP does not recommend
• Don’t use techniques that prevent code scanning
• Use SCI/ATC checks  Think in Continuous Integration
• If not using Eclipse yet … now you really have to make the switch
Recommendation #6: Follow the Principle of One
• SAP avoids redundancy for frameworks and technologies
• So far the strategic frameworks have not been published with exception of
SAP HANA, BRFplus and Fiori
• SAP is still investing in established frameworks:
▪ Business Workflow
▪ Business Application Log
• Further recommendations by SAP:
▪ Adobe Forms for output management (OSS note 2228611)
▪ Document management: SAP presented their strategy at DSAG
Technologietage 2017
Recommendation #7: Stick to the
S/4 Programing Model
©SAP SE (TechEd 2016 DEV109)
Recommendation #7: Stick to the
S/4 Programing Model
• It all starts with data model:
Capture business intent and create a data model close to conceptual
thinking
• Create views using ABAP CDS views
• Implement code pushdown preferable CDS views e. g. :
▪ Unit, date/time or currency conversion
▪ Arithmetical expressions
• Define business logic using BOPF
• Generate BOPF objects and implement actions and validations
Recommendation #7: Stick to the
S/4 Programing Model
• Expose BOPF and CDS views via Odata/Gateway
• Create Fiori apps on top
• See also:
https://help.sap.com/saphelp_nw751abap/helpdata/en/d9/bc687d3
5fa42ccbb0b9256ce786d51/frameset.htm
• Last but not least: TEST, TEST and TEST!
 Not everything will work out as expected
Recommendation #8: Data Model is the Backbone
• Spend effort on your data model:
▪ Capture business intent and create a data model close to
conceptual thinking
▪ Use DDD
▪ Use meaningful and readable names for attributes
• Embrace the column-based data store of SAP HANA: Denormalize
• Zero redundancy:
▪ Don’t materialize views
▪ Don’t keep redundant attributes – join them using CDS views
Recommendation #8: Data Model is the Backbone
• Avoid generic structures in you data model:
▪ Name-value pairs
▪ Blobs containing complex data types
• Use GUIDs for primary keys (Makes life easier in BOPF)
Recommendation #9: Where to Start?
Recommendation #9: Where to Start?
Recommendation #9: Where to Start?
Challenges
• The base is still shaky, so leading edge is sometime bleading edge
Be aware of that!
• Information about (new) SAP frameworks is limited
• SAP does not always eat its own dog food
e. g. Industry Solutions vs. S/4 paradigms
• Transformation of old code can be a challenge e. g. harmonization of
LUW concepts of legacy applications and BOPF transaction manager
Challenges
• Product Development: Move to S/4HANA means Code Split!
 Depending on your strategy you might have 3(!) lines of code for a
certain time
Thanks for your Attention!

ABAP Development in time of S/4 - Do's and Don'ts and Golden Rules for Simplification

  • 1.
    ABAP Development intime of S/4 Do's and Don'ts and Golden Rules for Simplification Christian Lechner (msg systems) Tobias Trapp (AOK Systems)
  • 3.
    Disclaimer This presentation focuseson the on Premise world … … the Cloud is a completely different Story!
  • 4.
    Simplification - ItIs All About Business • Rethink your business process • Ask yourself: Are those processes really a differentiator? • Check simplified processes of S/4HANA and get rid of redundancies • No idea about the future of your business … you are not yet ready for the journey 
  • 5.
    Recommendation #1: Read,Read, Read • SAP changed quite some things in S/4HANA – make sure you know https://help.sap.com/viewer/product/SAP_S4HANA_OVERVIEW/late st/en-US • Starting point: SAP S/4HANA Requirements for Partner Solutions On Premise Guide • Insights on: ▪ Performance ▪ Extensibility ▪ Software Lifecycle ▪ Architecture https://uacp2.hana.ondemand.com/viewer/product/SAP_S4HANA_ON-PREMISE/1610%2520000/en-US
  • 6.
    Recommendation #1: Read,Read, Read • Another Source for Information: SAP Community (well .. if you find the things ) • Read the S/4HANA blogs on SCN • Topics: ▪ S/4HANA Transformation Options ▪ Business Partner Approach ▪ Material Field Length Extension ▪ Data Model Changes in SD Pricing ▪ Output Management
  • 7.
    Recommendation #2: BookKeeping aka “He is Dead, Jim” • Clean up your code base and remove unused and obsolete code • Every line of code you do not have to check for compatibility reduces the effort • Tools can support you in this undertaking (e. g. UPL)
  • 8.
    Recommendation #3: Learnabout Extension Mechanisms • SAP clearly defined the extension mechanisms for S/4HANA: ▪ InApp Extensibility ▪ Side-by-Side Extensibility • Make sure you know and use them in case you do extensions • Starting Point: Whitepaper on Extensibility https://www.sap.com/documents/2015/07/2ad59b27-347c-0010- 82c7-eda71af511fa.html
  • 9.
    Recommendation #4: GoCompatible • SAP changed the code, the data model and the processes in S/4HANA … your code will propably need adoption • Simplification List describes the changes https://archive.sap.com/documents/docs/DOC-70833 • SAP tries to make the transition smooth ▪ Best practices and automatic checks for custom code in S/4HANA on- Premise: https://archive.sap.com/documents/docs/DOC-70449 ▪ Data models are being simplified – read access still possible via CDS compatibility views
  • 10.
    Recommendation #4: GoCompatible • Temporal bridge to quickly bring you to the S/4 world: Compatibility Pack • OSS note 2269324 - Compatibility Scope Matrix for S/4HANA on-premise: Through the Compatibility Packages listed in the attachment ("matrix"), SAP provides customers a limited use right to run certain classic SAP ERP solutions on S/4HANA installations, provided customers have licensed the applicable solutions as set forth in their license Agreements. This use right expires on Dec 31, 2025, and is available to installed-base as well as net-new customers • FAQ on Compatibility Pack: https://uacp.hana.ondemand.com/http.svc/rc/DRAFT/pdfac0fa9551dd8880 9f10000000b441570/1511%20000/en-US/CP_FAQ.pdf
  • 11.
    Recommendation #5: UseModern ABAP • SAP is deleting legacy code: ▪ Keep control about dependencies ▪ Use the ABAP package concept ▪ Think in terms of APIs • Don’t use blacklisted technology like Logical Databases, Batch Input, Matchcodes and everything what SAP does not recommend • Don’t use techniques that prevent code scanning • Use SCI/ATC checks  Think in Continuous Integration • If not using Eclipse yet … now you really have to make the switch
  • 12.
    Recommendation #6: Followthe Principle of One • SAP avoids redundancy for frameworks and technologies • So far the strategic frameworks have not been published with exception of SAP HANA, BRFplus and Fiori • SAP is still investing in established frameworks: ▪ Business Workflow ▪ Business Application Log • Further recommendations by SAP: ▪ Adobe Forms for output management (OSS note 2228611) ▪ Document management: SAP presented their strategy at DSAG Technologietage 2017
  • 13.
    Recommendation #7: Stickto the S/4 Programing Model ©SAP SE (TechEd 2016 DEV109)
  • 14.
    Recommendation #7: Stickto the S/4 Programing Model • It all starts with data model: Capture business intent and create a data model close to conceptual thinking • Create views using ABAP CDS views • Implement code pushdown preferable CDS views e. g. : ▪ Unit, date/time or currency conversion ▪ Arithmetical expressions • Define business logic using BOPF • Generate BOPF objects and implement actions and validations
  • 15.
    Recommendation #7: Stickto the S/4 Programing Model • Expose BOPF and CDS views via Odata/Gateway • Create Fiori apps on top • See also: https://help.sap.com/saphelp_nw751abap/helpdata/en/d9/bc687d3 5fa42ccbb0b9256ce786d51/frameset.htm • Last but not least: TEST, TEST and TEST!  Not everything will work out as expected
  • 16.
    Recommendation #8: DataModel is the Backbone • Spend effort on your data model: ▪ Capture business intent and create a data model close to conceptual thinking ▪ Use DDD ▪ Use meaningful and readable names for attributes • Embrace the column-based data store of SAP HANA: Denormalize • Zero redundancy: ▪ Don’t materialize views ▪ Don’t keep redundant attributes – join them using CDS views
  • 17.
    Recommendation #8: DataModel is the Backbone • Avoid generic structures in you data model: ▪ Name-value pairs ▪ Blobs containing complex data types • Use GUIDs for primary keys (Makes life easier in BOPF)
  • 18.
  • 19.
  • 20.
  • 21.
    Challenges • The baseis still shaky, so leading edge is sometime bleading edge Be aware of that! • Information about (new) SAP frameworks is limited • SAP does not always eat its own dog food e. g. Industry Solutions vs. S/4 paradigms • Transformation of old code can be a challenge e. g. harmonization of LUW concepts of legacy applications and BOPF transaction manager
  • 22.
    Challenges • Product Development:Move to S/4HANA means Code Split!  Depending on your strategy you might have 3(!) lines of code for a certain time
  • 23.
    Thanks for yourAttention!