会计凭证修改函数的使用

 

修改会计凭证的参考代码2的值。

-------------------------------------------------------------------*
TYPE-POOLS tpit.
DATA: ls_bseg TYPE bseg,
      lt_bseg TYPE TABLE OF bseg,
      lt_buztab TYPE tpit_t_buztab,
      ls_buztab LIKE LINE OF lt_buztab,
      lt_fldtab TYPE tpit_t_fname,
      ls_fldtab LIKE LINE OF lt_fldtab.

SELECT * INTO TABLE lt_bseg FROM bseg
  WHERE bukrs = lv_bukrs
  AND   belnr = lv_belnr
  AND   gjahr = lv_gjahrs.


*READ TABLE lt_bseg INTO ls_bseg WITH KEY  buzid = 'W'.
  CHECK sy-subrc = 0.
LOOP AT lt_bseg INTO lS_bseg WHERE  buzid = 'M'.

SELECT * FROM bsis INTO CORRESPONDING FIELDS OF TABLE lt_buztab
 WHERE bukrs EQ ls_bseg-bukrs
   AND gjahr EQ ls_bseg-gjahr
   AND belnr EQ ls_bseg-belnr
   AND buzei EQ ls_bseg-buzei.

IF lt_buztab[] IS INITIAL.
  SELECT * FROM bsas INTO CORRESPONDING FIELDS OF TABLE lt_buztab
   WHERE bukrs EQ ls_bseg-bukrs
    AND gjahr EQ ls_bseg-gjahr
    AND belnr EQ ls_bseg-belnr
    AND buzei EQ ls_bseg-buzei.
ENDIF.


CLEAR ls_bseg.


ls_bseg-xref2 = 'YSTEST'.
ls_fldtab-fname = 'XREF2'.
ls_fldtab-aenkz = 'X'.
APPEND ls_fldtab TO lt_fldtab.

CALL FUNCTION 'FI_ITEMS_MASS_CHANGE'
  EXPORTING
    s_bseg           = ls_bseg
* IMPORTING
*   ERRTAB           =
  TABLES
    it_buztab        = lt_buztab
    it_fldtab        = lt_fldtab
* EXCEPTIONS
*   BDC_ERRORS       = 1
*   OTHERS           = 2
          .
IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

ENDIF.

ENDLOOP.

 

转载于:https://www.cnblogs.com/caizjian/p/8309780.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值