You are on page 1of 4

Developing simple interactive report

“In this scenario, we would take an example of a material and develop an interactive report. Once you
click on require “material no” on the basic list, the corresponding material information on the secondary
list.”
Following is a sample interactive report developed for our demo purpose:
 REPORT  zintractive                             .
TYPES : BEGIN OF str_mard,
matnr TYPE mard-matnr,
lgort TYPE mard-lgort,
werks TYPE mard-werks,
END OF str_mard.

DATA : wa_mard TYPE str_mard,


it_mard TYPE TABLE OF str_mard.

TYPES : BEGIN OF str_makt,


matnr TYPE makt-matnr,
maktg TYPE makt-maktg,

END OF str_makt.

DATA : wa_makt TYPE str_makt,


it_makt TYPE TABLE OF str_makt.

TYPES : BEGIN OF str_mara,


matnr TYPE mara-matnr,
ersda TYPE mara-ersda,
ernam TYPE mara-ernam,
laeda TYPE mara-laeda,
mtart TYPE mara-mtart,
matkl TYPE mara-matkl,
meins TYPE mara-meins,
END OF str_mara.

DATA : wa_mara TYPE str_mara,


it_mara TYPE TABLE OF str_mara.

TYPES : BEGIN OF str_final,


matnr TYPE mara-matnr,
ersda TYPE mara-ersda,
ernam TYPE mara-ernam,
laeda TYPE mara-laeda,
mtart TYPE mara-mtart,
matkl TYPE mara-matkl,
meins TYPE mara-meins,
lgort TYPE mard-lgort,
werks TYPE mard-werks,
END OF str_final.

DATA: wa_final TYPE str_final,


it_final TYPE TABLE OF str_final.

PARAMETERS : plant TYPE mard-werks,


stor LIKE mard-lgort.

SELECT matnr lgort werks


FROM mard
INTO TABLE it_mard
WHERE lgort = stor AND werks = plant.
.

SELECT matnr maktg


FROM makt
INTO TABLE it_makt FOR ALL ENTRIES IN it_mard
WHERE matnr = it_mard-matnr AND spras = 'E'.

SELECT matnr ersda ernam laeda mtart matkl meins


FROM mara
INTO TABLE it_mara FOR ALL ENTRIES IN it_makt
WHERE matnr = it_makt-matnr.

LOOP AT it_makt INTO wa_makt.


WRITE : /1 wa_makt-matnr COLOR 1,
40 wa_makt-maktg COLOR 2.
HIDE wa_makt-matnr.
ENDLOOP.

CLEAR wa_mard-matnr.

AT LINE-SELECTION.
REFRESH it_final.
CLEAR wa_final.
ULINE.
IF sy-lsind = 1.
WRITE : /1 'MATERIAL NO' COLOR 2,
20 'CREATION DATE' COLOR 3,
32 'PERSON CREATED',
50 'DATE OF LIST' ,
65 'MATERIALTYPE',
80 'MATGROUP' ,
90 'UNITOFMEASURE',
110 'STORLOCATION' COLOR 4,
130 'PLANT' COLOR 5.
ULINE.
ENDIF.

LOOP AT it_mara INTO wa_mara WHERE matnr = wa_makt-matnr.

wa_final-matnr = wa_mara-matnr.
wa_final-ersda = wa_mara-ersda.
wa_final-ernam = wa_mara-ernam.
wa_final-laeda = wa_mara-laeda.
wa_final-mtart = wa_mara-mtart.
wa_final-matkl = wa_mara-matkl.
wa_final-meins = wa_mara-meins.

READ TABLE it_mard INTO wa_mard WITH KEY matnr = wa_makt-matnr.

wa_final-lgort = wa_mard-lgort.
wa_final-werks = wa_mard-werks.
APPEND wa_final TO it_final.

ENDLOOP.

LOOP AT it_final INTO wa_final.

WRITE : /1 wa_final-matnr COLOR 2,


20 wa_final-ersda COLOR 3,
37 wa_final-ernam,
50 wa_final-laeda ,
70 wa_final-mtart ,
85 wa_final-matkl ,
95 wa_final-meins,
115 wa_final-lgort COLOR 4,
130 wa_final-werks COLOR 5.
ENDLOOP.

TOP-OF-PAGE.
WRITE : /1 'MATERIAL NO' COLOR 1,
40 'DISCRIPTION' COLOR 2.
ULINE .

Result 
Enter the “Plant” and “Storage Location”

Press the Execute Button. 

Double Click on require “Material No” which displays secondary list to corresponding material information. 
The result shown below 

You might also like