You are on page 1of 17

How I may help

LinkedIn Profile Email me!


Call me using Skype client on your machine
Reload this page SAP R/3 ABAP Programming
Here are concise yet in-depth explanations on efficiently coding SAP ABAP progra
ms. Information here has been distilled from several classes and hundreds of pag
es covering IDE and other tools, program types, contexts, persistence, trace, an
d other difficult topics.
RSS 2.0 XML feed on SAP valid:
SAP Solution Applications, Modules, Exams
SAP Certification Exams and Training
SAP Consultants
SAP Installation
SAP R/3 Configuration
SAP Netweaver Architecture Internals
SAP R/3 Tablespaces
SAP Solution Manager
SAP R/3 User and Server Administration
SAP R/3 Monitoring and Performance Tuning
SAP GUI Emulation for Load Testing
SAP R/3 ABAP Programming
SAP Portal

Topics this page:
What is ABAP?
Architecture
Program Types
Transport Packages
Screen attributes
Language Syntax
Commands
Workbench
Editors
Data Dictionary
SAPscript Forms
ABAP Functionality
Events
Data Declaration
List Handling
Object Coding
Internal Tables
Contexts
Data Types
ABAP UI
Dev. Process
DB Persistence
eCATT
ABAP Trace
Efficient Coding
RFC Types
RFMs and BAPIs
IDOCs
ABAP Certification
Your comments???

Site Map List all pages on this site
About this site About this site
Go to first topic Go to Bottom of this page

Web WilsonMar.com
EspaolFranaisDeutschItalianoPortugusCyrillic Russian?? (??) Chinese (Simplified)???
Japanese??? Korean
* SAP's Glossary,
* help.sap.com
* SAP Developer Network
Set screen What Is ABAP?
The R/3 kernel (system runtime environment) itself is written in standard C or C
++.
But application programs running inside R/3 are written using SAP's proprietary
programming language ABAP (pronouced as ahhh-bap).
Note: the "/4" in "ABAP/4" has been dropped over the confusion that the "4" refe
rred to "R/4", which doesn't exist.
Netweaver AS (Application Server) combines which SAP calls two "personalities" b
ecause WebDynpro (pronouced "web din pro") for ABAP and WebDynpro for Java use t
he same meta model. WebDynpro components, views, models, and controllers have th
e same semantics in both ABAP and Java.
The main difference is the design-time environment, the development infrastructu
re, and the run-time environment.


Go to Top of this page.
Next topic this page
Set screen Architecture
Components are reusable (nestable) units of the application project. Components
appear as nodes within the object list on the left side of the Workbench window.
The components (sub-objects) of an ABAP program are:
Source code - instructions written by ABAP programmers that are interpreted by t
he SAP ABAP language intrepreter.
Variants - input values that can change but are not frequently used.
Attributes - properties of each ABAP program, such as its program type, title, c
reation and last modified date, and active status.
Documentation - helps other programmers understand the program flow.
Text elements - short descriptions such as report column headings. Some headings
can be replaced with the longer text.
Within SAP, objects are small programs related to screen design, menu design, an
d other functions.
Dialog programs and their components are created and edited from menu Workbench
> Edit object (Shift+F5) Program.
Generally, there are two types of ABAP programs:
dialogs.
reports (interactive and traditional) which displays selection screens (for user
s to provide filtering criteria) and output (report) screens.

