Sie sind auf Seite 1von 41

*&---------------------------------------------------------------------* *& Include ZSD_INVOICE_PD *& Include ZSD_INVOICE_PD *&---------------------------------------------------------------------* *&---------------------------------------------------------------------* *& Include ZSD_1INVOICE_FORM3 *&---------------------------------------------------------------------* PERFORM get_sales_org.

PERFORM build_cat. PERFORM alv_display. *&---------------------------------------------------------------------* *& Form GET_SALES_ORG *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM get_sales_org . IF p_rb11 = rb1selected. SELECT * FROM zfi_item INTO CORRESPONDING FIELDS OF TABLE it_item WHERE mndd ne c_null. ENDIF. IF p_rb10 = rb1selected. SELECT * FROM zfi_item INTO CORRESPONDING FIELDS OF TABLE it_item WHERE inpd ne c_null and mndd = c_null. ENDIF. IF p_rb9 = rb1selected. SELECT * FROM zfi_item INTO CORRESPONDING FIELDS OF TABLE it_item WHERE cadd ne c_null AND inpd = c_null. ENDIF. IF p_rb8 = rb1selected. SELECT * FROM zfi_item INTO CORRESPONDING FIELDS OF TABLE it_item WHERE pcld ne c_null AND cadd = c_null. ENDIF. IF p_rb7 = rb1selected. SELECT * FROM zfi_item INTO CORRESPONDING FIELDS OF TABLE it_item WHERE ircd ne c _null AND pcld = c_null. ENDIF.

IF p_rb6 = rb1selected. SELECT * FROM zfi_item INTO CORRESPONDING FIELDS OF TABLE it_item WHERE pend ne c_null AND ircd = c_null. ENDIF. IF p_rb5 = rb1selected. SELECT * FROM zfi_item INTO CORRESPONDING FIELDS OF TABLE it_item WHERE insd ne c_null AND pend = c_null. ENDIF. ***** Fetching Sales Order Header Details based on selection-screen **** IF it_item[] IS NOT INITIAL. SELECT vbeln ernam vkorg bukrs_vf erdat FROM vbak INTO TABLE it_vbak FOR ALL ENTRIES IN IT_ITEM WHERE VBELN = IT_ITEM-VBELN_SD. "vbeln IN so_vbeln AND vkorg IN so_vkorg "AND bukrs_vf IN so_bukrs. *****Fetching Sales Items for all entries in it_vbak internal table **** IF it_vbak[] IS NOT INITIAL. SELECT vbeln posnr netwr erdat FROM vbap INTO TABLE it_vbap FOR ALL ENTRIES IN it_vbak WHERE vbeln = it_vbak-vbeln. ENDIF. **********Fetching Billing Doc Numbers according to sales Items******** IF it_vbap[] IS NOT INITIAL. SELECT vbeln posnr netwr aubel"Sales Document aupos"Sales Document Item

vkorg_auft erdat vgtyp mwsbp FROM vbrp INTO TABLE it_vbrp FOR ALL ENTRIES IN it_vbap WHERE aubel = it_vbap-vbeln AND vgtyp NE 'N'. * DELETE it_vbrp WHERE vgtyp = 'N'. ENDIF. IF it_vbrp IS NOT INITIAL. SELECT * FROM zfi_item INTO TABLE it_item FOR ALL ENTRIES IN it_vbrp" WHERE vbeln_sd = it_vbrp-aubel AND posnr = it_vbrp-posnr." and vbeln_in = it_vbrp-vbeln. ENDIF. SELECT id name FROM icon INTO TABLE it_icon WHERE name = text-107 OR name = text-108 OR name = text-109." REFRESH it_vbrk. CLEAR wa_vbrk. IF it_vbrp[] IS NOT INITIAL. SELECT vbeln vbtyp waerk fkdat gjahr netwr sfakn FROM vbrk INTO TABLE it_vbrk FOR ALL ENTRIES IN it_vbrp WHERE vbeln = it_vbrp-vbeln. IF it_vbrp IS INITIAL. MESSAGE text-111 TYPE 'S'. ENDIF. loop at it_vbak into wa_vbak. so_bukrs = wa_vbak-bukrs_vf. **************************to find the FI Reversal********************* SELECT bukrs belnr blart stblg FROM bkpf INTO TABLE it_bkpf FOR ALL ENTRIES IN it_vbrp * WHERE bukrs IN so_bukrs AND belnr = it_vbrp-vbeln .

WHERE bukrs = so_bukrs AND belnr = it_vbrp-vbeln . WHERE belnr = it_vbrp-vbeln .

*endloop. *************************to find the FI Reversal********************** SELECT vbeln posnr parvw pernr FROM vbpa INTO TABLE it_vbpa FOR ALL ENTRIES IN it_vbrp WHERE vbeln = it_vbrp-aubel. IF it_vbpa[] IS NOT INITIAL. SELECT pernr sname FROM pa0001 INTO TABLE it_pa0001 FOR ALL ENTRIES IN it_vbpa WHERE pernr = it_vbpa-pernr. ENDIF. endloop. CLEAR wa_vbrk. LOOP AT it_vbrk INTO wa_vbrk WHERE vbtyp = 'N'. * DELETE it_vbrp WHERE vbeln = wa_vbrk-vbeln. DELETE it_vbrp WHERE vbeln = wa_vbrk-sfakn. ENDLOOP. LOOP AT it_bkpf INTO wa_bkpf WHERE stblg IS NOT INITIAL. DELETE it_vbrp WHERE vbeln = wa_bkpf-belnr . ENDLOOP. SELECT bukrs augbl gjahr belnr waers blart shkzg dmbtr vbeln wrbtr

FROM bsid INTO TABLE it_bsid FOR ALL ENTRIES IN it_vbrp WHERE vbeln = it_vbrp-vbeln AND blart NE 'AB'. SELECT bukrs augbl gjahr belnr waers blart shkzg dmbtr vbeln wrbtr FROM bsid INTO TABLE it_bsid_ab FOR ALL ENTRIES IN it_vbrp WHERE vbeln = it_vbrp-vbeln AND blart = 'AB'.

SELECT bukrs augbl gjahr belnr waers blart shkzg dmbtr wrbtr vbeln pswbt FROM bsad INTO TABLE it_bsad FOR ALL ENTRIES IN it_vbrp WHERE vbeln = it_vbrp-vbeln AND blart NE 'AB'. ENDIF. DATA: it_bsid_1 TYPE STANDARD TABLE OF s_bsid," it_bsad_1 TYPE STANDARD TABLE OF s_bsad, wa_bsad_1 TYPE s_bsad, wa_bsid_1 TYPE s_bsid." it_bsid_1 = it_bsid. it_bsad_1 = it_bsad.

CLEAR : it_all,it_all[]. CLEAR: wa_bsid ,wa_bsad,wa_vbrk. DATA: lv_vbeln1 TYPE vbeln_vf. LOOP AT it_vbrp INTO wa_vbrp. wa_all-aubel = wa_vbrp-aubel. wa_all-sitem = wa_vbrp-aupos. wa_all-vkorg_auft = wa_vbrp-vkorg_auft. READ TABLE it_vbak INTO wa_vbak WITH KEY vbeln = wa_vbrp-aubel. wa_all-bukrs = wa_vbak-bukrs_vf.

READ TABLE it_vbrk INTO wa_vbrk WITH KEY vbeln = wa_vbrp-vbeln . wa_all-fkdat = wa_vbrk-fkdat. wa_all-waerk = wa_vbrk-waerk. READ TABLE it_vbpa INTO wa_vbpa WITH KEY vbeln = wa_vbrp-aubel. wa_all-parvw = wa_vbpa-parvw. wa_all-pernr = wa_vbpa-pernr. READ TABLE it_pa0001 INTO wa_pa0001 WITH KEY pernr = wa_vbpa-pernr. wa_all-sname = wa_pa0001-sname. CLEAR zfi_item-uname. CLEAR zfi_item-tstmpd. CLEAR zfi_item-tmstmp. CLEAR zfi_item-comment1. READ TABLE it_item INTO zfi_item WITH KEY vbeln_in = wa_vbrp-vbeln posnr = wa_vbrpposnr. CASE sy-subrc. WHEN 0. IF zfi_item-icond+0(3) = '@08'. READ TABLE it_icon INTO wa_icon WITH KEY name = text-107. wa_all-color = wa_icon-id. wa_all-s_text = text-005.

