Module 34: ABAP Interview Preparation
This module prepares you for real-world ABAP interviews, covering:
- Classic ABAP fundamentals
- OOP concepts
- HANA & CDS thinking
- AMDP & performance scenarios
- RAP & OData (modern ABAP)
Each section includes typical questions + interview-ready answers.
1. Classic ABAP Questions
Q1. Difference between SELECT SINGLE and SELECT UP TO 1 ROWS?
Answer:
SELECT SINGLEdoes not guarantee orderSELECT UP TO 1 ROWSmust be used withORDER BY
SELECT * FROM ztable
ORDER BY created_on DESC
UP TO 1 ROWS
INTO @DATA(ls_data).
ENDSELECT.
Say: “SELECT UP TO 1 ROWS with ORDER BY is deterministic.”
Q2. Types of Internal Tables and When to Use Them?
Answer:
- STANDARD → Sequential access
- SORTED → Range & key access
- HASHED → Fast key access
If you use READ TABLE ... WITH KEY, prefer HASHED or SORTED.
2. OOP (ABAP Objects) Questions
Q3. Difference between Abstract Class and Interface?
| Aspect | Abstract Class | Interface |
|---|---|---|
| Implementation | Partial | None |
| Multiple Inheritance | ❌ | ✅ |
| Constructors | Yes | No |
"Use interfaces for behavior contracts, abstract classes for shared logic."
Q4. What is Polymorphism in ABAP?
Answer:
Ability to treat different implementations uniformly via interfaces or superclass references.
DATA lo_calc TYPE REF TO zif_tax_calc.
lo_calc = zcl_tax_factory=>get_calculator( iv_country ).
3. HANA & CDS Questions
Q5. Why CDS Instead of Open SQL?
Answer:
- Semantic layer
- Reusable
- Authorization-aware
- Optimized pushdown
"CDS is not just SQL—it's a semantic data model."
Q6. Association vs Join in CDS?
Answer:
- Joins → Eager loading
- Associations → Lazy, reusable, semantic
Prefer associations unless eager data is required.
4. AMDP & Performance Scenarios
Q7. When Do You Use AMDP?
Answer:
- Very large datasets
- Procedural DB logic
- CDS insufficient
Never say "AMDP for performance always" ❌
Q8. How Do You Avoid Nested SELECTs?
Answer:
- Use JOINs
- Use CDS
- Push logic to DB
SELECT a~id, b~text
FROM ztab1 AS a
INNER JOIN ztab2 AS b
ON a~id = b~id
INTO TABLE @DATA(lt_data).
5. RAP & OData Questions (Very Important)
Q9. Managed vs Unmanaged RAP?
Answer:
- Managed → Framework handles CRUD, lock, commit
- Unmanaged → Developer handles everything
"Managed RAP is the default choice for new developments."
Q10. RAP vs SEGW?
Answer:
- SEGW → Code-heavy, OData V2
- RAP → CDS-based, OData V4, future-proof
Q11. What is Draft Handling in RAP?
Answer:
Allows saving incomplete data, resuming later, and ensures safe multi-user editing.
Draft is built-in, not custom.
6. Scenario-Based Questions
Scenario 1: Performance Issue in Production
Expected Answer:
- Analyze ST05 / SAT
- Reduce data volume
- Push logic to DB
- Use CDS / Open SQL
- Validate with ATC
Scenario 2: Authorization Issue in Fiori App
Expected Answer:
- Check CDS authorization
- Verify DCL
- Validate PFCG role
- Avoid UI-only checks
7. Rapid-Fire Questions (Quick Round)
- Difference between COMMIT WORK and BAPI commit?
- What is SAP LUW?
- How does RAP handle transactions?
- Why ATC is mandatory in S/4?
- Why SELECT * is discouraged?
8. Final Interview Tips
- Always think Clean ABAP
- Prefer CDS over Open SQL
- Avoid legacy syntax
- Mention ATC & testing
- Speak in design decisions, not syntax
9. One-Line Power Answers
- "RAP is SAP's strategic backend model."
- "CDS is the semantic layer in S/4HANA."
- "Performance is about data volume, not loops."
- "ATC enforces quality, not style."
10. Summary
- Interviews test thinking, not memorization
- Modern ABAP = CDS + RAP + Clean Code
- Performance & security are mandatory topics
- Design decisions matter more than syntax
11. What's Next?
➡️ Module 35: Capstone Projects
If you can explain why you chose a solution, you've already cleared the interview.