A Complete Journey from ABAP Beginner to S/4HANA Professional
Introduction
- Why This Book Exists
- What You Will Learn
- How This Book Is Structured
- Prerequisites
- A Note on Modern vs Legacy ABAP
Chapter 1: The ABAP Landscape and SAP Ecosystem
- What Is ABAP and Why It Exists
- The SAP Technology Stack: From Kernel to Fiori
- ABAP Environments: Eclipse ADT, SAP GUI, and the Cloud
- Your First Look at an ABAP Program
- How Enterprise Development Actually Works
Chapter 2: ABAP Fundamentals — Syntax, Types, and Variables
- Statements, Keywords, and Statement Blocks
- Elementary Data Types and Declarations
- Constants, Literals, and Type Modifiers
- Operators: Arithmetic, Logical, Comparison, String
- Working with Structures and Field Symbols
Chapter 3: Control Flow and Logic
- Conditional Logic with IF, CASE, and COND
- Loops: DO, WHILE, FOR, and LOOP AT
- The NEW FOR Expression for Inline Table Building
- Nested Control Structures and Readability
- Common Logic Patterns in Enterprise Code
Chapter 4: Internal Tables — The Heart of ABAP Data Processing
- Understanding Internal Table Types: Standard, Sorted, Hashed
- Declaring and Populating Internal Tables
- Reading, Modifying, and Deleting Table Entries
- Looping Over Tables with Modern Syntax
- Table Operations: JOIN, REDUCE, CORRESPONDING, VALUE
- Performance Implications of Table Type Choices
Chapter 5: Modularization — Procedures, Functions, and Includes
- Form Routines and Include Programs (Legacy)
- Subroutines vs Methods: When to Use What
- Function Modules: Definition, Grouping, and Calling
- Global Classes as the Modern Standard
- Code Organization in Real Projects
Chapter 6: Object-Oriented ABAP — Classes and Objects
- Classes, Objects, and the Class Builder
- Attributes, Methods, and Visibility Controls
- Constructors, Destructors, and Initialization
- Inheritance and Polymorphism in ABAP
- Interfaces, Abstract Classes, and Multiple Implementation
- Static vs Instance: Design Decisions
Chapter 7: Exception Handling and Robust Code
- The ABAP Exception Hierarchy
- System Exceptions and SY-SUBRC Patterns
- Class-Based Exceptions: RAISING and CATCHING
- Functional Methods and Returning Exceptions
- Resumable Exceptions and Error Recovery
- Defensive Programming Patterns
Chapter 8: Database Access with Open SQL
- The ABAP Dictionary: Tables, Views, and Data Elements
- SELECT Statements: From Basics to Complex Queries
- INSERT, UPDATE, DELETE, and MODIFY Operations
- JOINs, Subqueries, and Aggregations in Open SQL
- FOR ALL ENTRIES Patterns and Pitfalls
- Native SQL: When It Is Justified
Chapter 9: CDS Views — Declarative Data Modeling for HANA
- What Are CDS Views and Why They Matter
- Basic CDS View Syntax and Annotations
- Associations, Joins, and Calculated Fields
- ABAP Managed Database Procedures (AMDP)
- CDS in the Application Stack: From Data to UI
- Performance Benefits of Push-Down Processing
Chapter 10: The RESTful Application Programming Model (RAP)
- Understanding the RAP Architecture
- Behavioral Definitions and Determinations
- CRUD Operations in RAP: Create, Read, Update, Delete
- Validation, Authorization, and Draft Handling
- Service Bindings and OData Exposure
- Building a Complete RAP Application End to End
Chapter 11: Integration — APIs, BAPIs, RFCs, and OData
- Remote Function Calls (RFC): Synchronous and Asynchronous
- Business Application Programming Interfaces (BAPI)
- OData Services: Gateway Framework and Modern Alternatives
- HTTP Client Communication from ABAP
- JSON, XML, and Data Serialization
Chapter 12: Enhancements — User Exits, BADIs, and Modification Techniques
- The Enhancement Philosophy: Why Not Modify Standard Code
- Customer Exits and Screens
- Business Add-Ins (BADIs): Classic and Enhanced
- Implicit and Explicit Enhancements
- BAdI Implementation in OO ABAP
- Choosing the Right Enhancement Strategy
Chapter 13: User Interfaces — ALV, Reports, and Forms
- Classic List Processing and Write Statements
- ALV Grid Reports: Object-Oriented Approach
- Selection Screens and Parameter Handling
- Smartforms and Adobe Interactive Forms
- Modern Alternatives: Fiori Elements and RAP UIs
Chapter 14: Operations — Background Jobs, Transports, and Testing
- Background Jobs and Batch Processing
- The Transport Management System (TMS)
- Unit Testing with ABAP Unit
- Integration Testing Strategies
- Code Inspection and ATC Checks
Chapter 15: Debugging, Performance, and Security
- The ABAP Debugger: Breakpoints, Watches, and Navigation
- Performance Analysis: SAT, ST05, and SQL Traces
- Common Performance Anti-Patterns and Fixes
- Authorization Objects and Role Design
- Secure Coding Practices in ABAP
- Memory Management and Large Data Sets
Chapter 16: Modern ABAP, Clean Code, and Professional Practices
- The Evolution of ABAP Syntax: From Legacy to Modern
- Clean ABAP Principles and Guidelines
- Design Patterns in ABAP: Factory, Strategy, Observer, Repository
- Code Reviews and Team Standards
- ABAP in the Cloud: BTP and Steampunk
- Career Pathways and Continuous Learning