Classical Reports


A report with single input screen (selection screen) and single output screen (list screen) is called a classical report.

Events in Classical Reports: - All the ABAP programs are developed using events because ABAP is “EVENT DRIVEN PROGRAMMING LANGUAGE” i.e. the entire ABAP program execution is based on order of events.

Load of Program

Initialization

At Selection-screen output

At Selection-screen on field

At Selection-screen on value request

At Selection-screen on Help Request

At Selection-screen

Start of selection

End of selection

Top of page

End of page







 Load of Program: - This event is used to load the program into memory for execution. This is internal event, which we cannot see.

Initialization: - This event is used to initialize the default values to program variables and selection-screen variables.
Examples: v_land1 = ‘IN’
                   v_bukrs = ‘1001’
                   p_werks = ‘US’
                   p_mtart = ‘FERT”

AT Selection-screen output: - This event is used to modify the selection screen dynamically based on user actions on the selection screen.
This event is triggered (or) executed for every action on the selection screen.

AT Selection-screen on field: - This event is used to validate a single input field on the selection-screen.

AT Selection-screen on value request: - This event is used to provide a search help for an input field. This event is triggered whenever the user click on search help button.

AT Selection-screen on help request: - This event is used to provide help information for an input field.This event is triggered whenever the user click on Help button i.e. F1 button.

AT Selection-screen: - This event is used to validate multiple fields of the selection-screen, whereas AT Selection-screen on field is used to validate a single input field.

Start of selection: - This event is used to write the original business logic statements i.e all select statements. It is also used to indicate the starting point of a program.
It is the default event.

End of selection: - It is used to indicate the start of selection has been ended. It is mainly used with logical database, which are absolute in ABAP (LDB’s are used in old version of ABAP). But LDB’s are stilled used in HR-ABAP, so end of selection is mainly used in HR-ABAP. It doesn’t have much importance in ABAP, it is used to indicate the start of selection has been ended .

Top of page: - This event is use to display constant page heading for all the pages in the output screen. This event is triggered after the first WRITE statement.
End of page: - This event is used to provide constant footer information across the all pages of the list-screen. To display end of page (or) footer information we have to reserve some lines as footer lines using the statement.
      Report <Report Name> Line Count Total Lines(Footer Lines)
       
       Ex Program: Will be discussed separately.
Using AT Selection-screen output: - This event is used to modify the selection screen dynamically based on user actions on the selection screen.
This event is triggered (or) executed for every action on the selection screen.

Modification ID: - It is an ID assigned to a group of Selection- screen fields, So that the properties of all the selection screen fields can be modified directly with the help of modification ID.
Suppose if Modification ID is not available then we have to modify each selection-screen field individually which makes program very complex.
Syntax: -
Parameters: <p_name> type <table-fname> MODIF ID <modification ID name>.

       Ex Program: Will be discussed separately.

What is difference between AT Selection-screen on field and AT selection-screen?
    At Selection-Screen on Field
       At Selection-Screen
1. It is used Validate a Single
    Field.
2. Whenever there is an error on 
    A field the entire screen will be
    Disabled, except the error field
1. It is used to validate multiple
    Fields.
2. Whenever there is an error
    On a field the entire screen
    Will be enabled.

       Ex Program: Will be discussed separately.


Previous
Next Post »