Professional Documents
Culture Documents
dr001(1) TYPE c,
dr002(3) TYPE c,
dr003(3) TYPE c,
dr004(10) TYPE c,
dr005(9) TYPE c,
dr006(10) TYPE c ,
dr007(9) TYPE c,
dr008(50) TYPE c,
END OF ty_six_record,
BEGIN OF lty_file_4,
or001(1) TYPE c,
or002(3) TYPE c,
or003(3) TYPE c,
or004(1) TYPE c,
or005(2) TYPE c,
or006(1) TYPE c,
ivcnr(16) TYPE c,
pyamt(10) TYPE c,
ddamt(10) TYPE c,
restg(3) TYPE c,
or011(50) TYPE c,
flag TYPE c,
END OF lty_file_4,
BEGIN OF lty_bsid,
bukrs TYPE bukrs,
gjahr TYPE gjahr,
belnr TYPE belnr_d,
buzei TYPE buzei,
xblnr TYPE xblnr1,
rebzg TYPE rebzg,
END OF lty_bsid.
* lv_avsid = i_avik-avsid.
* SHIFT lv_avsid BY 2 PLACES.
CLEAR : lwa_file_6.
READ TABLE lt_file_6 INTO lwa_file_6
INDEX <febep>-esnum.
IF sy-subrc = 0 AND <febep> IS ASSIGNED.
<febep>-zuonr = lwa_file_6-dr008+10.
ENDIF.
lt_avip_xblnr = t_avip[].
lt_avip_belnr = t_avip[].
IF sy-subrc <> 0.
SHIFT lv_swert_tmp LEFT DELETING LEADING '0'.
READ TABLE lt_file_4 ASSIGNING <lwa_file_4> WITH KEY
ivcnr = lv_swert_tmp
restg = lwa_avip-restg
flag = ''.
ENDIF.
IF sy-subrc EQ space.
lv_or011 = <lwa_file_4>-or011. "Filler Record on 4 record in BAI2 file
lwa_avip-xref2 = lwa_avip-avspo.
lwa_avip-sgtxt = lv_or011.
<lwa_file_4>-flag = 'X'.
ENDIF.
READ TABLE lt_bsid_xblnr INTO ls_bsid WITH KEY xblnr = lwa_avip-xblnr.
IF sy-subrc = 0.
IF ls_bsid-rebzg IS NOT INITIAL.
lwa_avip-belnr = ls_bsid-rebzg.
ELSE.
lwa_avip-belnr = ls_bsid-belnr.
ENDIF.
ls_accchg-fdname = 'XREF3'.
ls_accchg-newval = lv_or011+18(20).
APPEND ls_accchg TO lt_accchg.
CLEAR : ls_accchg.
CALL FUNCTION 'FI_DOCUMENT_CHANGE'
EXPORTING
* i_kunnr = lwa_avip-konto
i_buzei = ls_bsid-buzei
x_lock = 'X'
i_bukrs = ls_bsid-bukrs
i_belnr = ls_bsid-belnr
i_gjahr = ls_bsid-gjahr
TABLES
t_accchg = lt_accchg.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
ELSE.
READ TABLE lt_bsid_belnr INTO ls_bsid WITH KEY belnr = lwa_avip-belnr.
IF sy-subrc = 0.
ls_accchg-fdname = 'XREF3'.
ls_accchg-newval = lv_or011+18(20).
APPEND ls_accchg TO lt_accchg.
CLEAR : ls_accchg.
CALL FUNCTION 'FI_DOCUMENT_CHANGE'
EXPORTING
* i_kunnr = lwa_avip-konto
i_buzei = ls_bsid-buzei
x_lock = 'X'
i_bukrs = ls_bsid-bukrs
i_belnr = ls_bsid-belnr
i_gjahr = ls_bsid-gjahr
TABLES
t_accchg = lt_accchg.
IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.
ENDIF.
ENDIF.
MODIFY t_avip FROM lwa_avip. "Modifying AVIP table
CLEAR : lv_or011, lwa_file_4, lwa_avip,ls_bsid,lt_accchg.
* UNASSIGN <lwa_file_4>.
ENDLOOP.