Anda di halaman 1dari 23

IBM Global Services

ABAP Events

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Objectives
The participants will be able to:
Interpret ABAP Event-Driven Programming.

Identify the System Triggered events that are executed during runtime of a Report program
Identify the User Invoked List Display events, that are triggered after the report has generated the basic list.

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

ABAP Event-Driven Programming


Program Code
REPORT ZPB001.

Program Flow

List Produced

TABLES: BSIK. DATA: VAR1(4) VALUE 0001.


GET BSIK. IF SY-LINNO < 5. WRITE: / BSIK-LIFNR, VAR1. ENDIF. END-OF-SELECTION. WRITE: / END-OF-SELECTION, has occurred. START-OF-SELECTION. WRITE: / START-OFSELECTION, has occurred.
3 ABAP Events | 4.02

Program Header

2
3 1

START-OF-SELECTION has occurred 100000 0001 END-OF-SELECTION has occurred

March-2005

2005 IBM Corporation

IBM Global Services

Runtime Event : INITIALIZATION

Execute a processing block before the selection screen

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Runtime Event : AT SELECTION-SCREEN

Trigger a function code on the selection screen

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Runtime Event: START-OF-SELECTION

Can be coded explicitly, but need not be.

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Runtime Events : GET and GET LATE

Select records from logical database tables

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Runtime Event : END-OF-SELECTION

Last system event to occur. Occurs only once

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Output Event : TOP-OF-PAGE

Used for page headers for the basic list only

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Output Event : TOP-OF-PAGE DURING LINE-SELECTION

Used for page headers on detail lists

10

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Output Event : END-OF-PAGE

Used for page footers

11

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Demonstration
Observe the following system-triggered events during execution of a Report program.
INITIALIZATION. AT SELECTION-SCREEN. START-OF-SELECTION. GET <table>. GET <table> LATE. END-OF-SELECTION. TOP-OF-PAGE. END-OF-PAGE.

12

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Practice
Observe the following system-triggered events during execution of a Report program.
INITIALIZATION. AT SELECTION-SCREEN. START-OF-SELECTION. GET <table>. GET <table> LATE. END-OF-SELECTION. TOP-OF-PAGE. END-OF-PAGE.

13

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

List Display (User) Events

Order of execution determined by user

14

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

List Display Event : AT PF##

Triggered by function code

PF##
15 ABAP Events | 4.02 March-2005

2005 IBM Corporation

IBM Global Services

List Display Event : AT LINE-SELECTION

Triggered by function code

PICK
16 ABAP Events | 4.02 March-2005

2005 IBM Corporation

IBM Global Services

List Display Event : AT USER-COMMAND

Triggered by function code

All Others besides PICK or PF##

17

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Demonstration
Observe the following user-invoked List Display events after the Basic List has been generated by a Report Program.
AT PF##. AT LINE-SELECTION. AT USER-COMMAND.

18

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Practice
Observe the following user-invoked List Display events after the Basic List has been generated by a Report Program.
AT PF##. AT LINE-SELECTION. AT USER-COMMAND.

19

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

List Display Events (User Events) - Typical Usage


Event Triggered by Typical User

Function Code
AT PF## PF##

Action Assigned
Function key pressed

AT LINE-SELECTION

PICK

Mouse double-click, Or single click + F2

AT USER-COMMAND

ALL OTHER CODES

Click on a push- button, or select a menu item

20

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

When Is a List Displayed?

21

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Summary
Flow of an ABAP program is controlled by events. Execution order of events does not depend on the order in which they are coded in the program. All ABAP statements that are not coded as part of an event, are part of the event START-OF-SELECTION. This event does not need to be coded explicitly in an ABAP program. It gets triggered automatically. END-OF-SELECTION is the last system triggered event to be processed during the runtime of a program. It occurs after all database retrievals has finished and before any User-invoked events. It occurs only once during the execution of an ABAP program. AT PF## (when any Function key is pressed), AT LINE-SELECTION (when the user double-clicks on a line) and AT USER-COMMAND (Clicking on a pushbutton or selecting a menu item) are three different user-invoked events that are handled from an ABAP program.

22

ABAP Events | 4.02

March-2005

2005 IBM Corporation

IBM Global Services

Questions
What are the different events in an ABAP program that can be triggered before user interaction ? When do they get triggered ? What are the user-invoked events for a list display ? What are the events used for displaying Headers and Footers in a list ? When are these events invoked ? Which part of a code in a program are executed for an event ?

23

ABAP Events | 4.02

March-2005

2005 IBM Corporation

Anda mungkin juga menyukai