Book Image

Mastering SAP ABAP

By : Paweł Grześkowiak, Wojciech Ciesielski, Wojciech Ćwik
Book Image

Mastering SAP ABAP

By: Paweł Grześkowiak, Wojciech Ciesielski, Wojciech Ćwik

Overview of this book

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).
Table of Contents (25 chapters)
Title Page
Copyright and Credits
Dedication
About Packt
Contributors
Preface
Index

Preface

Advanced Business Application Programming (ABAP) is an established and complex programming language in the IT industry. This book will be your guide to becoming an industry expert in Systems, Applications, Products (SAP) ABAP. You will learn how to write custom code that is suited for the latest version of SAP ABAP as well as the older versions of SAP. By exploring practical examples, you will learn how to make user-friendly interfaces and will uncover various ways to optimize your ABAP code.

Who this book is for

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

What this book covers

Chapter 1, Creating Custom Code, focuses on available actions for changing SAP systems within the modern and ever-changing SAP wold.

Chapter 2, The Basic Structure of ABAP, focuses on the distinction between ABAP and modern programming languages.

Chapter 3, Database Access in ABAP, describes how to extract data from a database in ABAP.

Chapter 4, Import and Export to Document Formats, focuses on the toolset the ABAP developer has for importing and exporting data to/from different environments.

Chapter 5, Exposing Data to Print Forms, explains how to represent extracted data in a user-friendly print form, how to make it clearly readable, and how to make its maintenance less time-consuming.

Chapter 6, ABAP and XML, deals with the different tools ABAP has for XML manipulation, their performance features, and what real-life scenarios they are intended for.

Chapter 7, Building User Interfaces, focuses on how to build classical Dynpro with the help of ABAP tools. It explains what screen types exist and how they are interconnected with each other, what GUI controls ABAP developers have in their toolset, and which of them are recommended and which are not. It also describes ABAP List Viewer (ALV) controls and the ALV component model.

Chapter 8, Creating Stunning UI5 Interfaces, places UI5 in the family of SAP interfaces and explains how to use it in the most efficient way.

Chapter 9, Business Object Processing Framework, gives an overview of Business Object Processing Framework (BOPF) and explains why it is important in SAP environments for the acceleration of development, easier maintenance, and supportability.

Chapter 10Modification and Customization Techniques, describes the customization techniques across SAP modules, explaining which techniques are recommended to use and which are outdated.

Chapter 11, Handling Exceptions in ABAP, covers testing exceptions in ABAP, the types of exception that have existed from the beginning, and the types we have now. It also recommends the proper way of handling exceptions, explaining in which situations it is strongly required, and those in which it is not recommended.

Chapter 12, Testing ABAP Programs, explains how to test ABAP programs for performance without sacrificing the clarity of ABAP code and how to use the ABAP Debugger correctly to find bottlenecks and speed up ABAP programs.

Chapter 13Advanced Techniques in ABAP Objects, deals with the advantages ABAP objects bring to the development process. 

Chapter 14, Integrating SAP with Third-Party Systems, focuses on how to build a stable and error-prone connection of a SAP system with non-SAP software.

Chapter 15Background Processing of ABAP Programs, reveals all the ins and outs of background data processing in SAP that you may face, and the approaches that are used to handle with them.

Chapter 16Performance and Optimization of ABAP, provides a thorough review of the available ABAP toolset for testing the performance of ABAP apps and tuning their execution. It also gives some best practice tips and tricks of internal ABAP statements and focuses on tracing and tuning OpenSQL selections.

To get the most out of this book

The reader should know the basics of programming, as well as the basics of SQL and operations on databases. Basic knowledge of business processes will also be helpful. This book also deals with the subject of UI5; therefore, it is worth the reader knowing the basics of JavaScript. 

To create code in ABAP, the readers also need access to SAP systems with the developer key. 

To create applications in UI5, the readers should create a trial account in the SAP Cloud Platform. The SAP Web IDE Full-Stack developer environment is available there. The programming environment allows you to create and extend SAP applications on a full stack for browsers and mobile devices.

Download the example code files

You can download the example code files for this book from your account at www.packt.com. If you purchased this book elsewhere, you can visit www.packt.com/support and register to have the files emailed directly to you.

You can download the code files by following these steps:

  1. Log in or register at www.packt.com.
  2. Select the SUPPORT tab.
  3. Click on Code Downloads & Errata.
  4. Enter the name of the book in the Search box and follow the onscreen instructions.

Once the file is downloaded, please make sure that you unzip or extract the folder using the latest version of:

  • WinRAR/7-Zip for Windows
  • Zipeg/iZip/UnRarX for Mac
  • 7-Zip/PeaZip for Linux

The code bundle for the book is also hosted on GitHub at https://github.com/PacktPublishing/Mastering-SAP-ABAP. In case there's an update to the code, it will be updated on the existing GitHub repository.

We also have other code bundles from our rich catalog of books and videos available at https://github.com/PacktPublishing/. Check them out!

Download the color images

We also provide a PDF file that has color images of the screenshots/diagrams used in this book. You can download it here: https://www.packtpub.com/sites/default/files/downloads/9781787288942_ColorImages.pdf.

Code in action

Visit the following link to check out videos of the code being run: http://bit.ly/2M4ILyK.

Conventions used

There are a number of text conventions used throughout this book.

CodeInText: Indicates code words in the text, database table names, folder names, filenames, file extensions, pathnames, dummy URLs, user input, and Twitter handles. Here is an example: "In the Details window, create lines %C1 and %C2 with the values that are shown in the following screenshot."

A block of code is set as follows:

<script
    id="sap-ui-bootstrap"
    src="resources/sap-ui-core.js"
    data-sap-ui-libs="sap.m"
    data-sap-ui-theme="sap_belize">
</script>

When we wish to draw your attention to a particular part of a code block, the relevant lines or items are set in bold:

data-sap-ui-bindingSyntaxt="complex"
data-sap-ui-resourceroots='{ "my.namespace":"./" }'

Any command-line input or output is written as follows:

$ mkdir css
$ cd css

Bold: Indicates a new term, an important word, or words that you see onscreen. For example, words in menus or dialog boxes appear in the text like this. Here is an example: "Select System info from the Administration panel."

Note

Warnings or important notes appear like this.

Note

Tips and tricks appear like this.

Get in touch

Feedback from our readers is always welcome.

General feedback: If you have questions about any aspect of this book, mention the book title in the subject of your message and email us at [email protected].

Errata: Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you have found a mistake in this book, we would be grateful if you would report this to us. Please visit www.packt.com/submit-errata, selecting your book, clicking on the Errata Submission Form link, and entering the details.

Piracy: If you come across any illegal copies of our works in any form on the Internet, we would be grateful if you would provide us with the location address or website name. Please contact us at [email protected] with a link to the material.

If you are interested in becoming an author: If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, please visit authors.packtpub.com.

Reviews

Please leave a review. Once you have read and used this book, why not leave a review on the site that you purchased it from? Potential readers can then see and use your unbiased opinion to make purchase decisions, we at Packt can understand what you think about our products, and our authors can see your feedback on their book. Thank you!

For more information about Packt, please visit packt.com.