𝔖 Scriptorium
✦   LIBER   ✦

📁

Mastering SAP ABAP: A complete guide to developing fast, durable, and maintainable ABAP programs in SAP

✍ Scribed by Pawel Grzeskowiak, Wojciech Ciesielski, Wojciech Cwik


Publisher
Packt Publishing
Year
2019
Tongue
English
Leaves
539
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


Take your SAP ABAP skills to the next level by mastering ABAP programming techniques with the help of real-world examples

Key Features

  • Become adept at building interfaces and explore ABAP tools and techniques
  • Discover the modern functionalities available in the latest version of ABAP
  • Learn the process of creating stunning HTML5 applications using SAPUI5

Book Description

Advanced Business Application Programming (ABAP) is an established and complex programming language in the IT industry. This book is designed to help you use the latest ABAP techniques and apply legacy constructions using practical examples.

You'll start with a quick refresher on language and database concepts, followed by agile techniques for adding custom code to a modern ABAP system. After this, you will get up to speed with the complete ABAP toolset for importing data to and from different environments. Next, you'll learn how to print forms and work with the different ABAP tools for Extensible Markup Language (XML) manipulation. While covering further chapters, you'll gain insights into building stunning UI5 interfaces, in addition to learning how to develop simple apps using the Business Object Processing Framework (BOPF). You will also pick up the technique of handling exceptions and performing testing in ABAP. In the concluding chapters, you can look forward to grasping various techniques for optimizing the performance of programs using a variety of performance analysis tools.

By the end of this book, you will have the expertise you need to confidently build maintainable programs in Systems, Applications, and Products (SAP).

What you will learn

  • Create stable and error-free ABAP programs
  • Leverage new ABAP concepts including object-oriented programming(OOP) and Model-View-Controller (MVC)
  • Learn to add custom code to your existing SAP program
  • Speed up your ABAP programs by spotting bottlenecks
  • Understand techniques such as performance tuning and optimization
  • Develop modern and beautiful user interfaces (UIs) in an ABAP environment
  • Build multiple classes with any nesting level

Who this book is for

This book is for developers who want to learn and use ABAP skills to become an industry expert. Familiarity with object-oriented programming concepts is expected.

Table of Contents

  1. Creating Custom Code
  2. The basic structures of ABAP
  3. Database access in ABAP
  4. Import and export to document formats
  5. Exposing data to print forms
  6. ABAP and XML
  7. Building user interfaces
  8. Creating stunning UI5 interfaces
  9. Business Object Processing Framework
  10. Modification and customization techniques
  11. Handling exceptions in ABAP
  12. Testing ABAP programs
  13. Advanced techniques in ABAP objects
  14. Integrating SAP with third party systems
  15. Background processing of ABAP programs
  16. Performance and optimization of ABAP code

✦ Table of Contents


