|
Report (201) - Create Multiple Pages |
Home | ||||
|
Previous Next | |||||
Sebelum REPORT ypractice_101.
Setelah REPORT ypractice_201 NO STANDARD PAGE HEADING.
Sebelum *----------------------------------------------------------------------* *Input Screen/Selection *----------------------------------------------------------------------* SELECT-OPTIONS so_matkl FOR mara-matkl. SELECT-OPTIONS so_matnr FOR mara-matnr.
Setelah *----------------------------------------------------------------------* *Input Screen/Selection *----------------------------------------------------------------------* SELECTION-SCREEN BEGIN OF BLOCK groupbox1 WITH FRAME TITLE text_101. "Declare Group Box 1
SELECTION-SCREEN BEGIN OF LINE. SELECTION-SCREEN COMMENT 1(18) text_102 FOR FIELD so_matkl. SELECT-OPTIONS so_matkl FOR mara-matkl. SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE. SELECTION-SCREEN COMMENT 1(18) text_103 FOR FIELD so_matnr. SELECT-OPTIONS so_matnr FOR mara-matnr. SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK groupbox1. "End Group Box 1
SELECTION-SCREEN BEGIN OF BLOCK groupbox2 WITH FRAME TITLE text_201. "Declare Group Box 2
SELECTION-SCREEN BEGIN OF LINE. SELECTION-SCREEN COMMENT 1(18) text_202 FOR FIELD p_mwidth. PARAMETERS p_mwidth TYPE n DEFAULT 113 LENGTH 4. SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN BEGIN OF LINE. SELECTION-SCREEN COMMENT 1(18) text_203 FOR FIELD p_mline . PARAMETERS p_mline TYPE n DEFAULT 30 LENGTH 4. SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK groupbox2. "End Group Box 2
*----------------------------------------------------------------------* *EVENT *----------------------------------------------------------------------* AT SELECTION-SCREEN OUTPUT. text_101 = 'Selection Parameter'. text_102 = 'Material Group'. text_103 = 'Material Number'.
text_201 = 'Page Setup'. text_202 = 'Max. Width'. text_203 = 'Max. Line per Page'.
*----------------------------------------------------------------------* *INITIALIZATION *----------------------------------------------------------------------* INITIALIZATION.
Sebelum *======================================================================* *MAIN PROGRAM *Execute after Input Screen *======================================================================* START-OF-SELECTION. gv_width = 113. PERFORM fm_collect_data. PERFORM fm_process_data. PERFORM fm_display_data.
END-OF-SELECTION.
Sesudah *======================================================================* *MAIN PROGRAM *Execute after Input Screen *======================================================================* START-OF-SELECTION. NEW-PAGE LINE-SIZE p_mwidth. NEW-PAGE LINE-COUNT p_mline.
PERFORM fm_collect_data. PERFORM fm_process_data. PERFORM fm_display_data.
END-OF-SELECTION.
Sebelum *&--------------------------------------------------------------------* *& Form fm_display_data *&--------------------------------------------------------------------* * text *---------------------------------------------------------------------* FORM fm_display_data. * Membuat Teks header ULINE AT (gv_width). " Upper frame border FORMAT COLOR COL_HEADING INTENSIFIED. " Title color macro_data_possition : 'HEADER' 'Mat. Group' 'Mat. No.' 'Description' 'Old Mat. No.' 'Base Unit' 'Measure'. WRITE: AT gv_width sy-vline. " Right border ULINE AT (gv_width). " Line below titles FORMAT COLOR OFF.
* Menampilkan Data ke Screen LOOP AT gi_header. macro_data_possition : 'CONTENT' gi_header-matkl gi_header-matnr gi_header-maktx gi_header-bismt gi_header-meins gi_header-mseht. ENDLOOP.
* Akhir dari Line ULINE AT (gv_width). " Line below last data
ENDFORM. "fm_display_data
Setelah *&--------------------------------------------------------------------* *& Form fm_display_data *&--------------------------------------------------------------------* * text *---------------------------------------------------------------------* FORM fm_display_data. DATA: lv_total_data TYPE i, lv_header_line TYPE i, lv_footer_line TYPE i, lv_max_content TYPE i, lv_max_data TYPE i, lv_page_count TYPE i. " LENGTH 4.
* Menghitung Total Halaman lv_total_data = LINES( gi_header ). * DESCRIBE TABLE gi_header LINES lv_total_data. " For SAP 4.6C
lv_header_line = 3. "Change the value if you add a new header line lv_footer_line = 3. lv_max_content = p_mline - lv_header_line - lv_footer_line. lv_max_data = p_mline - lv_footer_line. lv_page_count = ( lv_total_data DIV lv_max_content ) + 1.
lv_max_content = lv_max_content + ( lv_header_line - 2 ).
* Menampilkan Data ke Layar LOOP AT gi_header. macro_data_possition : 'CONTENT' gi_header-matkl gi_header-matnr gi_header-maktx gi_header-bismt gi_header-meins gi_header-mseht. IF sy-linno = lv_max_data. PERFORM fm_footer USING lv_page_count.
NEW-PAGE. ENDIF. ENDLOOP.
* Membuat Footer Akhir IF ( sy-linno < lv_max_content ) or ( sy-linno > lv_footer_line ). PERFORM fm_footer USING lv_page_count. ENDIF.
ENDFORM. "fm_display_data
*&--------------------------------------------------------------------* *& Form fm_footer *&--------------------------------------------------------------------* * text *---------------------------------------------------------------------* * -->FV_PAGE_COUtext *---------------------------------------------------------------------* FORM fm_footer USING fv_page_count. * Membuat Teks Footer ( 3 Baris ) ULINE AT (p_mwidth). " Upper frame border FORMAT COLOR COL_TOTAL INTENSIFIED. " Footer color WRITE : /'|' NO-GAP, 'Page : ' NO-GAP, (4) sy-pagno NO-GAP, '/', (4) fv_page_count NO-GAP. WRITE: AT p_mwidth sy-vline. " Right border ULINE AT (p_mwidth). " Line below titles FORMAT COLOR OFF. ENDFORM. "fm_footer
*======================================================================* *STANDARD EVENT *======================================================================*
*----------------------------------------------------------------------* *Page Header *----------------------------------------------------------------------* TOP-OF-PAGE. * Membuat Teks Header ( 3 Baris ) ULINE AT (p_mwidth). " Upper frame border FORMAT COLOR COL_HEADING INTENSIFIED. " Title color macro_data_possition : 'HEADER' 'Mat. Group' 'Mat. No.' 'Description' 'Old Mat. No.' 'Base Unit' 'Measure'. ULINE AT (p_mwidth). " Line below titles FORMAT COLOR OFF.
|
| User Threads | New Thread ( Only for Donators ) |
|
|
|||
| Threads | Last Post | Replies | Views |
|
|
|||