sap
I_PSWBT LIKE BSEG-PSWBT, I_PSWSL LIKE BSEG-PSWSL, I_DMBE2 LIKE BSEG-DMBE2.
DATA: W_BSEG LIKE LINE OF P_WA_BOOL_DATA-BSEG . * DATA: BEGIN OF W_TEMP.
* INCLUDE STRUCTURE ZOHACCT. * DATA: MATNR LIKE MBEW-MATNR. * DATA: END OF W_TEMP.
* Loop一下会计凭证内表.
LOOP AT P_WA_BOOL_DATA-BSEG ASSIGNING <LFS_BSEG> . * MOVE-CORRESPONDING <LFS_BSEG> TO W_BSEG. I_BUKRS = <LFS_BSEG>-BUKRS. I_BELNR = <LFS_BSEG>-BELNR. I_GJAHR = <LFS_BSEG>-GJAHR. I_HKONT = <LFS_BSEG>-HKONT. I_EBELN = <LFS_BSEG>-EBELN. I_EBELP = <LFS_BSEG>-EBELP. I_MATNR = <LFS_BSEG>-MATNR. I_WERKS = <LFS_BSEG>-WERKS. I_SHKZG = <LFS_BSEG>-SHKZG. I_MENGE = <LFS_BSEG>-MENGE. I_KTOSL = <LFS_BSEG>-KTOSL . I_BWKEY = <LFS_BSEG>-BWKEY.
I_WRBTR = <LFS_BSEG>-WRBTR. "amount doc. cur.
I_DMBTR = <LFS_BSEG>-DMBTR. "amount in local cur.
I_PSWBT = <LFS_BSEG>-PSWBT. "amount in general ledger I_PSWSL = <LFS_BSEG>-PSWSL. "general ledger cur
I_DMBE2 = <LFS_BSEG>-DMBE2. "amount in 2nd. local cur. ****check doc type = 'AF'加足条件能反应这是折旧产生的FI Doc SHIFT I_HKONT LEFT DELETING LEADING '0' . if I_HKONT = '70060010' . "折旧科目
***做一个表,如要简单表内容就两个字原折旧科目,cost center,要换的折旧***科目,太TMD的简单吧,只要copy这个FORM就行.
W_BSEG-HKONT = '0062000090'. "退换的折旧科目
MODIFY HKONT.
endif . endloop. ENDFORM.
最后一步.
SE38:运行一下RGUGBR00| RGUGBR01.不要ask why?

