BUT051表没有更新BUR_BUPR_BUT051_COLLECT



我正在尝试使用功能模块BUR_BUPR_BUT051_COLLECT更新DB表BUT051

问题是它根本不更新。

这是我的代码的一部分,我目前正在使用更新BUT051。注意:我要更新的字段是BUT051~PARTNER1

FORM update_but051.
"--------------------------------------------------------------------"
" TABLES
"--------------------------------------------------------------------"
DATA: lt_but051 TYPE TABLE OF but051.
"--------------------------------------------------------------------"
" STRUCTURES
"--------------------------------------------------------------------"
DATA: ls_but051 TYPE but051.
REFRESH: lt_but051.
CLEAR: ls_but051.
" Getting all relationships of the given accounts/partners
SELECT * FROM but051 INTO TABLE lt_but051 WHERE partner1 IN lt_partners_so.
" Replacing all partners(field `partner1`) with the master partner.
ls_but051-partner1 = p_mstcln.
MODIFY lt_but051 FROM ls_but051 TRANSPORTING partner1 WHERE partner1 <> p_mstcln.
CLEAR: ls_but051.
LOOP AT lt_but051 INTO ls_but051.
CALL FUNCTION 'BUR_BUPR_BUT051_COLLECT'
EXPORTING
i_subname = 'BUT051'
i_but051  = ls_but051.
ENDLOOP.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
wait = abap_true.
ENDFORM.

关于这段代码的几个注意事项:

  • 变量p_mstclnc(10)类型的参数,这是新的伙伴编号。
  • 内部表lt_partners_sobut051中所有需要被p_mstcln替换的伙伴表。

我是否使用了正确的函数?

是否有另一个功能模块,我想做什么(更新字段partner1but051)?

BUT051是一个业务合作伙伴关系表,SAP对此有一个特殊说明:

2594686 - BP的海量更新关系

建议使用以下Function module来更新关系:

  • BAPI_BUPR_RELATIONSHIP_CHANGE
  • BAPI_BUPR_RELATIONSHIP_CREATE
  • BAPI_BUPR_RELATIONSHIP_DELETE
  • BAPI_BUPR_RELATIONSHIP_GET
  • BAPI_BUPR_RELATIONSHIP_REMOVE
  • BAPI_BUPR_RELSHIP_CHECKEXIST
  • BAPI_BUPR_RELSHIP_GET_DETAIL

相关内容

  • 没有找到相关文章