ELSEIF zfi_item-icond+0(3) = '@0A'. READ TABLE it_icon INTO wa_icon WITH KEY name = text-108. wa_all-color = wa_icon-id. wa_all-s_text = text-008. ELSEIF zfi_item-icond+0(3) = '@09'. READ TABLE it_icon INTO wa_icon WITH KEY name = text-109. wa_all-color = wa_icon-id. wa_all-s_text = text-007. ENDIF. WHEN OTHERS. CLEAR wa_all-color. CLEAR wa_all-s_text. READ TABLE it_icon INTO wa_icon WITH KEY name = text-108. wa_all-color = wa_icon-id. wa_all-s_text = text-008. ENDCASE. *********************************************************************************** * wa_all-comment1 = zfi_item-comment1. wa_all-uname = zfi_item-uname.

**************************added time stamp************************** CONCATENATE zfi_item-tstmpd zfi_item-tmstmp INTO l_tot. l_str = 0. CONCATENATE l_tot+6(2) ':' l_tot+4(2) ':' l_tot+0(4) l_str l_tot+8(2) ':' l_tot+10(2) ':' l_tot+12(2) INTO l_final .

CONCATENATE l_final+0(10) l_final+12(10) INTO l_get SEPARATED BY space. **************************************************************************** wa_all-l_get = l_get. DATA:lv_belnr TYPE belnr_d. lv_vbeln1 = wa_vbrp-vbeln. LOOP AT it_bsad_1 INTO wa_bsad. lv_belnr = wa_bsad-belnr. IF wa_bsad-vbeln = lv_vbeln1. wa_all-bstat = text-093. wa_all-augbl = wa_bsad-augbl."clearing document wa_all-gjahr = wa_bsad-gjahr."year wa_all-belnr = wa_bsad-belnr."Fi Document wa_all-waers = wa_bsad-waers."currency wa_all-blart = wa_bsad-blart."document type wa_all-shkzg = wa_bsad-shkzg."credit/debit indicator wa_all-dmbtr = wa_bsad-dmbtr."Net Amount wa_all-wrbtr = wa_bsad-wrbtr."Cleared Amount wa_all-vbeln = wa_bsad-vbeln." Cleared Invocies wa_all-pswbt = wa_bsad-pswbt."Tax amount * IF wa_bsad-vbeln <> ' '. wa_all-vbeln = lv_vbeln1."Cleared Billing Document Number ELSE. wa_all-vbeln = wa_vbrp-vbeln."All Document Number ENDIF. APPEND wa_all TO it_all. ENDIF. ENDLOOP. CLEAR lv_vbeln1. CLEAR wa_all. SORT it_all DESCENDING BY sitem vbeln belnr ." DELETE ADJACENT DUPLICATES FROM it_all COMPARING sitem vbeln belnr augbl. ENDLOOP. DATA: lv_check(1) TYPE c, wa_all_2 TYPE s_all. lv_check = ''. LOOP AT it_vbrp INTO wa_vbrp. wa_all-aubel = wa_vbrp-aubel. wa_all-sitem = wa_vbrp-aupos.

wa_all-vkorg_auft = wa_vbrp-vkorg_auft. READ TABLE it_vbak INTO wa_vbak WITH KEY vbeln = wa_vbrp-aubel. wa_all-bukrs = wa_vbak-bukrs_vf.

READ TABLE it_vbrk INTO wa_vbrk WITH KEY vbeln = wa_vbrp-vbeln . wa_all-fkdat = wa_vbrk-fkdat. wa_all-waerk = wa_vbrk-waerk. READ TABLE it_vbpa INTO wa_vbpa WITH KEY vbeln = wa_vbrp-aubel. wa_all-parvw = wa_vbpa-parvw. wa_all-pernr = wa_vbpa-pernr. READ TABLE it_pa0001 INTO wa_pa0001 WITH KEY pernr = wa_vbpa-pernr. wa_all-sname = wa_pa0001-sname. CLEAR zfi_item-uname. CLEAR zfi_item-tstmpd. CLEAR zfi_item-tmstmp. CLEAR zfi_item-comment1. READ TABLE it_item INTO zfi_item WITH KEY vbeln_in = wa_vbrp-vbeln posnr = wa_vbrpposnr. CASE sy-subrc. WHEN 0. IF zfi_item-icond+0(3) = '@08'. READ TABLE it_icon INTO wa_icon WITH KEY name = text-107. wa_all-color = wa_icon-id. wa_all-s_text = text-005. ELSEIF zfi_item-icond+0(3) = '@0A'. READ TABLE it_icon INTO wa_icon WITH KEY name = text-108. wa_all-color = wa_icon-id. wa_all-s_text = text-008.

ELSEIF zfi_item-icond+0(3) = '@09'. READ TABLE it_icon INTO wa_icon WITH KEY name = text-109. wa_all-color = wa_icon-id. wa_all-s_text = text-007. ENDIF. WHEN OTHERS. CLEAR wa_all-color. CLEAR wa_all-s_text. READ TABLE it_icon INTO wa_icon WITH KEY name = text-108. wa_all-color = wa_icon-id. wa_all-s_text = text-008. ENDCASE. *********************************************************************************** * wa_all-comment1 = zfi_item-comment1. wa_all-uname = zfi_item-uname.

**************************added time stamp************************** CONCATENATE zfi_item-tstmpd zfi_item-tmstmp INTO l_tot. l_str = 0. CONCATENATE l_tot+6(2) ':' l_tot+4(2) ':' l_tot+0(4) l_str l_tot+8(2) ':' l_tot+10(2) ':' l_tot+12(2) INTO l_final . CONCATENATE l_final+0(10) l_final+12(10) INTO l_get SEPARATED BY space. **************************************************************************** wa_all-l_get = l_get. DATA: lv_vbeln2 TYPE vbeln_vf, lv_index TYPE n, lv_aubel TYPE vbeln_va, lv_posnr TYPE posnr,

lv_vbeln3 TYPE vbeln_vf, lv_no TYPE n, lv_status TYPE c. lv_vbeln2 = wa_vbrp-vbeln. LOOP AT it_bsid INTO wa_bsid.

IF wa_bsid-vbeln = lv_vbeln2 .

IF wa_bsid-blart = 'DZ'. wa_all-bstat = text-102. ELSEIF wa_bsid-blart = 'RV'. wa_all-bstat = text-094. ENDIF.

wa_all-augbl = wa_bsid-augbl."Partial Clearing Document Number wa_all-gjahr = wa_bsid-gjahr."Year wa_all-belnr = wa_bsid-belnr."FI Document Number wa_all-blart = wa_bsid-blart."Document Type wa_all-shkzg = wa_bsid-shkzg."Credit/Debit Indicator wa_all-dmbtr = wa_bsid-dmbtr."Net Amount wa_all-wrbtr = wa_bsid-wrbtr."Partially Cleared Amount wa_all-waers = wa_bsid-waers."Currency IF wa_bsid-vbeln <> ' '. wa_all-vbeln = wa_bsid-vbeln."Partial cleared Billing Document Number ELSE. wa_all-vbeln = wa_vbrp-vbeln."Other Document ENDIF. wa_all-table_type = 'BSID'. APPEND wa_all TO it_all."p ENDIF. ENDLOOP. CLEAR lv_vbeln2. CLEAR wa_all. SORT it_all DESCENDING BY sitem vbeln belnr . DELETE ADJACENT DUPLICATES FROM it_all COMPARING sitem vbeln belnr augbl. ENDLOOP. DATA: wa_all1 TYPE s_all,

