Sunday, September 14, 2014

What are different SAP ABAP Events ?

SAP ABAP events are important concepts in ABAP programming.Events helps to achieve interactive and corrective action for user inputs and validation.Events helps to initialize variable, error handling, action on value input , action on help input,action on report termination.

Below are the SAP events.
1.LOAD-OF-PROGRAM.
2.INITIALIZATION.
3.AT SELECTION-SCREEN.
4.AT SELECTION-SCREEN ON VALUE-REQUEST.
5.AT SELECTION-SCREEN ON HELP-REQUEST.
6.AT SELECTION-SCREEN OUTPUT.
7.START-OF-SELECTION.
8.END-OF-SELECTION.

example:
*&---------------------------------------------------------------------*
*& Report ZA01JK01
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT za01jk01. "First statement of ABAP report
TABLES: sflight,scarr.
*First event of ABAP
LOAD-OF-PROGRAM.
MESSAGE i001(00) WITH 'LOAD-OF-PROGRAM event'.
* Data Declaration part.
TYPES: BEGIN OF lty_sflight,
a_code TYPE s_carr_id,
connid TYPE sflight-connid,
seatsmax TYPE s_seatsmax,
seatsocc TYPE s_seatsocc,
END OF lty_sflight.
DATA: lt_sflight TYPE STANDARD TABLE OF lty_sflight,
ls_sflight TYPE lty_sflight.

* Selection screen part
PARAMETERS: p_acode TYPE s_carr_id.
SELECT-OPTIONS: s_date FOR sflight-fldate.

INITIALIZATION.
MESSAGE i001(00) WITH 'INITIALIZATION event'.
CLEAR: lt_sflight, ls_sflight.
AT SELECTION-SCREEN.
MESSAGE i001(00) WITH 'AT SELECTION-SCREEN event'.
SELECT SINGLE *
FROM scarr
WHERE carrid EQ p_acode.
IF sy-subrc IS NOT INITIAL.
MESSAGE e001(00) WITH 'Airline code not found!'.
ENDIF.
START-OF-SELECTION.
MESSAGE i001(00) WITH 'START-OF-SELECTION event'.
* BREAK-POINT.
SELECT carrid
connid
seatsmax
seatsocc
INTO TABLE lt_sflight
FROM sflight
WHERE carrid EQ p_acode
AND fldate IN s_date.
IF sy-subrc IS INITIAL.
PERFORM f_display_data.
ELSE.
MESSAGE i001(00) WITH 'No data found in sflight' DISPLAY LIKE 'E'.
LEAVE LIST-PROCESSING.
ENDIF.
END-OF-SELECTION.
MESSAGE i001(00) WITH 'END-OF-SELECTION event'.

*&---------------------------------------------------------------------*
*& Form F_DISPLAY_DATA
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2="" p="" text="">*----------------------------------------------------------------------*
FORM f_display_data .
* BREAK JKAPASE.
WRITE: 'This is my first ABAP program', /.
LOOP AT lt_sflight INTO ls_sflight.
WRITE: ls_sflight-a_code , space , ls_sflight-connid , space , ls_sflight-seatsmax , space , ls_sflight-seatsocc, /.
ENDLOOP.
ENDFORM. " F_DISPLAY_DATA

No comments:

Post a Comment