MIRO凭证拆分

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

MIRO执行发票校验是,对于贷项的行如果存在多行采购订单和利润中心,则按采购订单+利润中心拆分成多行*&---------------------------------------------------------------------**&包含ZXFMCU08*&---------------------------------------------------------------------**SELECTSINGLEparva*INTO@DATA(lv_parva)*FROMusr05*WHEREbname=@sy-uname*ANDparid='ZP_MIRO_SPLIT_NO'.*CHECKlv_parvaISINITIAL.设置用户参数ZP_MIRO_SPLIT_NO='X',则不执行miro拆分*用户参数改为配置控制凭证拆分SELECTSINGLEunameINTO@DATA(lv_uname)FROMztfi0028WHEREuname=@sy-uname.CHECKlv_unameISINITIAL.DATAlv_do_zfi07TYPEc.EXPORTMEMORYID在BADI增强INVOICE_UPDATE~CHANGE_AT_SAVEIMPORTlv_do_zfi07=lv_do_zfi07FROMMEMORYID'ZDO_ZFI07'.CHECK'X'=lv_do_zfi07.*MIRO应付账款拆分*存在不同采购订单,*应付科目需按采购订单拆分TYPES:BEGINOFlty_accit_col,lifnrTYPEekko-lifnr,prctrTYPEbseg-prctr,ebelnTYPEekko-ebeln,pswbtTYPEbseg-pswbt,*fdwbtTYPEbseg-fdwbt,pswbt_taxTYPEbseg-pswbt,*fdwbt_taxTYPEbseg-fdwbt,ENDOFlty_accit_col.TYPES:BEGINOFlty_acccr_col,lifnrTYPEekko-lifnr,ebelnTYPEekko-ebeln,curtpTYPEacccr-curtp,wrbtrTYPEbseg-wrbtr,wrbtr_taxTYPEbseg-wrbtr,ENDOFlty_acccr_col.TYPES:BEGINOFlty_split_line,posnrTYPEaccit-posnr,lifnrTYPEaccit-lifnr,hkontTYPEaccit-hkont,ENDOFlty_split_line.TYPES:BEGINOFlty_accit_tax_col,hkontTYPEbseg-hkont,ebelnTYPEekko-ebeln,pswbt_taxTYPEbseg-pswbt,*fdwbt_taxTYPEbseg-fdwbt,ENDOFlty_accit_tax_col.*TYPES:BEGINOFlty_acccr_tax_col,*hkontTYPEbseg-hkont,*wrbtr_taxTYPEbseg-wrbtr,*ENDOFlty_acccr_tax_col.TYPES:BEGINOFlty_tax_alloc,flg_no_nullTYPEc,flg_in_fi22TYPEc,flg_ex_acitTYPEc,ENDOFlty_tax_alloc.DATAlt_accit_colTYPETABLEOFlty_accit_col.DATAlt_acccr_colTYPETABLEOFlty_acccr_col.DATAlt_accit_tax_colTYPETABLEOFlty_accit_tax_col.*DATAlt_acccr_tax_colTYPETABLEOFlty_acccr_tax_col.DATAlt_sp_lineTYPETABLEOFlty_split_line.DATAlt_accitLIKETABLEOFt_accit.DATAlt_acccrLIKETABLEOFt_acccr.DATAlt_paccitLIKETABLEOFt_accit.DATAlt_pacccrLIKETABLEOFt_acccr.DATAls_accitTYPEaccit.DATAls_acccrTYPEacccr.DATAls_paccitTYPEaccit.DATAls_pacccrTYPEacccr.FIELD-SYMBOLSlfs_accitTYPEaccit.FIELD-SYMBOLSlfs_acccrTYPEacccr.FIELD-SYMBOLSlfs_accit_colTYPElty_accit_col.DATAls_accit_colTYPElty_accit_col.DATAls_acccr_colTYPElty_acccr_col.DATAls_accit_tax_colTYPElty_accit_tax_col.*DATAls_acccr_tax_colTYPElty_acccr_tax_col.DATAls_sp_lineTYPElty_split_line.DATAls_taxinfoTYPErtax1u15.DATAls_tax_allocTYPElty_tax_alloc.DATAlv_tax_matchTYPEc.DATAlv_sum_tax_pswbtTYPEbseg-wrbtr.DATAlv_diff_tax_pswbtTYPEbseg-wrbtr.DATAlv_sum_po_pswbtTYPEbseg-wrbtr.DATAlv_posnrTYPEaccit-posnr.记录保存行号DATAlt_posnr_oriLIKETABLEOFt_accit.LOOPATt_accitINTOls_accit.APPENDINITIALLINETOlt_posnr_oriASSIGNINGFIELD-SYMBOL(lfs_posnr_ori).lfs_posnr_ori-posnr=ls_accit-posnr.ENDLOOP.配置表需要拆分的科目SELECThkontINTOTABLE@DATA(lt_ztfi0021)FROMztfi0021.配置表需要分配的税科目SELECThkontINTOTABLE@DATA(lt_ztfi0022)FROMztfi0022.配置表需要分配的差异科目SELECThkontINTOTABLE@DATA(lt_ztfi0027)FROMztfi0027.LOOPATt_accitINTOls_accitWHEREebelnISNOTINITIAL.CLEARls_accit_col.CLEARls_accit_tax_col.SELECTSINGLElifnrINTOls_accit_col-lifnrFROMekkoWHEREebeln=ls_accit-ebeln.*ls_accit_col-lifnr=ls_accit-lifnr.ls_accit_col-ebeln=ls_accit-ebeln.ls_accit_col-prctr=ls_accit-prctr.ls_accit_col-pswbt=ls_accit-pswbt.*ls_accit_col-fdwbt=ls_accit-fdwbt.ls_taxinfo=zcl_fi_taxcode=tax_info_get(i_bukrs=ls_accit-bukrsi_mwskz=ls_accit-mwskzi_waers=ls_accit-pswsli_wrbtr=ls_accit-fdwbt).ls_accit_tax_col-hkont=ls_taxinfo-hkont.CLEARls_tax_alloc.IFls_accit_tax_col-hkontISNOTINITIAL.ls_tax_alloc-flg_no_null=abap_true.ENDIF.READTABLElt_ztfi0022TRANSPORTINGNOFIELDSWITHKEYhkont=ls_accit_tax_col-hkont.IFsy-subrc=0.ls_tax_alloc-flg_in_fi22=abap_true.ENDIF.READTABLEt_accitTRANSPORTINGNOFIELDSWITHKEYhkont=ls_accit_tax_col-hkont.IFsy-subrc=0.ls_tax_alloc-flg_ex_acit=abap_true.ENDIF.IFls_tax_alloc-flg_no_null=abap_trueANDls_tax_alloc-flg_in_fi22=abap_trueANDls_tax_alloc-flg_ex_acit=abap_true.ls_accit_tax_col-ebeln=ls_accit-ebeln.ls_accit_col-pswbt_tax=ls_accit_tax_col-pswbt_tax=zcl_fi_taxcode=amount_calculate(i_bukrs=ls_accit-bukrsi_mwskz=ls_accit-mwskzi_waers=ls_accit-pswsli_wrbtr=ls_accit-pswbt).*ls_accit_col-fdwbt_tax=ls_accit_tax_col-fdwbt_tax=*zcl_fi_taxcode=amount_calculate(*i_bukrs=ls_accit-bukrs*i_mwskz=ls_accit-mwskz*i_waers=ls_accit-pswsl*i_wrbtr=ls_accit-fdwbt*).COLLECTls_accit_tax_colINTOlt_accit_tax_col.ENDIF.COLLECTls_accit_colINTOlt_accit_col.ENDLOOP.LOOPATt_accitINTOls_accitWHERElifnrISNOTINITIAL.READTABLElt_ztfi0021INTODATA(ls_ztfi0021)WITHKEYhkont=ls_accit-hkont.IFsy-subrc=0.APPENDINITIALLINETOlt_sp_lineASSIGNINGFIELD-SYMBOL(lfs_sp_line).lfs_sp_line-posnr=ls_accit-posnr.lfs_sp_line-lifnr=ls_accit-lifnr.lfs_sp_line-hkont=ls_accit-hkont.ENDIF.ENDLOOP.不需要拆分的情况,但也要把ebelnprctr写到贷项行去IFlines(lt_accit_col)=1ANDlines(lt_sp_line)=1.READTABLElt_accit_colINTOls_accit_colINDEX1.READTABLElt_sp_lineINTOls_sp_lineINDEX1.LOOPATt_accitASSIGNINGFIELD-SYMBOL(lfs_t_accit)WHEREposnr=ls_sp_line-posnr.lfs_t_accit-ebeln=ls_accit_col-ebeln.lfs_t_accit-prctr=ls_accit_col-prctr.ENDLOOP.ENDIF.需要拆分的情况CHECKlines(lt_accit_col)1ANDlt_sp_lineISNOTINITIAL.SORTlt_accit_tax_colBYhkontpswbt_taxDESCENDING.税额如果计算有差异,差异放到金额最大的行LOOPATlt

1 / 22
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功