wa_all2 TYPE s_all. CLEAR wa_all. CLEAR wa_all1. CLEAR wa_all2. LOOP AT it_all INTO wa_all. READ TABLE it_all INTO wa_all1 WITH KEY vbeln = wa_all-vbeln blart = 'DZ' table_type = 'BSID'. IF sy-subrc = 0. READ TABLE it_all INTO wa_all2 WITH KEY vbeln = wa_all1-vbeln table_type = 'BSID'. IF sy-subrc = 0. wa_all2-bstat = text-102. ELSE. wa_all2-bstat = text-094. ENDIF. ENDIF. MODIFY it_all FROM wa_all2 TRANSPORTING bstat WHERE vbeln = wa_all2-vbeln AND blart = 'RV' AND table_type = 'BSID'. ENDLOOP. LOOP AT it_vbrp INTO wa_vbrp. READ TABLE it_all INTO wa_all WITH KEY vbeln = wa_vbrp-vbeln. IF sy-subrc <> 0. wa_all-aubel = wa_vbrp-aubel. wa_all-sitem = wa_vbrp-aupos. wa_all-vkorg_auft = wa_vbrp-vkorg_auft. READ TABLE it_vbak INTO wa_vbak WITH KEY vbeln = wa_vbrp-aubel. wa_all-bukrs = wa_vbak-bukrs_vf.

READ TABLE it_vbrk INTO wa_vbrk WITH KEY vbeln = wa_vbrp-vbeln . wa_all-fkdat = wa_vbrk-fkdat. wa_all-waerk = wa_vbrk-waerk. READ TABLE it_vbpa INTO wa_vbpa WITH KEY vbeln = wa_vbrp-aubel. wa_all-parvw = wa_vbpa-parvw. wa_all-pernr = wa_vbpa-pernr.

READ TABLE it_pa0001 INTO wa_pa0001 WITH KEY pernr = wa_vbpa-pernr. wa_all-sname = wa_pa0001-sname. CLEAR zfi_item-uname. CLEAR zfi_item-tstmpd. CLEAR zfi_item-tmstmp. CLEAR zfi_item-comment1. READ TABLE it_item INTO zfi_item WITH KEY vbeln_in = wa_vbrp-vbeln posnr = wa_vbrpposnr. CASE sy-subrc. WHEN 0. IF zfi_item-icond+0(3) = '@08'. READ TABLE it_icon INTO wa_icon WITH KEY name = text-107. wa_all-color = wa_icon-id. wa_all-s_text = text-005. ELSEIF zfi_item-icond+0(3) = '@0A'. READ TABLE it_icon INTO wa_icon WITH KEY name = text-108. wa_all-color = wa_icon-id. wa_all-s_text = text-008. ELSEIF zfi_item-icond+0(3) = '@09'. READ TABLE it_icon INTO wa_icon WITH KEY name = text-109. wa_all-color = wa_icon-id. wa_all-s_text = text-007. ENDIF. WHEN OTHERS. CLEAR wa_all-color. CLEAR wa_all-s_text. READ TABLE it_icon INTO wa_icon WITH KEY name = text-108. wa_all-color = wa_icon-id. wa_all-s_text = text-008.

ENDCASE. *********************************************************************************** * wa_all-comment1 = zfi_item-comment1. wa_all-uname = zfi_item-uname.

**************************added time stamp************************** CONCATENATE zfi_item-tstmpd zfi_item-tmstmp INTO l_tot. l_str = 0. CONCATENATE l_tot+6(2) ':' l_tot+4(2) ':' l_tot+0(4) l_str l_tot+8(2) ':' l_tot+10(2) ':' l_tot+12(2) INTO l_final . CONCATENATE l_final+0(10) l_final+12(10) INTO l_get SEPARATED BY space. **************************************************************************** wa_all-l_get = l_get. wa_all-vbeln = wa_vbrp-vbeln."All Document Number * APPEND wa_all TO it_all. APPEND wa_all TO it_all. ENDIF. CLEAR wa_all. CLEAR wa_vbrk. ENDLOOP. CLEAR lv_vbeln1. LOOP AT it_bsid_ab INTO wa_bsid_ab. lv_vbeln1 = wa_bsid_ab-vbeln. LOOP AT it_bsid_ab INTO wa_bsid_ab1 . IF wa_bsid_ab1-vbeln = lv_vbeln1 AND wa_bsid_ab1-blart = 'AB'. wa_all-dmbtr_ab = wa_all-dmbtr_ab + wa_bsid_ab1-dmbtr. ENDIF. ENDLOOP. MODIFY it_all FROM wa_all TRANSPORTING dmbtr_ab WHERE vbeln = wa_bsid_ab-vbeln AN

D blart = 'RV'. ENDLOOP. SORT it_all DESCENDING BY sitem vbeln belnr . DELETE ADJACENT DUPLICATES FROM it_all COMPARING sitem vbeln belnr augbl.

SORT it_all BY vbeln blart. SELECT vbeln posnr parvw pernr FROM vbpa INTO TABLE it_vbpa FOR ALL ENTRIES IN it_vbrp WHERE vbeln = it_vbrp-aubel. IF it_vbpa[] IS NOT INITIAL. SELECT pernr sname FROM pa0001 INTO TABLE it_pa0001 FOR ALL ENTRIES IN it_vbpa WHERE pernr = it_vbpa-pernr. ENDIF. CLEAR: it_final,it_final[]. SORT it_all BY belnr. DATA: lv_vbeln TYPE vbeln_vf, lv_dmbtr TYPE dmbtr. DATA: wa_all_1 TYPE s_all, lv_belnr1 TYPE belnr_d. LOOP AT it_all INTO wa_all. lv_vbeln = wa_all-vbeln. IF wa_all-blart = 'RV' AND wa_all-shkzg = 'S'. lv_dmbtr = wa_all-dmbtr. lv_belnr = wa_all-belnr. ENDIF. lv_belnr1 = wa_all-belnr. LOOP AT it_all INTO wa_all_1. IF wa_all_1-vbeln = lv_vbeln AND wa_all_1-belnr = lv_belnr1. wa_final-dmbtr = lv_dmbtr.

wa_final-belnr = lv_belnr. IF wa_all_1-blart = 'DZ' AND wa_all_1-shkzg = 'H'. wa_final-augbl = wa_all_1-belnr. wa_final-wrbtr = wa_all_1-dmbtr. ENDIF. ENDIF. ENDLOOP. CLEAR lv_vbeln. CLEAR lv_belnr. CLEAR lv_dmbtr. wa_final-aubel = wa_all-aubel. "Sales Order wa_final-bukrs_vf = wa_all-bukrs. "Company Code wa_final-gjahr = wa_all-gjahr. wa_final-shkzg = wa_all-shkzg. wa_final-vbeln = wa_all-vbeln. "Billing Doc Number wa_final-aupos = wa_all-sitem. wa_final-fkdat = wa_all-fkdat. wa_final-waerk = wa_all-waerk. wa_final-comment1 = wa_all-comment1. wa_final-uname = wa_all-uname. wa_final-parvw = wa_all-parvw. wa_final-pernr = wa_all-pernr. wa_final-sname = wa_all-sname. wa_final-l_get = wa_all-l_get. wa_final-vkorg = wa_all-vkorg_auft. wa_final-color = wa_all-color. wa_final-s_text = wa_all-s_text. wa_final-bstat = wa_all-bstat. wa_final-waers = wa_all-waers. wa_final-dmbtr_ab = wa_all-dmbtr_ab. CLEAR : wa_vbrp, wa_bsad, wa_vbak, wa_vbrk, wa_vbpa. IF wa_final-vbeln IS NOT INITIAL AND wa_final-belnr IS INITIAL AND wa_final-dmbtr IS INITIAL AND wa_final-augbl IS INITIAL AND wa_final-wrbtr IS INITIAL. wa_final-bstat = text-094. ENDIF. APPEND wa_final TO it_final. CLEAR : wa_all, wa_final. ENDLOOP.