Cover
Title Page
Copyright and Credits
Dedication
About Packt
Contributors
Table of Contents
Preface
Chapter 1: Creating Custom Code
Technical requirements
Making changes
Design thinking
BDUF/LDUF
Designing for quality and use
Designing the UI
Designing services
Designing the business logic
Designing the database
Agile principles
DevOps
Continuous delivery
Summary
Questions
Chapter 2: The Basic Structure of ABAP
Technical requirements
The Data Dictionary
Domains
Data elements
Structures
Search helps
Table types
Databases
Data declaration
Field symbol
Summary
Questions 
Chapter 3: Database Access in ABAP
Technical requirements
Starting with OpenSQL
Basics
Possibilities with SELECT - the first part of the SQL statement
Possibilities with INTO - the third part of the SQL statement
The WHERE condition
How to see data selected from a database
More advanced possibilities in OpenSQL
WHERE conditions
Dynamic SELECT in WHERE
SINGLE FOR UPDATE
GROUP BY
ORDER BY
UP TO and ROWS
SELECT and ENDSELECT
FOR ALL ENTRIES
Subqueries
Reading data from several tables
Identifying and saving the changes
Creating datasets
Updating datasets
Deleting datasets
The optimization of reading big datasets
The new SQL syntax
Inline declaration
SQL expression
Using the SQL Trace tool for performance analysis
Summary
Questions
Chapter 4: Import and Export to Document Formats
Technical requirements
Client-side file processing
Reading files from the local PC using gui_upload
Writing files to the local PC using gui_download
Server-side file processing
Basic transactions related to server-side files
Writing files to the application server
Reading files from the application server
Working with Microsoft Office files
Reading data from Microsoft Excel
Saving a table to a Microsoft Excel file
Working with Microsoft Word
Using DOI to integrate Microsoft Office applications into ABAP reports
Summary
Questions
Further reading
Chapter 5: Exposing Data to Print Forms
Technical requirements
Introduction to printouts in SAP
SAPScript - the great-grandfather of all printouts
Creating our first SmartForm
Adobe Forms
Creating our first Adobe Form
Summary
Questions
Further reading
Chapter 6: ABAP and XML
Technical requirements
Using the CL_XML_DOCUMENT class for XML
Reading and parsing XML files to ABAP
Changing XML data
Simple transformations in ABAP
Serialization using ST
Deserialization using ST
sXML library for XML and JSON
Converting XML to JSON
Summary
Questions
Further reading
Chapter 7: Building User Interfaces
Technical requirements
Classic DynPro
Screen painter
Selection screens
More advanced options of the selection screen
Checkbox
Radiobutton
Blocks in selection screens
Selection screen event model
ALV
Basics
Advanced capabilities of ALV sand screens
Zebra
Coloring
Event of an ALV, exemplified by a button click 
Icons in the ALV
Text fields and translations
Input/output field
Radiobuttons and checkbox
Button
Dynamic display possibilities for individual elements and groups
Summary
Questions
Chapter 8: Creating Stunning UI5 Interfaces
Technical requirements
Development tools
Layouts and floorplans
SAP Fiori elements
The analytical list page
The list report
The object page
The overview page
The worklist
Layouts
Floorplans
The initial page floorplan
The multi-instance floorplan
The wizard floorplan
Basic templates
The SAPUI5 library
Control documentation page and inheritance
Contextual info
Overview
Constructor
Properties
Associations
Aggregations
Events
Methods
Inheritance
Main controls
Custom controls
Creating our first mobile app
Application and project structure
index.html
The standard variant
The content delivery network
The miscellaneous variants
Component.js
manifest.json
Views and controllers
MainView.view.xml
SearchView.view.xml
SearchView.controller.js
i18n.properties
Testing SAPUI5 apps
Mock Server
Unit tests
Integration tests
Summary
Questions
Further reading
Chapter 9: Business Object Processing Framework
Technical requirements
An introduction to BOPF
Transaction
Nodes and entities
First BOPF example 
Creating the object
Displaying an object
Summary
Questions
Further reading
Chapter 10: Modification and Customization Techniques
Technical requirements
Legacy ways of changing the standard
Customer Exits
Using BTE to extend FI functionality
Modifications
FQEVENTS
Appends
Classical BAdl
Enhancement framework and its components
Enhancement sections and Enhancement points
Implicit enhancements
Summary
Questions
Further reading
Chapter 11: Handling Exceptions in ABAP
Technical requirements
Classic exception handling
Handling
Raising
Class-based exceptions
Handling
Raising
Assertions
Building a checkpoint group
Defining assertions
Using assertions
Runtime errors
ABAP dump analysis tool
Error log
System environment
User View
ABAP developer View
BASIS developer View
Summary
Questions
Chapter 12: Testing ABAP programs
Technical requirements
Testing the quality of code
Static testing with Code Inspector and ABAP Test Cockpit
Testing and troubleshooting
ABAP Memory Inspector
Advanced ABAP debugger techniques
Testing with eCATT
Summary
Questions
Further reading
Chapter 13: Advanced Techniques in ABAP Objects
Technical requirements
Global versus local classes
Creating a local class
Creating a global class
The static method versus the instance method
Nested classes
A class as an attribute of the class
Inheritance
Interfaces
The event concept
ABAP Objects design patterns
Prototype - creation pattern
Singleton - creation pattern
Facade - structural pattern
Decorator - structural pattern
Observer - behavioral pattern
Strategy - behavioral pattern
Summary
Questions
Chapter 14: Integrating SAP with Third-Party Systems
Technical requirements
IDoc 
IDoc overview
The construction of IDoc
The EDI system
ALE
Differentiating ALE from EDI
BAPI
Implementing BAPI
SAP Gateway
Deployment variants
Embedded
Hub
Hub (with development)
Main tools
Gateway Service Maintenance
Gateway Client
Error Log
Gateway Service Builder
The OData protocol
Characteristics
The service definition
Developing our first OData application
Design time
Providing data
Summary
Questions
Chapter 15: The Background Processing of ABAP Programs
Technical requirements
Background processing in SAP
Background remote function call
Scheduling background jobs
Creating a background job
Recording batch input sessions
Summary
Questions
Chapter 16: Performance and Optimization of ABAP Code
Technical requirements
Ways of measuring ABAP programs performance
ABAP runtime analysis
ABAP trace analysis
ABAP SAT transactions
Best practice techniques
Summary
Questions
Appendix A: Assessments
Answers
Chapter 1 - Creating Custom Code
Chapter 2 - The Basic Structures of ABAP
Chapter 3 - Database Access in ABAP
Chapter 4 - Import and Export to Document Formats
Chapter 5 - Exposing Data to Print Forms
Chapter 6 - ABAP and XML
Chapter 7 - Building User Interfaces
Chapter 8 - Creating Stunning UI5 Interfaces
Chapter 9 - Business Object Processing Framework
Chapter 10 - Modification and Customization Techniques
Chapter 11 - Handling Exceptions in ABAP
Chapter 12 - Testing ABAP Programs
Chapter 13 - Advanced Techniques in ABAP Objects
Chapter 14 - Integrating SAP with Third-Party Systems
Chapter 15 - Background Processing of ABAP Programs
Chapter 16 - Performance and Optimization of ABAP Code
Additional tutorials
Creating a report from the template
Uploading graphics to SE78
Another Book You May Enjoy
Index


