Sunteți pe pagina 1din 3

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