SORT it_final DESCENDING BY aupos vbeln belnr. DELETE ADJACENT DUPLICATES FROM it_final COMPARING aubel aupos vbeln augbl wrbtr. DELETE it_final WHERE bstat = ''. DATA: lv_line_no TYPE n, wa_final1 TYPE s_final. loop at it_vbrk into wa_vbrk. so_fkdat = wa_vbrk-fkdat. *DELETE it_final WHERE fkdat NOT BETWEEN so_fkdat-low AND so_fkdat-high. IF p_rb2 = 'X'. DELETE it_final WHERE bstat = text-093 OR bstat = text-094 . ELSEIF p_rb3 = 'X'. DELETE it_final WHERE bstat = text-102 OR bstat = text-094. * ELSEIF p_rb1 = 'X'. DELETE it_final WHERE bstat = text-102 OR bstat = text-093 . ENDIF. endloop. wa_event-name = 'TOP_OF_PAGE'. wa_event-form = 'TOP'. APPEND wa_event TO it_events. wa_event-name = 'USER_COMMAND'. wa_event-form = 'INTERACTIVE_CMD'. APPEND wa_event TO it_events. layout-colwidth_optimize = 'X'. layout-zebra = 'X'. ENDIF. ENDFORM. " GET_SALES_ORG *&---------------------------------------------------------------------* *& Form ALV_DISPLAY *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * --> p1 text * <-- p2 text *----------------------------------------------------------------------* FORM alv_display . CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' EXPORTING

i_callback_program = sy-cprog i_callback_user_command = 'INTERACTIVE_CMD' is_layout = layout it_fieldcat = it_fieldcat it_sort = it_sort i_save = 'A' it_events = it_events TABLES t_outtab = it_final. ENDFORM. " ALV_DISPLAY

*&---------------------------------------------------------------------* *& Form top *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM top. REFRESH it_list. wa_list-info = text-009. wa_list-typ = 'H'. * **********************, APPEND wa_list TO it_list. CLEAR wa_list. wa_list-typ = 'S'. wa_list-key = text-095 . "'Date:'. WRITE sy-datum TO wa_list-info MM/DD/YYYY. APPEND wa_list TO it_list. CLEAR wa_list. wa_list-typ = 'S'. wa_list-key = text-096. "'Time:'. WRITE sy-uzeit TO wa_list-info USING EDIT MASK '__:__:__'. * *************************** APPEND wa_list TO it_list. CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE' EXPORTING it_list_commentary = it_list i_logo = 'ENTEG'. ENDFORM. "top *&---------------------------------------------------------------------* *& Form BUILD_CATALOG *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM build_cat . PERFORM build_catalog USING : 'VKORG' text-010 4 'IT_FINAL',

'BUKRS_VF' text-011 4 'IT_FINAL'," 'AUBEL' text-012 10 'IT_FINAL', 'AUPOS' text-013 6 'IT_FINAL', 'VBELN' text-014 10 'IT_FINAL', 'BSTAT' text-015 35 'IT_FINAL', 'WRBTR' text-060 13 'IT_FINAL', 'MWSBP' text-110 13 'IT_FINAL', 'WAERS' text-017 5 'IT_FINAL', 'FKDAT' text-018 8 'IT_FINAL', 'S_TEXT' text-019 12 'IT_FINAL', 'COLOR' text-020 4 'IT_FINAL', 'AUGBL' text-025 10 'IT_FINAL', 'BELNR' text-026 10 'IT_FINAL', 'DMBTR' text-016 13 'IT_FINAL', 'SNAME' text-028 30 'IT_FINAL', 'UNAME' text-091 12 'IT_FINAL', 'COMMENT1' text-105 40 'IT_FINAL', 'L_GET' text-106 30 'IT_FINAL', 'DMBTR_AB' text-128 30 'IT_FINAL'. ENDFORM. "BUILD_CAT *&---------------------------------------------------------------------* *& Form BUILD_CATALOG *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * -->P1 text * -->P2 text * -->P3 text * -->P4 text *----------------------------------------------------------------------* FORM build_catalog USING p1 p2 p3 p4. CLEAR wa_fieldcat. wa_fieldcat-fieldname = p1. wa_fieldcat-seltext_l = p2. wa_fieldcat-outputlen = p3. wa_fieldcat-tabname = p4. wa_fieldcat-no_zero = 'X'. APPEND wa_fieldcat TO it_fieldcat. CLEAR wa_fieldcat. ENDFORM. " BUILD_CATALOG

*&---------------------------------------------------------------------* *& Form INTERACTIVE_CMD *&---------------------------------------------------------------------*

* text *----------------------------------------------------------------------* * -->I_UCOMM text * -->I_SELFIELD text *----------------------------------------------------------------------* FORM interactive_cmd USING i_ucomm TYPE sy-ucomm i_selfield TYPE slis_selfield. CASE i_ucomm. WHEN '&IC1'. IF i_selfield-sel_tab_field = 'IT_FINAL-AUBEL'. READ TABLE it_final INTO wa_final INDEX i_selfield-tabindex. SET PARAMETER ID 'AUN' FIELD wa_final-aubel. CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN. ELSEIF i_selfield-sel_tab_field = 'IT_FINAL-VBELN'. READ TABLE it_final INTO wa_final INDEX i_selfield-tabindex. SET PARAMETER ID 'VF' FIELD wa_final-vbeln. CALL TRANSACTION 'VF03' AND SKIP FIRST SCREEN. ELSEIF i_selfield-sel_tab_field = 'IT_FINAL-AUGBL'. READ TABLE it_final INTO wa_final INDEX i_selfield-tabindex. SET PARAMETER ID 'BUK' FIELD wa_final-bukrs_vf. SET PARAMETER ID 'BLN' FIELD wa_final-augbl. SET PARAMETER ID 'GJR' FIELD wa_final-gjahr. CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN. ELSEIF i_selfield-sel_tab_field = 'IT_FINAL-BELNR'. READ TABLE it_final INTO wa_final INDEX i_selfield-tabindex. SET PARAMETER ID 'BUK' FIELD wa_final-bukrs_vf. SET PARAMETER ID 'BLN' FIELD wa_final-belnr. SET PARAMETER ID 'GJR' FIELD wa_final-gjahr. CALL TRANSACTION 'FB03' AND SKIP FIRST SCREEN.

**********************For Screen ***************************************** ELSEIF i_selfield-sel_tab_field = 'IT_FINAL-COLOR'. READ TABLE it_final INTO wa_final INDEX i_selfield-tabindex. CLEAR wa_screen. wa_screen-vbeln = wa_final-vbeln . wa_screen-posnr = wa_final-posnr . wa_screen-dmbtr = wa_final-dmbtr . wa_screen-aubel = wa_final-aubel . wa_screen-aupos = wa_final-aupos .

wa_screen-fkdat = wa_final-fkdat. wa_screen-waers = wa_final-waers."waerk. wa_screen-insts = wa_final-insts. wa_screen-status = wa_final-color. wa_screen-sname = wa_final-sname. CASE wa_final-color+0(3). WHEN '@0A'. value = 2. READ TABLE it_icon INTO wa_icon WITH KEY name = text-108. zfi_item-icond = wa_icon-id. wa_screen-status = wa_icon-id. WHEN '@09'. value = 3. READ TABLE it_icon INTO wa_icon WITH KEY name = text-109. zfi_item-icond = wa_icon-id. wa_screen-status = wa_final-color. WHEN '@08'. value = 1. READ TABLE it_icon INTO wa_icon WITH KEY name = text-107. zfi_item-icond = wa_icon-id. wa_screen-status = wa_final-color. ENDCASE. IF wa_final-aubel IS INITIAL." DO i_selfield-tabindex TIMES. i_selfield-tabindex = i_selfield-tabindex - 1. READ TABLE it_final INTO wa_final INDEX i_selfield-tabindex. wa_screen-aubel = wa_final-aubel. IF wa_screen-aubel IS NOT INITIAL. EXIT. ENDIF.