📜 SIMILAR VOLUMES


ABAP RESTful Programming Model: ABAP Dev
✍ Stefan Haas, Bince Mathew 📂 Library 📅 2019 🏛 SAP Press 🌐 English

You've worked with ABAP, SAP Fiori, and OData now see how these technologies and more come together in the ABAP RESTful programming model! Build on your expertise to create cloud-ready applications for SAP S/4HANA and deploy applications to the SAP Fiori launchpad. Manage applications with Git versi

SAP/ABAP HANA: Programming
✍ Sudipta Malakar 📂 Library 🌐 English

<span> Enrich your skill set with Open SQL and CD5 views </span><span><br><br> </span><span>Key Features</span><ul><li><span><span> Comprehensive coverage of SAP / ABAP HANA with emphasis on real-time case studies. </span></span></li><li><span><span> Practical examples along with Screen personas, SA

ABAP Objects: Introduction to Programmin
✍ Horst Keller, Sascha Kruger 📂 Library 📅 2002 🏛 Addison-Wesley Professional 🌐 English

The first book to comprehensively cover the new object-oriented generation of SAP's programming language ABAP. Officially-approved guide and reference to a core SAP topic

JavaScript Essentials for SAP ABAP Devel
✍ Rehan Zaidi [Rehan Zaidi] 📂 Library 📅 2017 🏛 Apress 🌐 English

<span><span><p>Easily master JavaScript (JS) with this quick guide and develop mobile and desktop applications for SAP Fiori. This book equips ABAP/SAP developers with the essential topics to get started with JS.</p><p>The focus of <i>JavaScript Essentials for SAP ABAP Developers</i> is on the parts

JavaScript Essentials for SAP ABAP Devel
✍ Rehan Zaidi (auth.) 📂 Library 📅 2017 🏛 Apress 🌐 English

<p><p>Easily master JavaScript (JS) with this quick guide and develop mobile and desktop applications for SAP Fiori. This book equips ABAP/SAP developers with the essential topics to get started with JS.</p><p>The focus of <i>JavaScript Essentials for SAP ABAP Developers</i> is on the parts of the J