财务凭证过账增强 BAPI_ACC_DOCUMENT_POST

这也是sap惯用的一招
  CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
    EXPORTING
      DOCUMENTHEADER = GT_ACC_HD
    TABLES
      ACCOUNTGL      = GT_ACC_GL
      CURRENCYAMOUNT = GT_ACC_CUR
      RETURN         = GT_RETURN
      EXTENSION2     = GT_EXT2.
  

这个EXTENSION2是一个用来增强扩展FI凭证字段的结构哟
EXTENSION2 对应的字段是这样的:
 STRUCTURE    1 Types    TE_STRUC    CHAR    30   “放你的增强结构”
VALUEPART1    1 Types    VALUEPART    CHAR    240   "放结构对应的值,然后根据长度写回结构字段中,实现动态匹配"
VALUEPART2    1 Types    VALUEPART    CHAR    240
VALUEPART3    1 Types    VALUEPART    CHAR    240
VALUEPART4    1 Types    VALUEPART    CHAR    240
__________________________________________    ______
自己先定义结构,然后在BADI中做增强,从而实现你需要而此bapi没提供的字段

BADI
 AC_DOCUMENT
增强中CHANGE METHOD:
LOOP AT C_EXTENSION2 INTO WA_EXTENSION where structure 'ZAFIKJPZ'.
      WA_ZAFIKJPZ = WA_EXTENSION-VALUEPART1.
      append WA_ZAFIKJPZ to lt_ZAFIKJPZ.
    ENDLOOP.

  ENDIF.
  sort lt_ZAFIKJPZ by posnr.
  loop at c_accit into wa_accit.
    read table lt_ZAFIKJPZ into  WA_ZAFIKJPZ with key posnr = wa_accit-posnr.
    if sy-subrc eq 0.
      MOVE-CORRESPONDING WA_ZAFIKJPZ to wa_accit.
    endif.
      modify c_accit from wa_accit.
    endloop.
 

程序中这样填充


GT_EXT2-STRUCTURE = 'ZAFIKJPZ' .
      GT_EXT2-VALUEPART1 = LS_EXT2 .
      APPEND GT_EXT2 .
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SAP剑客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值