CLEAR wa_final. ENDDO. ENDIF. CALL SCREEN 100. ENDIF. ENDCASE. ENDFORM. "INTERACTIVE_CMD *&---------------------------------------------------------------------* *& Module USER_COMMAND_0100 INPUT *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* MODULE user_command_0100 INPUT. CASE sy-ucomm. WHEN 'BACK' OR 'CANCEL'. LEAVE TO SCREEN 0. WHEN 'EXIT'. LEAVE PROGRAM. ENDCASE. ENDMODULE. " USER_COMMAND_0100 INPUT *&---------------------------------------------------------------------* *& Module STATUS_0100 OUTPUT *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* MODULE status_0100 OUTPUT. SET PF-STATUS 'GUI_100'. DATA: l_graphic_xstr TYPE xstring, l_graphic_conv TYPE i, l_graphic_offs TYPE i. CALL METHOD cl_ssf_xsf_utilities=>get_bds_graphic_as_bmp EXPORTING p_object = 'GRAPHICS' p_name = 'LOGO_ENTEG' "IMAGE NAME - Image name from SE78 p_id = 'BMAP' p_btype = 'BCOL' "(BMON = black&white, BCOL = colour) RECEIVING

p_bmp = l_graphic_xstr EXCEPTIONS not_found = 1 OTHERS = 2. graphic_size = XSTRLEN( l_graphic_xstr ). CHECK graphic_size > 0. l_graphic_conv = graphic_size. l_graphic_offs = 0. WHILE l_graphic_conv > 255. wa_graphic_table-line = l_graphic_xstr+l_graphic_offs(255). APPEND wa_graphic_table TO it_graph. l_graphic_offs = l_graphic_offs + 255. l_graphic_conv = l_graphic_conv - 255. ENDWHILE. wa_graphic_table-line = l_graphic_xstr+l_graphic_offs(l_graphic_conv). APPEND wa_graphic_table TO it_graph. CALL FUNCTION 'DP_CREATE_URL' EXPORTING type = 'IMAGE' "#EC NOTEXT subtype = cndp_sap_tab_unknown " 'X-UNKNOWN' size = graphic_size lifetime = cndp_lifetime_transaction "'T' TABLES data = it_graph CHANGING url = graphic_url EXCEPTIONS OTHERS = 4. IF sy-subrc <> 0. MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. EXIT. ENDIF. CREATE OBJECT h_pic_container EXPORTING container_name = 'ENTEG_LOGO'. CREATE OBJECT h_picture EXPORTING parent = h_pic_container. CALL METHOD h_picture->load_picture_from_url EXPORTING url = graphic_url

IMPORTING RESULT = g_result. ***********FOR LOGO DISPLAY ON MODULE POOL SCREEN**** SELECT * FROM zfi_item INTO TABLE it_item WHERE vbeln_sd = zfi_item-vbeln_sd AND posn r = zfi_item-posnr AND vbeln_in = zfi_item-vbeln_in. CASE value. WHEN 2. icon_name = text-108. icon_text = text-008. WHEN 3. icon_name = text-109. icon_text = text-007. WHEN 1. icon_name = text-107. icon_text = text-006. ENDCASE. CALL FUNCTION 'ICON_CREATE' EXPORTING name = icon_name text = icon_text info = text-021"'Status' add_stdinf = 'X' IMPORTING RESULT = stats_icon"status_icon EXCEPTIONS icon_not_found =1 outputfield_too_short = 2 OTHERS = 3. CASE sy-subrc. WHEN 1. MESSAGE e888(sabapdocu) WITH text-004. WHEN 2. MESSAGE e888(sabapdocu) WITH text-005. WHEN 3. MESSAGE e888(sabapdocu) WITH text-006. ENDCASE. CLEAR value. IF zfi_item-insts = 'CLOSED' . l_var1 = '@08@'. *

ELSEIF zfi_item-insts = 'IN PROCESS'. l_var1 = '@09@'. ELSE. zfi_item-insts = 'OPEN'. l_var1 = '@0A@'. ENDIF. CALL FUNCTION 'ICON_CREATE' EXPORTING name = l_var1 text = '' info = '' add_stdinf = 'X' IMPORTING RESULT = icon1a EXCEPTIONS icon_not_found =1 outputfield_too_short = 2 OTHERS = 3. IF sy-subrc <> 0. ENDIF. ENDMODULE. " STATUS_0100 OUTPUT *&---------------------------------------------------------------------* *& Module UPDATE_TABLE INPUT *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* MODULE update_table INPUT. CASE sy-ucomm. WHEN 'SAVE'. IF zfi_item-insts = 'CLOSED' AND ( zfi_item-insd IS INITIAL OR zfi_item-insp IS INITIAL OR zfi_item-insr IS INITIAL OR zfi_item-comment1 IS INITIAL OR zfi_item-pend IS INITIAL OR zfi_item-penp IS INITIAL OR zfi_item-penr IS INITIAL OR zfi_item-comment2 IS INITIAL OR zfi_item-ircd IS INITIAL OR zfi_item-ircp IS INITIAL OR zfi_item-ircr IS INITIAL OR

zfi_item-comment3 IS INITIAL OR zfi_item-pcld IS INITIAL OR zfi_item-pclp IS INITIAL OR zfi_item-pclr IS INITIAL OR zfi_item-comment4 IS INITIAL OR zfi_item-cadd IS INITIAL OR zfi_item-cadp IS INITIAL OR zfi_item-cadr IS INITIAL OR zfi_item-comment5 IS INITIAL OR zfi_item-inpd IS INITIAL OR zfi_item-inpp IS INITIAL OR zfi_item-inpr IS INITIAL OR zfi_item-comment6 IS INITIAL OR zfi_item-mndd IS INITIAL OR zfi_item-mndp IS INITIAL OR zfi_item-mndr IS INITIAL OR zfi_item-comment7 IS INITIAL ). MESSAGE text-099 TYPE 'I'. ELSE. MODIFY zfi_item FROM TABLE it_item. MESSAGE text-022 TYPE 'I'. ENDIF. IF sy-subrc NE 0. MESSAGE text-023 TYPE 'E'. ENDIF. ENDCASE. ENDMODULE. " UPDATE_TABLE INPUT *----------------------------------------------------------------------* * MODULE FILL_NEWTAB INPUT *----------------------------------------------------------------------* * *----------------------------------------------------------------------* MODULE fill_newtab INPUT. REFRESH it_item. LOOP AT it_tbc INTO wa_tbc. zfi_item-mandt = sy-mandt. zfi_item-posnr = wa_screen-posnr. zfi_item-vbeln_in = wa_screen-vbeln. zfi_item-vbeln_sd = wa_screen-aubel. zfi_item-netwr = wa_screen-dmbtr. zfi_item-waerk = wa_screen-waers.

