ABAP - Programming Language & Development Environment
(Advanced Business Application Programming)
ü Fourth-generation language (4GL) developed by SAP in which SAP R/3
applications are written.
ü Used to create the thousand of tiny embedded programs called
transactions that make up an application.
ü Application specific language with built-in knowledge of an
application domain
ü Interpretive language - translates and executes source statements
one line at a time.
ü Event-driven, top-down, well structured and powerful
Originated in 1980s
All SAP R/3 applications are developed in
ABAP
Began as a report generation programming
language
Evolved into a full-fledged development
environment
Highly similar to COBOL in reporting
respect
Very different from typical 3GL in other
ways
Sometimes referred to as "German
COBOL"
Moved beyond 4GL with introduction of ABAP
Objects
4GL language based on structured
programming methodologies
Also known as ABAP/4 to designate 4GL
Event driven dialog programming is central
to the system
Interpretive language
Open and portable because of interfaces
provided by SAP
Modular because of reusable subroutines and
functions from a centrally managed library
Extensive data manipulation - dates,
strings, floating-point numbers, etc
Standard SQL statements for accessing
underlying database
Object Orientation Evolution
Algorithmic view - performance in 1960s
Procedural view - subroutines and
procedures from outside the program
Structural view - manner in which
subroutines and procedures performed
Object Oriented view - couples this trend
not only to operations but also to data
Principal Blocks of OO Compared to 3GL
Object - record
Class - record type
Message - procedure
Method - call
SAP BAPI - a set of methods called an
interface
Inheritance and encapsulation
Advantage is reusable software components -
rapid implementation
SAP R/3 is NOT an OO environment per se
Highly influenced by OO
SAP's integrated graphical programming
environment offers all the necessary tools for creating and maintaining
business applications in the R/3 System. The ABAP Workbench supports the
development and modification of R/3 client/server applications written in ABAP.
You can use the tools of the ABAP Workbench to write ABAP code, design screens,
and create user interfaces. Furthermore, you can debug and test applications
for efficiency using predefined functions, as well as access development
objects and database information.
ABAP/4 dictionary
Domain
Data elements
Table and structure
Views or composite objects
Data browser
Object browser
Program editor
Screen painter
Menu painter
Area painter
Function library
Debugger
Computer-Aided Test Tool (CATT)
Runtime analysis
SQL tracer
Workbench organizer
Transport system
2 types - dialog (dynamic) and list
(report)
Perhaps similar to online versus batch in IDMS
Traditional Features
Data definition statements - DATA, TYPES
and TABLES
Data query statements - SELECT
Data manipulation statements - ADD,
SUBTRACT, MOVE and COMPUTE
Data control statements - DO, WHILE, IF,
CASE and PERFORM
Data types and operations
Data table processing
Internal tables
SAP transactions
Report transactions
Dialog transactions
Subroutines
Functions
Reporting
Screen or hardcopy
Logical databases are combined (joins)
Selection screens
Interactive reporting
Dialog Programming
Dynamic Programming (dynpro)
Combination of input screens and
corresponding processing code
Dialog program is called a module pool - a collection of processing modules
Flow Logic
PROCESS BEFORE OUTPUT (PBO)
PROCESS AFTER INPUT (PAI)
PROCESS ON VALUE-REQUEST (POV)
PROCESS ON HELP-REQUEST (POH)
Corresponds to premaps, response processes; edit tables and screen help in IDMS
ABAP/4 Query
User-friendly interface for end-users
Output can be routed to file storage, Excel and other file types
SAPScript
A word processing program
Adds fonts and size variations to print
Legacy Migration
Legacy System Migration Workbench (LSM
Workbench)
Batch interface
Utility maps legacy source to data
structures in R/3
