You are on page 1of 6

A SIMPLE CLASSICAL REPORT PROGRAM

*& Report ZREPORT_DEMO_001 * *& * *&---------------------------------------------------------------------* *& * *& * *&---------------------------------------------------------------------* REPORT ZREPORT_DEMO_001 no standard page heading line-size 195 line-count 95(2).

tables: mara ,makt,marc. *data : matnr type matnr.

types : begin of ty_mara , matnr type mara-matnr, ersda type mara-ersda, ernam type mara-ernam, end of ty_mara, begin of ty_makt , matnr type mara-matnr, maktx type makt-maktx, end of ty_makt, begin of ty_marc, matnr type marc-matnr, werks type marc-werks, end of ty_marc. data: wt_ty_mara type standard table of ty_mara with header line, wa_ty_mara type ty_mara, wt_ty_makt type standard table of ty_makt with header line, wa_ty_makt type ty_makt, wt_ty_marc type standard table of ty_marc with header line, wa_ty_marc type ty_marc .

types : begin of ty_final, matnr type mara-matnr,"material no. ersda type mara-ersda,"created on ernam type mara-ernam," created by maktx type makt-maktx,"material description werks type marc-werks, "plant end of ty_final.

data: wt_ty_final type standard table of ty_final with header line, wa_ty_final type ty_final . "at slection screen selection-screen begin of block b1 with frame title text-001. select-options: s_matnr for mara-matnr, cr_date for mara-ersda, cr_by for mara-ernam, s_matdes for makt-maktx, s_plant for marc-werks. selection-screen end of block b1. start-of-selection. perform read. perform display_data. form read. select matnr ersda ernam from mara into table wt_ty_mara where matnr in s_m atnr and ersda in cr_ date and ernam in cr_ by. check wt_ty_mara[] is not initial. select matnr maktx from makt into table wt_ty_makt for all entries in wt_ty _mara where matnr = wt_ty_mara-matnr and maktx in s_matdes.

select matnr werks from marc into table wt_ty_marc for all entries in wt_ty _mara where matnr = wt_ty_mara-matnr and werks in s_plant. *data: ersda type ersda. sort wt_ty_makt by matnr. loop at wt_ty_mara into wa_ty_mara. read table wt_ty_makt into wa_ty_makt with key matnr = wa_ty_maramatnr binary search. if sy-subrc eq 0. wa_ty_final-matnr = wa_ty_makt-matnr. wa_ty_final-maktx = wa_ty_makt-maktx. endif. sort wt_ty_marc by matnr. read table wt_ty_marc into wa_ty_marc with key matnr = wa_ty_maramatnr binary search. if sy-subrc eq 0.

wa_ty_final-matnr = wa_ty_marc-matnr. wa_ty_final-werks = wa_ty_marc-werks. endif. move: wa_ty_mara-matnr to wa_ty_final-matnr, wa_ty_mara-ersda to wa_ty_final-ersda, wa_ty_mara-ernam to wa_ty_final-ernam, wa_ty_makt-maktx to wa_ty_final-maktx, wa_ty_marc-werks to wa_ty_final-werks. append wa_ty_final to wt_ty_final.clear wa_ty_final. endloop. endform.

form display_data. loop at wt_ty_final into wa_ty_final. write:/10 30 45 55 70 endloop. endform. wa_ty_final-matnr color 1, wa_ty_final-ersda color 2, wa_ty_final-ernam , wa_ty_final-maktx, wa_ty_final-werks.

SIMPLE CLASSICAL REPORT WITH INDEX IN THE OUTPUT


*&---------------------------------------------------------------------* *& Report ZREPORT_DEMO_010 * *& * *&---------------------------------------------------------------------* *& * *& * *&---------------------------------------------------------------------* REPORT ZREPORT_DEMO_010 no standard page heading line-size 195 line-count 95(2).

tables: mara ,makt,marc.

*data :

matnr type matnr.

types : begin of ty_mara , matnr type mara-matnr, ersda type mara-ersda, ernam type mara-ernam, end of ty_mara, begin of ty_makt ,

matnr type mara-matnr, maktx type makt-maktx, end of ty_makt, begin of ty_marc, matnr type marc-matnr, werks type marc-werks, end of ty_marc. data: wt_ty_mara type standard table of ty_mara with header line, wa_ty_mara type ty_mara, wt_ty_makt type standard table of ty_makt with header line, wa_ty_makt type ty_makt, wt_ty_marc type standard table of ty_marc with header line, wa_ty_marc type ty_marc . types : begin of ty_final, matnr type mara-matnr,"material no. ersda type mara-ersda,"created on ernam type mara-ernam," created by maktx type makt-maktx,"material description werks type marc-werks, "plant end of ty_final. data: wt_ty_final type standard table of ty_final with header line, wa_ty_final type ty_final . data: wa_ty_final-slno type sy-tabix. "at slection screen selection-screen begin of block b1 with frame title text-001. select-options: s_matnr for mara-matnr, cr_date for mara-ersda, cr_by for mara-ernam, s_matdes for makt-maktx, s_plant for marc-werks. selection-screen end of block b1. start-of-selection. perform read. *perform indexing. perform display_data.

form read. select matnr ersda ernam from mara into table wt_ty_mara where matnr in s_m atnr and ersda in cr_ date and ernam in cr_

by. check wt_ty_mara[] is not initial. select matnr maktx from makt into table wt_ty_makt for all entries in wt_ty _mara where matnr = wt_ty_mara-matnr and maktx in s_matdes.

select matnr werks from marc into table wt_ty_marc for all entries in wt_ty _mara where matnr = wt_ty_mara-matnr and werks in s_plant. *data: ersda type ersda. sort wt_ty_makt by matnr. loop at wt_ty_mara into wa_ty_mara. read table wt_ty_makt into wa_ty_makt with key matnr = wa_ty_maramatnr binary search. if sy-subrc eq 0. wa_ty_final-matnr = wa_ty_makt-matnr. wa_ty_final-maktx = wa_ty_makt-maktx. endif. sort wt_ty_marc by matnr. read table wt_ty_marc into wa_ty_marc with key matnr = wa_ty_maramatnr binary search. if sy-subrc eq 0. wa_ty_final-matnr = wa_ty_marc-matnr. wa_ty_final-werks = wa_ty_marc-werks. endif. move: wa_ty_mara-matnr to wa_ty_final-matnr, wa_ty_mara-ersda to wa_ty_final-ersda, wa_ty_mara-ernam to wa_ty_final-ernam, wa_ty_makt-maktx to wa_ty_final-maktx, wa_ty_marc-werks to wa_ty_final-werks. append wa_ty_final to wt_ty_final.clear wa_ty_final. endloop. endform.

form display_data. loop at wt_ty_final into wa_ty_final.

write:/1 wa_ty_final-slno, 15 wa_ty_final-matnr 35 wa_ty_final-ersda 50 wa_ty_final-ernam 60 wa_ty_final-maktx

color 1, color 2, , ,

70 wa_ty_final-werks . wa_ty_final-slno = sy-tabix. modify wt_ty_final index sy-tabix.

endloop. endform.

You might also like