zfi_item-icond = wa_screen-status. zfi_item-sname = wa_screen-sname. zfi_item-insd = wa_tbc-insd. zfi_item-pend = wa_tbc-pend. zfi_item-ircd = wa_tbc-ircd. zfi_item-pcld = wa_tbc-pcld. zfi_item-cadd = wa_tbc-cadd. zfi_item-inpd = wa_tbc-inpd. zfi_item-mndd = wa_tbc-mndd. zfi_item-mrcd = wa_tbc-mrcd. zfi_item-insr = wa_tbc-insr. zfi_item-penr = wa_tbc-penr. zfi_item-ircr = wa_tbc-ircr. zfi_item-pclr = wa_tbc-pclr. zfi_item-cadr = wa_tbc-cadr. zfi_item-inpr = wa_tbc-inpr. zfi_item-mndr = wa_tbc-mndr. zfi_item-mrcr = wa_tbc-mrcr. zfi_item-insp = wa_tbc-insp. zfi_item-penp = wa_tbc-penp. zfi_item-ircp = wa_tbc-ircp. zfi_item-pclp = wa_tbc-pclp. zfi_item-cadp = wa_tbc-cadp. zfi_item-inpp = wa_tbc-inpp. zfi_item-mndp = wa_tbc-mndp. zfi_item-mrcp = wa_tbc-mrcp. zfi_item-icond = wa_tbc-icond. zfi_item-insts = wa_tbc-insts. zfi_item-uname = wa_tbc-uname." zfi_item-comment1 = wa_tbc-comment1. zfi_item-comment2 = wa_tbc-comment2. zfi_item-comment3 = wa_tbc-comment3. zfi_item-comment4 = wa_tbc-comment4. zfi_item-comment5 = wa_tbc-comment5. zfi_item-comment6 = wa_tbc-comment6. zfi_item-comment7 = wa_tbc-comment7. APPEND zfi_item TO it_item. ENDLOOP. ENDMODULE. "FILL_NEWTAB INPUT *----------------------------------------------------------------------* * MODULE READ_SCREEN_VALUES INPUT *----------------------------------------------------------------------* * *----------------------------------------------------------------------* MODULE read_screen_values INPUT.

zfi_item-mandt = sy-mandt. zfi_item-erdat = wa_screen-fkdat. zfi_item-netwr = wa_screen-dmbtr. zfi_item-sname = wa_screen-sname. zfi_item-waerk = wa_screen-waers. CASE zfi_item-insts."stats_icon+0(4). WHEN 'IN PROCESS'. READ TABLE it_icon INTO wa_icon WITH KEY name = text-109. zfi_item-icond = wa_icon-id. WHEN 'OPEN'. READ TABLE it_icon INTO wa_icon WITH KEY name = text-108. zfi_item-icond = wa_icon-id. WHEN 'CLOSED'. READ TABLE it_icon INTO wa_icon WITH KEY name = text-107. zfi_item-icond = wa_icon-id. ENDCASE. zfi_item-vbeln_sd = wa_screen-aubel. zfi_item-vbeln_in = wa_screen-vbeln. zfi_item-posnr = wa_screen-aupos. zfi_item-insd = zfi_item-insd. zfi_item-tstmpd = sy-datum. zfi_item-tmstmp = sy-uzeit. zfi_item-uname = sy-uname. APPEND zfi_item TO it_item. ENDMODULE. "READ_SCREEN_VALUES INPUT *----------------------------------------------------------------------* * MODULE DISPLAY OUTPUT *----------------------------------------------------------------------* * *----------------------------------------------------------------------* MODULE display OUTPUT. CLEAR zfi_item. SELECT SINGLE * FROM zfi_item INTO CORRESPONDING FIELDS OF zfi_item WHERE vbeln_sd = wa_screen-aubel AND posnr = wa_screen-aupos "posnr

AND vbeln_in = wa_screen-vbeln. CONCATENATE zfi_item-tstmpd zfi_item-tmstmp INTO l_tot. l_str = 0. CONCATENATE l_tot+6(2) ':' l_tot+4(2) ':' l_tot+0(4) l_str l_tot+8(2) ':' l_tot+10(2) ':' l_tot+12(2) INTO l_final . CONCATENATE l_final+0(10) l_final+12(10) INTO l_get SEPARATED BY space. ENDMODULE. " DISPLAY OUTPUT *&---------------------------------------------------------------------* *& Form CREATE_ICON *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* * -->P_G_VALUE text *----------------------------------------------------------------------* FORM create_icon USING p_g_value. CASE p_g_value. WHEN 1. g_icon_name = text-108. g_icon_text = text-001. WHEN 2. g_icon_name = text-109. g_icon_text = text-002. WHEN 3. g_icon_name = text-107. g_icon_text = text-003. ENDCASE. CALL FUNCTION 'ICON_CREATE' EXPORTING name = g_icon_name text = g_icon_text info = text-021 "'Status' add_stdinf = 'X' IMPORTING RESULT = g_stats_icon"status_icon EXCEPTIONS icon_not_found =1 outputfield_too_short = 2 OTHERS = 3.

CASE sy-subrc. WHEN 1. MESSAGE e888(sabapdocu) WITH text-004. WHEN 2. MESSAGE e888(sabapdocu) WITH text-005. WHEN 3. MESSAGE e888(sabapdocu) WITH text-006. ENDCASE. CLEAR g_value. ENDFORM. " CREATE_ICON *&---------------------------------------------------------------------* *& Module UPDATE_TABLE1 INPUT *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* MODULE update_table1 INPUT. CASE sy-ucomm. WHEN 'SAVE'. MODIFY zfi_item FROM TABLE it_item. IF sy-subrc = 0. MESSAGE text-022 TYPE 'I'. ELSE. MESSAGE text-023 TYPE 'E'. ENDIF. ENDCASE. ENDMODULE. " UPDATE_TABLE1 INPUt

*&---------------------------------------------------------------------* *& Include ZSD_INVOICE_DECLARATIONS3 *&---------------------------------------------------------------------* *&---------------------------------------------------------------------* *& Include ZSD_INVOICE_DECLARATIONS *&---------------------------------------------------------------------* TABLES : t001,vbak,vbrk,zfi_item,kna1,knvk,bsad,bsid,tvbst,vbuk. TYPE-POOLS : slis,vrm,icon. INCLUDE <icon>. ****Structure Declarations************** TYPES : BEGIN OF s_vbrk, vbeln TYPE vbeln_vf,"Billing Document Number vbtyp TYPE vbtyp, "Document Type waerk TYPE waerk, " Currency fkdat TYPE fkdat, "Document Date

gjahr type gjahr, "Year of Posting netwr TYPE netwr, "Net Price sfakn TYPE sfakn, "Cancellation Indicator END OF s_vbrk, BEGIN OF s_vbrp, vbeln TYPE vbeln_vf,"Billing Document Number posnr TYPE posnr_vf,"Line Item netwr TYPE netwr_fp," Net Price aubel TYPE vbeln_va ,"Sales Document aupos TYPE posnr_va,"Sales Document Item vkorg_auft TYPE vkorg_auft,"Sales Organozation erdat TYPE erdat,"Date Of Sale Order Creation vgtyp TYPE vbtyp_v,"Document Type mwsbp type mwsbp,"Tax END OF s_vbrp , begin of s_bkpf, bukrs type bukrs,"Company Code belnr type belnr_d,"Accounting Document blart type blart,"Document Type stblg type stblg,"Reversed Document end of s_bkpf, BEGIN OF S_VBFA, VBELV TYPE VBELN_VON,"Preceeding Sales Document VBELN TYPE VBELN_NACH,"Subsequent Sales Document POSNN TYPE POSNR_NACH,"Line Item VBTYP_N TYPE VBTYP_N,"Document Category VBTYP_V TYPE VBTYP_V,"Document Category END OF S_VBFA, BEGIN OF s_vbuk, vbeln TYPE vbeln,"Sales Order Number buchk TYPE buchk,"Posting Status Of Billing Document gbstk TYPE gbstk,"Overall Status END OF s_vbuk ,

BEGIN OF s_bstat, " for getting fi document status field is BSTAT vbeln TYPE vbrp-vbeln, posnr TYPE vbrp-posnr, sgtxt TYPE vbrp-sgtxt, mwsbp TYPE vbrp-mwsbp, aubel TYPE vbrp-aubel, aupos TYPE vbrp-aupos, END OF s_bstat,

