SAP 财务会计凭证 Cording Block维护客户化字段

57 篇文章 6 订阅

背景:因公司要求,践行H1-碗里的,H2锅里的,H3田里的 增长曲线,财务要求体现在会计凭证里面,原先尝试实用基金中心字段,考虑到特殊性,最后放弃,改用cording block维护客制化字段

参考 SAP Cording Block维护客户化字段_abap codingblock-CSDN博客 及 https://zhuanlan.zhihu.com/p/689467264 

我新增了字段 zzplusl 对应增长曲线

obc4 科目组 控制字段 隐藏,必输,可选

OB41 维护 过账码的 隐藏 必输 可选 

PBO代码

MODULE FRM_MDF_SCREEN OUTPUT.
  IF sy-tcode = 'FB01' OR sy-tcode = 'FB02'.
    LOOP AT SCREEN.
      IF SCREEN-NAME+0(7) = 'COBL-ZZ'.
        SCREEN-INPUT = 1.
        SCREEN-ACTIVE = 1.
        SCREEN-INVISIBLE = 0.
        MODIFY SCREEN.
      ENDIF.
    ENDLOOP.
  elseIF sy-tcode = 'FB03'.
    LOOP AT SCREEN.
      IF SCREEN-NAME+0(7) = 'COBL-ZZ'.
        SCREEN-INPUT = 0.
        SCREEN-ACTIVE = 0.
        SCREEN-INVISIBLE = 0.
        MODIFY SCREEN.
      ENDIF.
    ENDLOOP.
  ENDIF.
ENDMODULE.

BPAI增强 se19 ACC_DOCUMENT

METHOD IF_EX_ACC_DOCUMENT~CHANGE.
  DATA: WA_EXTENSION TYPE BAPIPAREX,
        ZEXT_DATA    TYPE ZFIDOCEXT,
        ZEXT_FI      TYPE ZSFI_EXTENSION2.

  FIELD-SYMBOLS: <ACCIT> TYPE ACCIT.
  IF C_EXTENSION2[] IS NOT INITIAL.
    LOOP AT C_EXTENSION2 INTO WA_EXTENSION
    WHERE STRUCTURE = 'ZFIDOCEXT'.
      ZEXT_DATA = WA_EXTENSION-VALUEPART1.
      READ TABLE C_ACCIT ASSIGNING <ACCIT> WITH KEY POSNR = ZEXT_DATA-POSNR.
      IF SY-SUBRC = 0.
        <ACCIT>-BSCHL = ZEXT_DATA-BSCHL.
      <ACCIT>-ZZPLUSL = ZEXT_DATA-ZZPLUSL.
        IF <ACCIT>-BSCHL  = '70'."固定资产
          <ACCIT>-ANBWA = ZEXT_DATA-ANBWA.
        ENDIF.
        <ACCIT>-RSTGR = ZEXT_DATA-RSTGR.
      ENDIF.
    ENDLOOP.
    LOOP AT C_EXTENSION2 INTO WA_EXTENSION
    WHERE STRUCTURE = 'ZSFI_EXTENSION2'.
      ZEXT_FI = WA_EXTENSION-VALUEPART1.
      READ TABLE C_ACCIT ASSIGNING <ACCIT> WITH KEY POSNR = ZEXT_FI-POSNR.
      IF SY-SUBRC = 0.
        <ACCIT>-BSCHL = ZEXT_FI-BSCHL.
        <ACCIT>-ZZPLUSL = ZEXT_FI-ZZPLUSL.
*        IF <accit>-bschl  = '70'."固定资产
*          <accit>-anbwa = zext_data-anbwa.
*        ENDIF.
        <ACCIT>-RSTGR = ZEXT_FI-RSTGR.
      ENDIF.
    ENDLOOP.
    " PARK  预制凭证
    READ TABLE C_EXTENSION2 INTO WA_EXTENSION WITH KEY STRUCTURE = 'PARK'.
    IF SY-SUBRC = 0.
      MOVE '2' TO C_ACCHD-STATUS_NEW.
      DELETE C_EXTENSION2 INDEX SY-TABIX.
    ENDIF.
  ENDIF.

ENDMETHOD.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

gavin_gxh

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

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

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

打赏作者

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

抵扣说明:

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

余额充值