Module 2 - ABAP Development Environment
This module introduces the ABAP development environment, focusing on modern ABAP development using Eclipse (ADT) while also explaining the classic SAP GUI tools. By the end of this module, you will be comfortable creating, activating, and debugging ABAP objects.
1. ABAP Development Tools (ADT in Eclipse)
ABAP Development Tools (ADT) is SAP’s modern IDE based on Eclipse.
Why ADT?
- Modern UI and faster development
- Advanced syntax checks
- Inline debugging
- Git integration
- Better support for CDS, AMDP, RAP
SAP’s strategic direction is Eclipse-based ABAP development.
New technologies like CDS, RAP, AMDP are best supported in ADT.
Prerequisites
- Eclipse IDE
- ADT plugin
- SAP system connection
2. Classic SAP GUI vs Eclipse (ADT)
Comparison Overview
| Aspect | SAP GUI (SE80) | Eclipse (ADT) |
|---|---|---|
| UI | Traditional | Modern |
| Navigation | Transaction-based | Project-based |
| Syntax Checks | Basic | Advanced |
| Refactoring | Limited | Powerful |
| CDS / RAP | Poor | Excellent |
In real projects, both environments are used together.
ADT for development, SAP GUI for configuration, monitoring, and legacy work.
3. ABAP Project Structure in Eclipse
ABAP Project
- Represents a SAP system
- Contains all ABAP development objects
- Organized by packages
Package
- Logical container for ABAP objects
- Controls transport and authorization
- Can be:
- Customer package
- Local package (
$TMP)
Never develop serious code in $TMP.
Objects in $TMP cannot be transported.
4. Creating ABAP Objects
4.1 Creating a Package
- Right-click ABAP Project
- New → Package
- Assign transport layer
- Save and activate
4.2 Creating an ABAP Program
- Right-click Package
- New → ABAP Program
- Choose program type:
- Executable Program
- Include
- Activate
REPORT z_hello_world.
WRITE: 'Hello ABAP from Eclipse'.
:::tip[Naming Convention]
Always use Z or Y namespace for custom objects.
:::
4.3 Creating an ABAP Class
-
Right-click Package
-
New → ABAP Class
-
Define description and interfaces
-
Activate
CLASS zcl_demo DEFINITION.
PUBLIC SECTION.
METHODS say_hello.
ENDCLASS.
CLASS zcl_demo IMPLEMENTATION.
METHOD say_hello.
WRITE: 'Hello from ABAP OO'.
ENDMETHOD.
ENDCLASS.
5. Syntax Check & Activation
-
Syntax Check
-
Shortcut: Ctrl + F2
-
Checks:
-
Syntax errors
-
Type mismatches
-
Obsolete statements
-
-
-
Activation
-
Shortcut: Ctrl + F3
-
Required before execution or transport
-
ABAP objects must be activated to be visible to runtime and other objects.
6. Debugging Basics
Starting Debugger
- Set breakpoint
- Execute program
- Debugger opens automatically
Breakpoints
- Session breakpoints
- External breakpoints
- Watchpoints
Learn debugging early. A good ABAP developer reads runtime behavior, not just code.
7. Basic Navigation & Productivity Tips
| Action | Shortcut |
|---|---|
| Activate | Ctrl + F3 |
| Syntax Check | Ctrl + F2 |
| Pretty Print | Ctrl + Shift + F |
| Open Element | F3 |
| Where Used | Ctrl + Shift + G |
8. Common Beginner Mistakes
Avoid These:
-
Developing in $TMP
-
Ignoring activation errors
-
Not assigning transports
-
Overusing SAP GUI and ignoring ADT
9. Summary
-
ADT (Eclipse) is SAP’s modern ABAP IDE
-
SAP GUI is still relevant for legacy and admin work
-
Packages control transports and structure
-
Activation is mandatory
-
Debugging is a core developer skill
10. What’s Next?
➡️ Module 3: ABAP Language Basics
-
Data types
-
Variables
-
Inline declarations
-
Expressions
Get comfortable with ADT early — it will make modern ABAP topics much easier later.