BEGIN OF s_vbak, vbeln TYPE vbeln,"Sales Document Number ernam TYPE ernam,"Name of the person who created the document vkorg TYPE vkorg,"Sales Organization bukrs_vf TYPE bukrs_vf,"Company Code erdat TYPE erdat,"Date of Sale Order Creation END OF s_vbak, BEGIN OF s_vbup, vbeln TYPE vbeln,"Sales Document Number posnr TYPE posnr,"Line Item gbsta TYPE gbsta,"Overall Status END OF s_vbup, BEGIN OF s_vbap, vbeln TYPE vbeln,"Sales Document Number posnr TYPE posnr,"Line Item netwr TYPE netwr," Net Price erdat type erdat,"Date Of Sale Order Creation vgtyp TYPE vbtyp_v,"Document Category END OF s_vbap, BEGIN OF s_bsid, bukrs TYPE bukrs,"Company Code augbl TYPE augbl," gjahr TYPE gjahr, belnr TYPE belnr_d, WAERS type WAERS, blart type blart, shkzg TYPE shkzg, dmbtr TYPE dmbtr, vbeln TYPE vbeln, wrbtr type wrbtr, END OF s_bsid, BEGIN OF s_bsad, bukrs TYPE bukrs, augbl TYPE augbl, gjahr TYPE gjahr, belnr TYPE belnr_d, WAERS type WAERS, blart type blart, shkzg TYPE shkzg, dmbtr TYPE dmbtr, wrbtr TYPE wrbtr, vbeln TYPE vbeln_va, pswbt TYPE pswbt, END OF s_bsad,

begin of S_ALL, aubel type vbeln_va, bukrs TYPE BUKRS, sitem type posnr, augbl TYPE AUGBL, gjahr TYPE GJAHR, belnr TYPE BELNR_D, blart TYPE BLART, shkzg TYPE SHKZG, dmbtr TYPE DMBTR, wrbtr TYPE WRBTR, dmbtr_ab type dmbtr, vbeln TYPE VBELN_VA, pswbt TYPE PSWBT, bstat(30) type c, fkdat type fkdat, waerk type waerk, comment1 type comment, uname type syuname, parvw type parvw, pernr type pernr_d, sname type smnam, l_get(20) type c, vkorg_auft TYPE vkorg_auft, color type icon-id, s_text(12) type c, WAERS type WAERS, table_type(4) type c, END OF S_ALL,

BEGIN OF s_vbpa, vbeln TYPE vbeln, posnr TYPE posnr, parvw TYPE parvw, pernr TYPE pernr_d, END OF s_vbpa, BEGIN OF s_pa0001, pernr TYPE persno, sname TYPE smnam, END OF s_pa0001,

BEGIN OF s_final, vbeln TYPE vbeln_vf, posnr TYPE posnr_vf, netwr TYPE netwr_fp, aubel TYPE vbeln_va , aupos TYPE posnr_va, vkorg TYPE vkorg, bukrs_vf TYPE bukrs_vf, gjahr TYPE gjahr, dmbtr TYPE dmbtr, dmbtr_ab type dmbtr, wrbtr TYPE wrbtr, belnr TYPE belnr_d, pswbt TYPE pswbt, CLDOC TYPE BELNR_D, shkzg TYPE shkzg, CLAMNT TYPE DMBTR, kunnr TYPE kunnr, WAERS type WAERS, namev TYPE namev_vp, name1 TYPE name1_gp, bukrs TYPE bukrs, umsks TYPE umsks, umskz TYPE umskz, augdt TYPE augdt, augbl TYPE augbl, zuonr TYPE dzuonr, buzei TYPE buzei, ernam TYPE ernam, vgtyp TYPE vbtyp_v, waerk TYPE waerk, parvw TYPE parvw, pernr TYPE pernr_d, sname TYPE smnam, fkdat TYPE fkdat, buchk TYPE buchk, bstat(30) TYPE c, uname TYPE syuname, color TYPE icon-id, icond TYPE icon_d, s_text(12) TYPE c, mwsbp type mwsbp, mandt TYPE mandt, vbeln_sd TYPE zvbeln_va, vbeln_in TYPE zvbeln_vf, erdat TYPE erdat, netpr TYPE netpr, insts TYPE zinsts, insd TYPE zinsd,

pend TYPE zpend, ircd TYPE zircd, pcld TYPE zpcld, cadd TYPE zcadd, inpd TYPE zinpd, mndd TYPE zmndd, mrcd TYPE zmrcd, insr TYPE zinsr, penr TYPE zpenr, ircr TYPE zircr, pclr TYPE zpclr, cadr TYPE zcadr, inpr TYPE zinpr, mndr TYPE zmndr, mrcr TYPE zmrcr, insp TYPE zinsp, penp TYPE zpenp, ircp TYPE zircp, pclp TYPE zpclp, cadp TYPE zcadp, inpp TYPE zinpp, mndp TYPE zmndp, mrcp TYPE zmrcp, BLART TYPE BLART, comment1 TYPE comment, timstmp TYPE tzntstmps, res TYPE icons-text, status TYPE vbup-gbsta, l_tot(20) TYPE c, l_get(20) TYPE c, END OF s_final, BEGIN OF s_tbc, mandt TYPE mandt, vbeln_sd TYPE zvbeln_va, vbeln_in TYPE zvbeln_vf, posnr TYPE posnr_va, erdat TYPE erdat, netpr TYPE netpr, sname TYPE smnam, waerk TYPE waerk, ernam TYPE ernam, icond TYPE icon_d , insts TYPE zinsts, insd TYPE zinsd, pend TYPE zpend, ircd TYPE zircd, pcld TYPE zpcld,

cadd TYPE zcadd, inpd TYPE zinpd, mndd TYPE zmndd, mrcd TYPE zmrcd, insr TYPE zinsr, penr TYPE zpenr, ircr TYPE zircr, pclr TYPE zpclr, cadr TYPE zcadr, inpr TYPE zinpr, mndr TYPE zmndr, mrcr TYPE zmrcr, insp TYPE zinsp, penp TYPE zpenp, ircp TYPE zircp, pclp TYPE zpclp, cadp TYPE zcadp, inpp TYPE zinpp, mndp TYPE zmndp, mrcp TYPE zmrcp, uname TYPE syuname," comment1 TYPE comment," comment2 TYPE comment, comment3 TYPE comment, comment4 TYPE comment, comment5 TYPE comment, comment6 TYPE comment, comment7 TYPE comment, timstmp TYPE tzntstmps, res TYPE icons-text, END OF s_tbc, BEGIN OF s_screen, vbeln TYPE vbeln_vf, posnr TYPE posnr_vf, netwr TYPE netwr_fp, dmbtr TYPE dmbtr, wrbtr TYPE wrbtr, waers TYPE waers, aubel TYPE vbeln_va , aupos TYPE posnr_va, vkorg TYPE vkorg, bukrs_vf TYPE bukrs_vf, vgtyp TYPE vbtyp_v, fkdat TYPE fkdat, sname TYPE smnam, status TYPE icon-id, insts TYPE zinsts, comment1 TYPE comment,

