2. Isi Title dengan "Latihan Report 1" dan Type dengan "1 Executable program" lalu Save.
3. Pilih Local object.
4. Ketikkan source code berikut:
REPORT zreport1 no standard page heading.
TABLES : zappmm_kecamatan, zappmm_kabupaten.
DEFINE macro_data_possition.
if &1 = 'HEADER'.
write : /'|' no-gap,(12) &2 centered,
'|' no-gap,(30) &3 centered,
'|' no-gap,(12) &4 centered,
'|' no-gap,(30) &5 centered,
'|' no-gap,(10) &6 centered,
'|' no-gap,(10) &7 centered,
'|' no-gap.
else.
write : /'|' no-gap,(12) &2 centered,
'|' no-gap,(30) &3 ,
'|' no-gap,(12) &4 centered,
'|' no-gap,(30) &5 ,
'|' no-gap,(10) &6 centered,
'|' no-gap,(10) &7 ,
'|' no-gap.
endif.
END-OF-DEFINITION.
TYPES : BEGIN OF ty_gab,
kd_kec LIKE zappmm_kecamatan-kd_kec,
nm_kec LIKE zappmm_kecamatan-nm_kec,
kd_kab LIKE zappmm_kecamatan-kd_kab,
nm_kab LIKE zappmm_kabupaten-nm_kab,
ersda LIKE zappmm_kecamatan-ersda,
ernam LIKE zappmm_kecamatan-ernam,
END OF ty_gab.
DATA : gi_kec LIKE STANDARD TABLE OF zappmm_kecamatan WITH HEADER LINE,
gi_kab LIKE STANDARD TABLE OF zappmm_kabupaten WITH HEADER LINE,
gi_gab TYPE STANDARD TABLE OF ty_gab WITH HEADER LINE.
DATA: gv_width TYPE i. " Width of list
SELECTION-SCREEN: BEGIN OF BLOCK head1 WITH FRAME TITLE text-101.
SELECT-OPTIONS so_kab FOR zappmm_kabupaten-kd_kab.
SELECT-OPTIONS so_kec FOR zappmm_kecamatan-kd_kec.
SELECTION-SCREEN: END OF BLOCK head1.
START-OF-SELECTION.
gv_width = 117.
PERFORM fm_collect_data.
PERFORM fm_process_data.
PERFORM fm_display_data.
END-OF-SELECTION.
FORM : fm_collect_data.
SELECT * INTO CORRESPONDING FIELDS OF TABLE gi_gab
FROM zappmm_kecamatan
WHERE kd_kec IN so_kec AND
kd_kab IN so_kab.
IF gi_gab NE ''.
SELECT * INTO CORRESPONDING FIELDS OF TABLE gi_kab
FROM zappmm_kabupaten
FOR ALL ENTRIES IN gi_gab
WHERE kd_kab = gi_gab-kd_kab.
ENDIF.
ENDFORM.
FORM: fm_process_data.
LOOP AT gi_gab.
READ TABLE gi_kab WITH KEY kd_kab = gi_gab-kd_kab.
IF sy-subrc = 0.
gi_gab-nm_kab = gi_kab-nm_kab.
ENDIF.
MODIFY gi_gab.
ENDLOOP.
ENDFORM.
FORM : fm_display_data.
ULINE AT (gv_width). " Upper frame border
FORMAT COLOR COL_HEADING INTENSIFIED. " Title color
macro_data_possition : 'HEADER' 'KD Kecamatan' 'Nama Kecamatan'
'KD Kabupaten' 'Nama Kabupaten' 'Creaed On' 'Created By'.
WRITE: AT gv_width sy-vline. " Right border
ULINE AT (gv_width). " Line below titles
FORMAT COLOR OFF.
LOOP AT gi_gab.
macro_data_possition : 'CONTENT'
gi_gab-kd_kec
gi_gab-nm_kec
gi_gab-kd_kab
gi_gab-nm_kab
gi_gab-ersda
gi_gab-ernam.
ENDLOOP.
ULINE AT (gv_width). " Line below last data
ENDFORM.
5. Aktifkan program dengan cara tekan shift + f3 atau


6. Execute sekali lagi atau tekan f8

Tidak ada komentar:
Posting Komentar