SAP's Architecture Manual WebDynpro
SAP's Tool Maual for WebDynpro for ABAP
SAP's Reference Guide WebDynpro for ABAP
Go to Top of this page.
Next topic this page
Set screen Different Types of ABAP object programs
ABAP Program Type Introduced with first part Called using Can do
1 (one) = Executable REPORT SUBMIT (LEAVE TO TRANSACTION) &
SUBMIT AND RETURN (CALL TRANSACTION) started by entering the program name or
using a transaction code; can have its own screens.
M = Module (in Module Pool) PROGRAM (using Transaction Maintenance transact
ion SE93) only by transaction code:
CALL TRANSACTION or
LEAVE TO TRANSACTION; Can be called using tcode or menu. Have their own dialo
g screens.
S = Interface Definition Subroutine pools PROGRAM non executable c
ontainer programs for sub-routines called externally cannot have its own scr
eens.
F = Function Group FUNCTION-POOL non executable container for function mo
dules. can have its own screens.
K = Class Definition (container programs for global classes) CLASS-POOL
non executable container for classes. cannot have its own screens.
J = Interface Definition (container programs for global interfaces) CLASS-P
OOL TABLES non executable container for interfaces. cannot have its
own screens.
T = Type Groups TYPE-POOL non executable container for type definitions.
cannot have its own screens.
I = Include Program non executable container for modularizing ABAP source code.
none INCLUDE statement. -
Go to Top of this page.
Next topic this page
Set screen Transports and Packages
When an ABAP module is first created, it is stored as an inactive local object i
n a $TMP temporary transport.
With ABAP, deployment of components are organized as Transport definitions.
Objects need to be activated for editing.
Go to Top of this page.
Next topic this page
Set screen Screens
To invoke the Screen Painter tool, use tcode SE51 or from the Object Navigator t
ool.
Screen attributes include its number (default to 0100 for the first screen), sho
rt description, subsequent screen number, and type of screen:
normal
subscreen
modal (pop-up) dialog box
selection
Goto Layout (placement) of screen elements (text label, input/output edit fields
, text boxes, push buttons, radio buttons, etc.).
Goto Secondary window to set Attributes for each field screen element in the Ele
ment List (Dict. data type (such as numbers only), format, length, etc..
Flow logic is determined by ABAP program source code events and keywords:
TOP where globals are defined.
PROCESS BEFORE OUTPUT. (PBO) to display screen
PROCESS AFTER INPUT. (PAI)
PROCESS ON HELP-REQUEST. (POH) when F1 is pressed
PROCESS ON VALUE-REQUEST. when F4 is pressed
Go to Top of this page.
Next topic this page
Set screen ABAP Language Source Code Syntax
ABAP is a declarative language with a syntax similar to the COBOL language, but
enhanced for use to specify both classic procedural and object-oriented processi
ng.
ABAP doesn?t care where a statement begins on a line. > Each statement (phrase)
begins with a command keyword (verb) and
ends with a period character (instead of the semicolon used in C and Java).
An ABAP statement can span several lines (without continuation characters as nee
ded in VB programs).
Spaces separate words.
Asterisks (*) in front of a line are recognized as comments and not processed.
Double-quote characters (") mark the beginning of in-line comments. All code is
ignored after a double-quote character. For this reason,
single-quote (') characters encase a text string, which can contain spaces.
The ABAP editor converts (marks) all text to UPPER CASE unless it's within sing
le quotes.
Statements with have an identical first part can be concatenated if there is a c
olon (:) after that first part and individual statements are separated with comm
as and a period (.) is placed after the last part.
Object-oriented ABAP coding follow these conventions.
hide h1. stores in a hide area the value of variable h1 from the current line of
the current internal table.

The SAP R/3 Style Guide maintained by the SAP Design Guild provides standards f
or accessible user interaction design of functions, UI elements (Screens, applic
ation and task menus, Fields, Checkboxes, Radio Buttons, Drop-Down List Boxes, L
ists, Tables, Trees), hot keys, and presentation of dialogues and texts.
String processing in German is Zeichenkettenverarbeitung.
Go to Top of this page.
Next topic this page
Set screen Command summary
Operation Commands Description
Object assignment MOVE variable1 TO variable2 assigns values to data objec
ts to a variable. It works like the equal sign (=).
MOVE-CORRESPONDING ... TO ...
WRITE TO passes values to variables (mainly to fill character fields).
CLEAR resets a data object to the initial value appropriate to its data type.
-
Numeric operations compute var3 = var1 - var2
subtract var2 from var1
add var1 to var2
divide var1 by var2
multiply var1 by var2
-
Individual modularization units MODULE, PERFORM, CALL FUNCTION,
CALL SCREEN,
CALL TRANSACTION,
CALL DIALOG,
SUBMIT (CALL FUNCTION IN UPDATE TASK,
CALL FUNCTION IN BACKGROUND TASK,
CALL FUNCTION STARTING NEW TASK) These create a new user context:
database access SELECT * INTO TABLE tableB FROM dbTableA.
endselect.
EXEC SQL -
Internal table operations APPEND,
COLLECT,
READ TABLE?WITH KEY?,
INSERT ... INDEX ...
SORT,
BINARY SEARCH -
delete internal tables and release memory REFRESH,
FREE -
another page on this site Programming Logic contrasts ABAP with other programing
languages' conditional (IF/ELSE/LOOP) statements.
ULINE requests a line break in the output.
Go to Top of this page.
Next topic this page
Set screen Workbench
WebDynpro application components are created and modified within the WebDynpro E
xplorer within the ABAP Workbench access from Tools > ABAP Workbench > Overview
> (within the Application Hierarchy) SE80 > - Object Navigator

The Workbench stores its assets (such as MIME definitions and ABAP development o
bjects (packages, programs, functions) in a persistent Repository.
ABAP Workbench organization of tools:
Development Function Builder, Screen Painter, Menu Painter)
SE11 ABAP Data Dictionary (DDIC)
User Interface:
SE38 ABAP Editor
SE51 Screen Painter
SE41 Menu Painter (to define GUI status of Menu bar, app. toolbar, function keys
)
SE37 Function Builder
SE24 Class Builder
SE37 Function Builder
SE33 Context Builder
Programming Environment:
SW01 Business Object Builder
Debugging
ST05 SQL Trace
SE30 Run Time Analysis (of memory usage) On Line Debugger to view variables whil
e stepping through a program,
SM21 System Log
Navigation (Application Hierarchy,
SE80 Object Navigator
SE84 ABAP Repository Information System
SE16 Data Browser
Organizing
SE09 Transport System to make moves requested using Workbench Organizer

SAP offers these courses:
TAW10 ABAP Workbench Fundamentals E-Learning
TAW12 ABAP Workbench Concepts E-Learning
Skillsoft offers two web-based courses:
ABAP Programming I (205 minutes)
ABAP Programming II (205 minutes)
Go to Top of this page.
Next topic this page
Set screen ABAP Editor
ABAP Workbench is the IDE SAP supplies to edit, compile, and run ABAP programs.
An ABAP program defines and maniulates data using statements of specific syntax.
XML-based info objects can only be edited in the Knowledge Workbench.
Go to Top of this page.
Next topic this page
Set screen ABAP Data Dictionary (DDIC)
The ABAP Dictionary contains:
table type
tables
views
data elements
domains (value ranges)
structures (hierarchy)
lock objects
online help information
search help information
Each field in the DD is based on a built-in DD data type or a Data Element (whic
h in turn is based on a Domain).
The Data Element contains the more semantical information (text and documentatio
n).
The Domain defines the basic technical attributes:
Data type, length, number of decimals -- essential for dealing with fields corre
ctly and building nice user interfaces that are aware of the field attributes.
Check table -- a separate table such as country name associated with a country c
ode.
Fixed values -- information about codes stored in the Domain (not in a separate
table).
Conversion exit -- in SAPGUI to translate between internal and external represen
tations of data, because most BAPIs return and expect the internal format, which
makes little to no sense to users.
Texts and documentation: SAP stores multiple texts per field and also extended d
ocumentation in many cases. This documentation is available in all installed lan
guages and therefore an easy way to provide multi-lingual capabilities in applic
ations.
Mixed case support. Indicates to the users which fields are uppercase only. Many
text fields in SAP are uppercase only.

Go to Top of this page.
Next topic this page
Set screen SAPscript and forms
A SAPscript form is a template that supplies the layout (for example, page size)
and content (for example, sales data for an invoice) for business forms.
SAPscript print program is needed to print, distribute, or display business form
s.
A form is made up of pages, which contains several windows (header, address, mai
n, etc.). Text elements are formatted with paragraph formats (which define font
and tab positions) and character formats (such as bold).
Create a view for the component. This calls the Layout tab and creates the root
element in the UI Element Hierarchy. See the view in the browser by embedding it
actively in a WebDynpro window.
Activate "Accessibility Checks Active" by clicking on the checkbox.

-
Go to Top of this page.
Next topic this page
Set screen ABAP Functionality
The functionality of an ABAP program include:
Receive requests and messages.
Present user interface (title bar, menu bar, standard & application toolbars, fu
nction keys).
Present screen elements (iViews push bottons, radio buttons, checkboxes, input f
ields, scroll fields).
Obtain user input in fields, mouse movements, etc.
Make calculations and edits.
Access databases.
web services (send responses).
Log activities.
Exit.

Go to Top of this page.
Next topic this page
Set screen Classic Sections and Events
Classic ABAP programs are made up of self-contained sections (containing block o
f code) which cannot be nested. Events in ABAP report programs are executed in a
predefined sequence.
INITIALIZATION.
SELECTION-SCREEN.
START-OF-SELECTION. where select statements retrieve data.
TOP-OF-PAGE.
END-OF-PAGE.
END-OF-SELECTION.
Bolded events are only for ABAP report programs.
Even though code sections can be specified in any order, it's better to keep th
is sequence.
Code for an event ends when the next event name is specified.
The STOP command causes (at runtime) a jump to the next section.
Go to Top of this page.
Next topic this page
Set screen Classic Data Declaration
DATA DECLARATION. Defines:
data i(8) type n value 0.
data final type c value 'literal'.
parameters x(15) type c.
select-options Number for x.
Data are stored in data objects: modifiable field strings, variables and interna
l tables or non-modifiable literals and constants.
Go to Top of this page.
Next topic this page
Set screen Classic List Handling
Interactive report programs provide menus for user interaction. When the user cl
icks on a row within a basic list created using a select statement within the st
art-of-selection section, code under section at line-selection. is invoked to cr
eate a secondary list.
When the user selects a row and clicks a defined PF key (i.e., Shift+F12), code
under section at pf24. is invoked. Because most PC keyboards have 12 F keys:
13 = Shift F1
14 = Shift F2
15 = Shift F3
16 = Shift F4
17 = Shift F5
18 = Shift F6
19 = Shift F7
20 = Shift F8
21 = Shift F9
22 = Shift F10
23 = Shift F11
24 = Shift F12
When the user selects a row and clicks the Enter key, code under section at user
-command. is invoked.
at user-command.
if sy-ucomm=20 .
get cursor Field f Value v. retrieves the field name and value of where the user
has placed his cursor.

Go to Top of this page.
Next topic this page
Set screen Object-Oriented Coding
Object-oriented ABAP coding defines events (with only exporting parameters) and
handler this way:
Go to Top of this page.
Next topic this page
Set screen ABAP Internal Tables
ABAP report programs obtains results from database queries from temporary intern
al tables on WebAS server memory.
For example, to define two internal tables with a capacity of 53 records:
data : begin of tableA occurs 100 with header line.
field 1 (c) (like databasefield1 ).
field 2 (c) (like databasefield2 ).
end of tableA.
data : begin of tableB like tableA occurs 100.
To modify data from the internal table:
modify tableA index i.
To read data from internal table:
loop at tableA from 50 to 100.
modify tableA .
" code to display data on the screen.
endloop .
Go to Top of this page.
Next topic this page
Set screen Contexts
To avoid unnecessary system load from repeating calculations, define contexts in
the Context Builder within ABAP Workbench.
Application programs work with instances of a context. SUPPLY input values for k
ey fields and DEMAND derived data.
Each context has a cross-transaction buffer on the application server. When you
query an instance for values, the context program searches first of all for a da
ta record containing the corresponding key fields in the appropriate buffer. If
one exists, the data is copied to the instance. If one does not exist, the conte
xt program derives the data from the key field values supplied and writes the re
sulting data record to the buffer.
Class inheritance (Vererbung) is achieved using
CLASS <subclass> DEFINITION INHERITING FROM <superclass>.
Go to Top of this page.
Next topic this page
Set screen Data Types
The largest ABAP datatype holds 65,535 characters.
Go to Top of this page.
Next topic this page
Set screen ABAP UIs
The standard Web user interface is WebDynpro.
The SAP R/3 Style Guide maintained by the SAP Design Guild provides standards f
or accessible user interaction design of functions, UI elements (Screens, applic
ation and task menus, Fields, Checkboxes, Radio Buttons, Drop-Down List Boxes, L
ists, Tables, Trees), hot keys, and presentation of dialogues and texts.
SDN Wiki Business Server Pages (BSP) provides a high degree of adjustment for W
eb interface.
SDN Wiki Java Development
SDN Wiki Java Development Infrastructure
SDN Wiki WebDynpro ABAP
SDN Wiki WebDynpro Java
SAP's Documentation for SAP Getting Started with Netweaver 2004s, 2004, and 6.3
0.
SAP Interactive Forms by Adobe Overview
Go to Top of this page.
Next topic this page
Set screen ABAP WebDynpro Development Processes
Process Process Description
Modeling 1. Provide business logic APIs.
2. Structure development projects in packages.
3. Create (reusable) WebDynpro components.
4. Model user navigation.
5. Model Portal navigation.
Developing 6. Create and implement controllers and define contexts.
7. Design of views, define layouts and bind to contexts.
8. Define WebDynpro applications.
9. Execute testing and debugging.
Configuring 10. Provide component configurations.
11. Combine WebDynpro components with WebDynpro application configurations.
12. Execute functional tests.
13. Include WebDynpro applications to Portal iViews and roles.
Adapting 14. Adapt configuration settings.
15. Enhance or modify WebDynpro components.
16. Internationalization of WebDynpro ABAP components.
17. Execute end-user and load testing.
18. Configure and personalize WebDynpro application in the Portal.
Upgrading 19. Merge new developments into productive applications.
20. Execute end-user testing.
Go to Top of this page.
Next topic this page
Set screen ABAP Persistence
Access to the R/3 System database is made using OPEN SQL statements in the PUT_<
TABLE> subroutines. Data is passed to the executable program using interface wor
k areas defined using the TABLES statement. Once the data has been read in the l
ogical database program, the executable program (report) can process the data in
the GET event blocks. This technique separates data reading and data processing
.
ABAP programmers do not need to open and close database connections since every
ABAP program automatically receives an open connection to the central database i
n the system.
ABAP Objects contain Open SQL, SAP's platform-independent SQL dialect as a direc
t component of the language.
Accesses to data in the database are synchronized by the runtime system's lock m
echanism which prevents two parallel transactions from being able to change the
same data in the database.
The logic in SAP's Update System avoids database rollback.
To avoid keeping the database waiting, SAP maintains its own LUW (logical units
of work) that spans several screens and several database LUW.
Update Management (transaction SM13) Monitoring Updates Analyzing and correcting
update errors
Update Management (transaction SM13)
Monitoring Updates
Analyzing and correcting update errors
Go to Top of this page.
Next topic this page
Set screen eCATT
eCATT (extended Computer Aided Test Tool - BC-TWB-TST-ECA) was available since
release 6.20 and superceded CATT as of Web Application Server Release 6.40.
SAP supplies it free as part of the R/3 system to document manual user dialog st
eps and to record, edit, and execute automated functional test cases without use
r dialog.
eCATT can be used with the Test Workbench.
Transactions executed through eCATT require the same authorizations as manual op
eration by a live person, so eCATT can be used to verify user profiles.
In principle, the entire ABAP instruction set is available for use within inline
ABAP code (CREATE, CALL, DATA, SUBMIT, etc.).
eCATT stores its data in R/3 databases and can be controlled by Test Workbench,
the Object Navigator (SE80), or externally through the BC-eCATT interface.
Test modules can refer to spreadsheets providing various data that are updated i
n CATT Maintenance mode.
Logs are created while test modules run.
However, eCATT is less suited for testing lists and display results, menu paths,
online help (F1, F4), free-form editor functions, and transactions that contain
the statement LEAVE TO TRANSACTION.

book Advanced ABAP Programming for SAP (Premier Press, 1999, 400 pages) by Gare
th M. de Bruyn, Robert W. Lyfareff, and Ken Kroes

book SAP R/3 Change and Transport Management:The Official SAP Guide (Sybex, 200
0) by Sue McFarland and Susanne Roehrs
Go to Top of this page.
Next topic this page
Set screen ABAP Trace
ABAP trace measures the run times of various ABAP commands:
To avoid tracing the buffer load process, execute the functional sequence before
beginning trace.
Command ST12 or System > Utilities > Runtime analysis > Execute,
at the ABAP Runtime Analysis: Initial Screen, Turn ABAP trace switch on for an R
/3 transaction code, ABAP program name, or R/3 function module. Filtered
Perform functional actions while SAP captures measurements into a file it create
s.
Analyze measurement results:
Overview shows the gross and net execution times of a program call in microsecon
ds.
gross time is the total time required for the call, which includes times of all
modularization units and ABAP statements
net time is the gross time minus the time required for the called modularization
units and for separately specified ABAP statements
For statements such as APPEND, the gross time equals the net time
If the gross time differs from the net times for such statements, the call conta
ins other calls or modularization units
hit list displays the individual components of each call.
Hit list displays the execution time in microseconds for each statement executed
by the program or transaction, sorted in decreasing order of the gross times.
Tables hit list lists database tables accessed by the transaction or program.
Group hit list displays ABAP trace results grouped by modularization unit.
Call hierarchy displays statements in chronological order of execution.


Go to Top of this page.
Next topic this page
Set screen Efficient ABAP Coding Strategies
After each BAPI call, check the message that came back to see whether the BAPI c
all was successful. All BAPIs are supposed to use a RETURN parameter instead of
throwing ABAP exceptions. However, different BAPIs use different structures with
different field names for the RETURN parameter.
Be smart about the amount of data retrieved from the database.
Specify SQL to retrieve the least amount of data from the database, such as requ
esting only enough data to fit on a page presented to the user. This reduces mem
ory and network bandwidth consumption.
However, it may be more efficient to make one call is the user's task is make a
decision (not just to refine the search).
One important technique is to save the values each user provided for previous se
arches (such as the user's own department number, etc.) and present them to the
user automatically.
Go to Top of this page.
Next topic this page
Set screen RFCs
sRFC Synchronous RFC Used by most BAPI clients CALL FUNCTION D
ESTINATION
aRFC Asynchronous (Parallel) RFC - CALL FUNCTION STARTING NEW TASK
tRFC Transactional RFC Used to save function calls in one LUW (Logical Units
of Work) and start the LUW afterward asynchronously. transfer ALE (Applicati
on Link Enabling) Intermediate Documents (IDocs) CALL FUNCTION IN BACKGR
OUND TASK
qRFC Queued synchronized RFC in a specified sequence through QIN/QOUT queues
used within a 3-phase process. - CALL FUNCTION "TRFC_SET_QUEUE_NAME" +
CALL FUNCTION IN BACKGROUND TASK
RFC with dialog RFC with SAP GUI support (dialog step) - -
Go to Top of this page.
Next topic this page
Set screen RFMs and BAPIs
ABAP Function Modules can only be called from an external client if they are mar
ked as RFC-enabled.
BAPIs are RFMs that follow additional rules (as defined in the SAP BAPI Programm
ing Guide) and are defined as object type methods in SAP's Business Object Repos
itory (BOR).
RFMs are also used to define ABAP exceptions -- a string such as "NOT_FOUND" wit
h an associated language-dependent message text.
Transaction codes BAPI and SE37 provide metadata for the several thousand SAP R/
3 BAPIs and other RFMs (RFC-enabled Function Modules) in its Interface Repositor
y. Some of them are in "unreleased" (unsupported) state. SAP only guarantees rel
eased BAPIs to be upward-compatible When SAP wants to change a BAPI in a way tha
t would be incompatible with the existing version, they create a new BAPI and ma
rk the old name obsolete.
Find suitable BAPIs using the BAPI Explorer (transaction BAPI), then review the
metadata of the RFM in the Function Builder (transaction code SE37).
RFMs have three types of parameters:
import (the client sends these to the RFM),
export (RFM sends these back to the client), and
tables (bi-directional).
Import and export parameters can be simple (scalar) fields or structures (an ord
ered set of fields) based on Data Dictionary (DD) definitions.
Tables have one or more columns (fields) in zero or more rows.
Import and table parameters can have mandatory or optional attributes, export pa
rameters are always optional.
However, a easier request/response programming model is used when BAPIs are made
object-oriented as methods within proxy classes representing business object ty
pes in the BOR.
Go to Top of this page.
Next topic this page
Set screen IDocs
IDoc (intermediate document) provide a standard data container structure for SAP
to exchange data between processes, such as asynchronous EDI (electronic data i
nterchange) between application programs written for SAP or between an SAP appli
cation and an external program.
IDocs is the vehicle for data transfer in SAP's Application Link Enabling (ALE)
layer.
Different types of IDoc are used for purchase orders or invoices.
In other words, an IDoc encapsulates data so that it can be exchanged between di
fferent systems without conversion from one format to another. Each IDoc generat
ed exists as a self-contained text file that can then be transmitted to a receiv
er (requesting workstation) without connecting to the central database.
There are several types of IDoc records: a single Control Record, one or many Da
ta Records, and one or many Status record. Segments and attributes of segments (
maximum number, hierarchical sequence, segment status, etc.) are used for interp
retating the SDATA field in the data record. Each IDoc consists of several segme
nts and a unique number assigned each iDoc for tracking and future reference. Ea
ch segment contain several fields.
IDoc data is then converted by SAP's EDI subsystem to a universal EDI standard s
uch as UN/EDIFACT (Electronic Data Interchange for Administration, Commerce, and
Trade) or ANSI/X12.
Business Application Programming Interface (BAPI) is used for synchronous commun
ication method sRFC because data usually is returned to the sending system.
BAPI methods are stored as RFC-capable function modules in the ABAP Workbench Fu
nction Builder accessing the SAP Business Object Repository (BOR).
Go to Top of this page.
Next topic this page
Set screen ABAP Exam - Programming Curriculum for Technical Consultant Certifica
tion
Here are my comments on the topic area class SAP offers to prepare people for th
e their "SAP NetWeaver 2004 - Development Consultant ? Application Development F
ocus ABAP"
The curriculum on the right column is my design for students taking a more task-
based, exploratory approach to learning, in a context of a team jointly developi
ng complex systems. The result is that learners can become quickly productive in
a complex environment. For example, rather than starting with a simple "Hello W
orld", learners work with real code because one of the skills required of profes
sionals is the ability to ignore the clutter and work under ambiguity.
Go to Top of this page.
Next topic this page
SAP Technologies (+)
SAP systems (mySAP Business Suite and SAP NetWeaver)
Technical structure of an SAP Web Application Server
ABAP Workbench Basics (++)
Data types and data objects
Internal tables
Data retrieval (authorization check)
Subroutines
ABAP runtime system
Function groups and function modules
Advanced ABAP (++)
Open SQL
Dynamic programming
Program calls and memory management
ABAP Objects (++)
Classes and objects
Inheritance
Polymorphism (casting)
Interfaces
Events
Global classes and interfaces
Exception handling
ABAP Dictionary (++)
Database tables
Performance for table accesses
Consistency by means of input check (foreign key dependency)
Dependency for ABAP Dictionary objects
Views
Search helps
List Creation Techniques (++)
Data output in lists
Selection screen
Logical database
Interactive lists
List creation with the ALV grid control:
Simple lists
Field catalog
Layout
Event handling
Dialog Programming (++)
Screen (basics)
Program interface (GUI title, GUI status)
Screen elements for output (text fields, status icons, and group boxes)
Screen elements for input/output
Subscreen and tabstrip control
Table control
Context menu
Lists in dialog programming
Database Changes (+)
Database updates with open SQL
LUWs and client/server architecture
SAP locking concept
Organize database changes
Complex LUW processing
Number assignment
Change document creation
Enhancements and Modifications (+)
Changes to the standard SAP system
Personalization
Enhancements to ABAP Dictionary elements
Enhancements via customer exits
Business Transaction Events
Business Add-Ins
Modifications

Demonstration of how users get work done
Invoke the application, login, open, close, logout using mouse, menu, keyboard s
hortcuts
Business transactions: view, list, select, search, add, change, delete
Common error messages and taking remediation action
Batch job schedule (data management)
Installation, Environment, and Samples
Download Installer & patches (zip/tgz files)
Installation Troubleshooting (Space, Network setup, etc.)
Exploration of a standard installation and what needs configuration
Tutorials, Glossary, Forums, other online support
Folders, Files (Sample Project, Source files)
Server services
Add-ins
Debug an almost working sample program using the Workbench
Code checkout from source repository
Invocation options from command line (such as log verbosity)
Use test harness to define positive and negative code verification tests
Stepping through (tracing) code execution and naming conventions
Defining & allocating variables and Memory Management
External references
Chain of suboutine & external calls
Differences among events and class inheritance
Data type conversions, casting, polymorphism, and data transformations
List creation, looping, sorting
Multi-Threading and other coding for Scalability
Code modularization and code execution profiling
Update/delete enqueues, connections to databases
Data queries with SQL procs, SQL code
Accessing flat files
Compile/Build options and debugging
Text Editor navigation to find and change a text string
Text in localized resource bundles
Code walkthroughs for readability, high performance, and defect avoidance
GUI dialog form, list, and report formatting
Input data editing
Lookups, Loops, sorting
Accessing dictionary elements
Messaging (JMS, etc.)
Subroutines and code modularity
Stubs and drivers during Integration testing with other modules
Searching for functions to use from the framework/code library
Review: describe menu options in the Workbench
Import/Export
Production run (minimal logging)
Go to Top of this page.
Next topic this page
Add to browser favorites add Google Bookmark add to Windows Live Ask co.mments
Diigo del.icio.us Digg this! Dropjack Facebook Fark furl Ma.gnolia Mister Wong D
eutch Mister Wong Franais Mister Wong Russian Mister Wong Espaol Rojo Netscape Pro
peller Netvouz NewsVine Rawsugar Segnalo Shadows Simpy Slashdot this! Spurl Back
flip Squiddo Stumble it! RawSugar Reddit TailRank Add to Technorati Favorites! w
ists yahoomyweb
Portions Copyright 1996-2011 Wilson Mar.Mar
All rights reserved
| Privacy Policy | Last updated | HTMLHELP | CSS | Cynthia 508 |
Related Topics:
another page on this site LoadRunner
another page on this site SNMP
another page on this site Rational Robot
another page on this site Free Training!
another page on this site Tech Support
How I may help
Send a message with your email client program
Your rating of this page:
Low High
Your comments on this topic, please:

Publish this comment publicly
Your first name:

Your family name:

Your location (city, country):

Your Email address:

Email me updates
Top of Page Go to top of page
Donate money with PayPal
Thank you!

You might also like