END OF s_screen, BEGIN OF s_icon, id TYPE icon-id, name TYPE icon-name, END OF s_icon, BEGIN OF s_graphic_table, line(255) TYPE x, END OF s_graphic_table. *******************constants****************8 CONSTANTS: c_cntl_true TYPE i VALUE 1, c_cntl_false TYPE i VALUE 0, c_null TYPE i value '00000000'. ****Internal Table Delcarations********* DATA : it_vbrk TYPE STANDARD TABLE OF s_vbrk, it_vbrp TYPE STANDARD TABLE OF s_vbrp, it_vbuk TYPE STANDARD TABLE OF s_vbuk, it_vbak TYPE STANDARD TABLE OF s_vbak, it_vbap TYPE STANDARD TABLE OF s_vbap, it_vbup TYPE STANDARD TABLE OF s_vbup, it_bsid_ab type STANDARD TABLE OF s_bsid, it_bsid TYPE STANDARD TABLE OF s_bsid," it_bsad TYPE STANDARD TABLE OF s_bsad," it_vbpa TYPE TABLE OF s_vbpa, it_pa0001 TYPE STANDARD TABLE OF s_pa0001, it_kna1 TYPE STANDARD TABLE OF kna1, it_bkpf type STANDARD TABLE OF s_bkpf, it_fieldcat TYPE slis_t_fieldcat_alv, layout TYPE slis_layout_alv, "LAYOUT it_events TYPE slis_t_event, it_sort TYPE slis_t_sortinfo_alv, it_final TYPE STANDARD TABLE OF s_final, it_item TYPE STANDARD TABLE OF zfi_item, it_list TYPE slis_t_listheader, it_tbc TYPE STANDARD TABLE OF s_tbc, it_icon TYPE TABLE OF s_icon, it_graph type table of s_graphic_table, IT_ALL TYPE STANDARD TABLE OF S_ALL, it_bstat TYPE TABLE OF s_bstat," for getting fi document status field is BSTAT IT_VBFA TYPE TABLE OF S_VBFA, ****Work Area Declarations************** WA_ALL TYPE S_ALL, WA_ITEM TYPE ZFI_ITEM, WA_VBFA TYPE S_VBFA, wa_vbrk TYPE s_vbrk,

wa_vbrp TYPE s_vbrp, wa_vbap TYPE s_vbap, wa_vbup TYPE s_vbup, wa_bkpf type s_bkpf, wa_vbuk TYPE s_vbuk, wa_vbak TYPE s_vbak, wa_bsid TYPE s_bsid," wa_bsad TYPE s_bsad," wa_vbpa TYPE s_vbpa, wa_pa0001 TYPE s_pa0001, wa_kna1 TYPE kna1, * wa_knvk TYPE s_knvk, wa_tvbst TYPE tvbst, wa_final TYPE s_final, wa_fieldcat TYPE slis_fieldcat_alv, * wa_item TYPE zfi_item, wa_list LIKE LINE OF it_list, wa_tbc TYPE s_tbc, wa_screen TYPE s_screen, wa_icon TYPE s_icon, wa_event LIKE LINE OF it_events, wa_layout TYPE slis_layout_alv, wa_graphic_table type s_graphic_table, g_value TYPE i, g_icon_name(20) TYPE c, g_icon_text(20) TYPE c, g_stats_icon TYPE icons-text, wa_bsid_ab type s_bsid, wa_bsid_ab1 TYPE S_BSID, ****************STATUS ICON******************* l_var1(4), lv_belnr type belnr_d, res TYPE icons-text, icon1a(200), sel TYPE c, stats_icon TYPE icons-text, value TYPE i VALUE 1, icon_name(20) TYPE c, icon_text(12) TYPE c, dref TYPE REF TO data, p_len(30) TYPE c, ***************LOGO DECLARATIONS*************** w_callback_subroutine TYPE slis_formname, w_callback_program LIKE sy-repid, gd_layout TYPE slis_layout_alv, ls_cellcolor TYPE lvc_s_scol, h_picture TYPE REF TO cl_gui_picture, h_pic_container TYPE REF TO cl_gui_custom_container, graphic_url(255),

graphic_refresh(1), g_result LIKE c_cntl_true, graphic_size TYPE i, lv_date TYPE sy-datum, lv_time TYPE sy-uzeit, l_str(3) TYPE c, l_tot(20) TYPE c, l_final(25) TYPE c, lv_t TYPE cacstimestamp, l_tstamp TYPE timestamp, l_get(20) TYPE c, fill TYPE i, lines TYPE i. w_callback_program = sy-repid. w_callback_subroutine = 'USER_COMMAND'. DATA : so_bukrs TYPE BUKRS, so_vkorg TYPE VBAK-VKORG, so_vbeln TYPE VBAK-VBELN, so_fkdat TYPE VBRK-FKDAT. *DATA : S_BU TYPE BUKRS, * S_VK TYPE VBAK-VKORG, * S_VB TYPE VBAK-VBELN, * S_FK TYPE VBRK-FKDAT. ******************Declaration for selection screen*********** *SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME. * *SELECT-OPTIONS : so_bukrs FOR S_BU ,"OBLIGATORY, * so_vkorg FOR S_VK, * so_vbeln FOR S_VB, * so_fkdat FOR S_FK ."OBLIGATORY. * *SELECTION-SCREEN END OF BLOCK b1. *********************************************************************** *********************Radio Button Declarations************************ CONSTANTS : rbselected TYPE c LENGTH 1 VALUE 'X', rb1selected TYPE c LENGTH 1 VALUE 'X'. DATA : p_txt TYPE c LENGTH 100. ***********************Declaration for selection screen******************* *********************Radio Button Declarations************************

***********************Declaration for selection screen******************* SELECTION-SCREEN BEGIN OF BLOCK frame1 WITH FRAME TITLE text-136. SELECTION-SCREEN BEGIN OF LINE. SELECTION-SCREEN POSITION 15. PARAMETERS: p_rb5 RADIOBUTTON GROUP rb1. SELECTION-SCREEN COMMENT 20(30) text-129 for field P_rb5. SELECTION-SCREEN END OF LINE. SELECTION-SCREEN BEGIN OF LINE. SELECTION-SCREEN POSITION 15. PARAMETERS: p_rb6 RADIOBUTTON GROUP rb1. SELECTION-SCREEN COMMENT 20(30) text-130 for field P_rb6. SELECTION-SCREEN END OF LINE. SELECTION-SCREEN BEGIN OF LINE. SELECTION-SCREEN POSITION 15. PARAMETERS: p_rb7 RADIOBUTTON GROUP rb1. SELECTION-SCREEN COMMENT 20(30) text-131 for field P_rb7. SELECTION-SCREEN END OF LINE. SELECTION-SCREEN BEGIN OF LINE. SELECTION-SCREEN POSITION 15. PARAMETERS: p_rb8 RADIOBUTTON GROUP rb1. SELECTION-SCREEN COMMENT 20(30) text-132 for field P_rb8. SELECTION-SCREEN END OF LINE. SELECTION-SCREEN BEGIN OF LINE. SELECTION-SCREEN POSITION 15. PARAMETERS: p_rb9 RADIOBUTTON GROUP rb1. SELECTION-SCREEN COMMENT 20(40) text-133 for field P_rb9. SELECTION-SCREEN END OF LINE. SELECTION-SCREEN BEGIN OF LINE. SELECTION-SCREEN POSITION 15. PARAMETERS: p_rb10 RADIOBUTTON GROUP rb1. SELECTION-SCREEN COMMENT 20(30) text-134 for field P_rb10. SELECTION-SCREEN END OF LINE. * SELECTION-SCREEN BEGIN OF LINE. SELECTION-SCREEN POSITION 15. PARAMETERS: p_rb11 RADIOBUTTON GROUP rb1. SELECTION-SCREEN COMMENT 20(30) text-135 for field P_rb11. SELECTION-SCREEN END OF LINE. SELECTION-SCREEN END OF BLOCK frame1.

SELECTION-SCREEN BEGIN OF BLOCK frame2 WITH FRAME TITLE text-100. selection-screen begin of line. selection-screen position 16. parameters: p_rb1 radiobutton group rb. selection-screen comment 20(30) text-008 for field p_rb1. selection-screen end of line. selection-screen begin of line. selection-screen position 16. parameters: p_rb2 radiobutton group rb. selection-screen comment 20(30) text-102 for field p_rb2. selection-screen end of line. selection-screen begin of line. selection-screen position 16. parameters: p_rb3 radiobutton group rb. selection-screen comment 20(30) text-103 for field p_rb3. selection-screen end of line. selection-screen begin of line. selection-screen position 16. parameters: p_rb4 radiobutton group rb. selection-screen comment 20(30) text-104 for field p_rb4. selection-screen end of line. SELECTION-SCREEN END OF BLOCK frame2.

Das könnte Ihnen auch gefallen