ABAP/4
Fourth generation language Event driven All SAP R/3 applications and parts of Basis are developed in ABAP Verbose language
Topics of Discussion
ABAP Development Workbench Data Dictionary Reports BDC SAP Script Module Pool
ABAP Development Workbench is a graphical programming environment which enables us to create new ABAP applications and change existing SAP applications.
... Debugging
Runtime Analysis Tells us how long do specific operations take during the run Gives the trace list of subroutines that have been processed SQL trace helps to trace database calls to find out the tables used by the application
Development class
A set of logically related development environment objects. A development class together with its objects is transportable. Each development class is under the administration of one user.
Data Dictionary
Data Dictionary
ABAP Development workbench tool Stores system wide data definition Completely integrated with ABAP Workbench
REPORTS
ABAP/4 Reporting Objectives Understand data declarations, commands, system fields used in reports Understand the selection screens Understand the program level events, conditions & loops Understand the data retrieval from the tables and Internal tables Understand the modularization techniques, field symbols and logical databases
Types of programs Type 1 run on its own Can be started it in the R/3 system without a transaction code Can be executed in background Type M ( Module pool) Program cannot run on its own and can be called via a transaction code Type I ( Include )
Program Selections SELECT-OPTIONS Statement SELECT-OPTIONS <Name> FOR <Table field> NO EXTENSION OBLIGATORY LOWER CASE SELECT-OPTIONS allows specification of multiple values and ranges. This can only be declared for fields within tables defined in the TABLES statement. Example SELECT-OPTIONS: S_KUNNR FOR KNA1KUNNR. KUNNR
Program Selections PARAMETERS Statement PARAMETERS <Name> TYPE LIKE OBLIGATORY AS CHECKBOX DEFAULT This statement allows entry of a single value on the selection screen. Example : PARAMETER : P_KUNNR LIKE KNA1-KUNNR. KUNNR
Blocking Selection Screen A sample screen SELECTION-SCREEN BEGIN OF BLOCK RAD1 WITH FRAME TITLE TEXT-002. PARAMETERS R1 RADIOBUTTON GROUP GR1. PARAMETERS R2 RADIOBUTTON GROUP GR1. PARAMETERS R3 RADIOBUTTON GROUP GR1. SELECTION-SCREEN END OF BLOCK RAD1.
DATA Definitions TYPES Statement TYPES <name> TYPE or LIKE DECIMALS SAP allows the creation of new user defined data types. And this does not create a variable, just a new type that can be used in creating a variable. Example : TYPES : CC LIKE BKPF-BUKRS DATA : NEW_CC TYPE CC.
Data Definitions Internal Tables DATA : BEGIN OF <name> OCCURS x, (variable definitions) END OF <name>. Internal Tables are defined as an extension of a structure, with the addition of an OCCURS clause. Example DATA : BEGIN OF T_WRK, T_KUNNR LIKE KNA1-KUNNR, SW TYPE C, END OF T_WRK.
Program Level Events INITIALIZATION. AT SELECTION-SCREEN AT SELECTION-SCREEN OUTPUT START-OF-SELECTION END-OF-SELECTION TOP-OF-PAGE END-OF-PAGE AT LINE-SELECTION AT USER-COMMAND
Modularization techniques
BDC
To transfer data from non-SAP systems ( ie. already available in electronic form ) Suitable for entering large amounts of data as it executes the transactions automatically Similar to entering the data in the transactions manually
BDC Methods
The BDC table should have five fields viz., 1) Program name 2) Screen number 3) Screen begin 4) Field name 5) Field value
For eg.
Prog name SAPMMO3M Screen No 0060 Scrn begin X Field name RM03M- MATNR RM03M-MBRSH . . SAPMM03M . . Field value mat.no indu. sec
0080
SAP Script
SAP Script
Objectives Understand Forms, various components of forms such as windows, pages, character format, paragraph format etc. Understand the control commands, symbols and function modules in SAP Script.
Forms
Controls the page layout and text formatting A form of the graphical Form Painter consists of Header data Page layout Paragraph format Character format Documentation
SAP Script - Control commands PERFORM Command To Call an ABAP subroutine (form) from any program Syntax /: PERFORM <form> IN PROGRAM <prog> /: USING &VAR1& /: CHANGING &VAR2& /: ENDPERFORM
Opens the form output. Calls a form element Ends the form output. Starts a new form.
Module Pool
Structure of program
Flow logic
The flow logic of a screen drives the processing sequence for that particular screen. Flow logic describes how the program reacts to the user actions. The events used for this purpose are, Process before output (PBO) Process after input (PAI) Process on value request (POV) Process on help request (POH)