How to Create a Simple ALV Report for displaying data from a table
SAP ABAP Interview Questions – Real Time
Step 1: Go to SE38 Tcode. Type the program name and choose Source Code from Subojects and Click on Create button.
Step 2: Type Title & select ‘Executable Program’ type in Attributes and then click on save.
Step 3: Now enter the Package name in the ‘Package’ Attribute and click on the button.
Step 4: Select the TR and click on button.
Now ABAP Editor will open, here write the code given below.
REPORT zalvexample1.
*Table Declaration
TABLES: vbap.
*Type Declaration
TYPES : BEGIN OF ty_vbap,
vbeln TYPE vbap-vbeln,
posnr TYPE vbap-posnr,
matnr TYPE vbap-matnr,
matkl TYPE vbap-matkl,
arktx TYPE vbap-arktx,
netwr TYPE vbap-netwr,
waerk TYPE vbap-waerk,
klmeng TYPE vbap-klmeng,
vrkme TYPE vbap-vrkme,
END OF ty_vbap.
*Data Declaration
DATA : lt_vbap TYPE STANDARD TABLE OF ty_vbap,
ls_vbap TYPE ty_vbap.
DATA : lt_fieldcat TYPE slis_t_fieldcat_alv,
ls_fieldcat TYPE slis_fieldcat_alv,
v_repid LIKE sy-repid.
*Selection Screen
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-002.
SELECT-OPTIONS: so_vbeln FOR vbap-vbeln,
so_matkl FOR vbap-matkl,
so_matnr FOR vbap-matnr.
SELECTION-SCREEN END OF BLOCK b1.
START-OF-SELECTION.
*Data Fetching
SELECT vbeln
posnr
matnr
matkl
arktx
netwr
waerk
klmeng
vrkme
FROM vbap INTO TABLE lt_vbap
WHERE vbeln IN so_vbeln.
*Field Catalog
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 1.
ls_fieldcat-fieldname = ‘VBELN’.
ls_fieldcat-tabname = ‘IT_VBAP’.
ls_fieldcat-seltext_m = ‘SD NO.’.
ls_fieldcat-key = ‘X’.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 2.
ls_fieldcat-fieldname = ‘POSNR’.
ls_fieldcat-tabname = ‘IT_VBAP’.
ls_fieldcat-seltext_m = ‘ITEM NO.’.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 3.
ls_fieldcat-fieldname = ‘MATNR’.
ls_fieldcat-tabname = ‘IT_VBAP’.
ls_fieldcat-seltext_m = ‘MATERIAL NO.’.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 4.
ls_fieldcat-fieldname = ‘MATKL’.
ls_fieldcat-tabname = ‘IT_VBAP’.
ls_fieldcat-seltext_m = ‘MATERIAL GROUP’.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 5.
ls_fieldcat-fieldname = ‘ARKTX’.
ls_fieldcat-tabname = ‘IT_VBAP’.
ls_fieldcat-seltext_m = ‘DESCRIPTION’.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 6.
ls_fieldcat-fieldname = ‘NETWR’.
ls_fieldcat-tabname = ‘IT_VBAP’.
ls_fieldcat-seltext_m = ‘AMOUNT’.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 7.
ls_fieldcat-fieldname = ‘WAERK’.
ls_fieldcat-tabname = ‘IT_VBAP’.
ls_fieldcat-seltext_m = ‘CURRENCY’.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 8.
ls_fieldcat-fieldname = ‘KLMENG’.
ls_fieldcat-tabname = ‘IT_VBAP’.
ls_fieldcat-seltext_m = ‘QUANTITY’.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 9.
ls_fieldcat-fieldname = ‘VRKME’.
ls_fieldcat-tabname = ‘IT_VBAP’.
ls_fieldcat-seltext_m = ‘SALES UNIT’.
APPEND ls_fieldcat TO lt_fieldcat.
*Displaying ALV Grid Report
v_repid = sy-repid. “Assigning Program name to pass it into Function Module
CALL FUNCTION ‘REUSE_ALV_GRID_DISPLAY’
EXPORTING
i_callback_program = ‘V_REPID’
it_fieldcat = lt_fieldcat
TABLES
t_outtab = lt_vbap
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
OUTPUT
Step 1: Press F8.
Step 2: Press F8 again to see the output.