BAPI_BUPA_CENTRAL_CHANGE 修改BP客户基础数据 - 海边星
【原创】 BAPI_BUPA_CENTRAL_CHANGE 修改BP客户基础数据
栏目:ABAP  作者:在海边看星星  阅读:(1390)

  DATAls_central  TYPE bapibus1006_central,
        ls_centralx TYPE bapibus1006_central_x,
        lt_return   TYPE STANDARD TABLE OF bapiret2 WITH HEADER LINE.
  DATAl_partner  TYPE bapibus1006_head-bpartner,
        l_msg(220).

  READ TABLE gt_alv WITH KEY sel 'X'.
  IF sy-subrc <> 0.
    MESSAGE '请选择需要修改的行!' TYPE 'S' DISPLAY LIKE 'E'.
    EXIT.
  ENDIF.
  BREAK-POINT.

  LOOP AT gt_alv.
    l_partner gt_alv-partner.
    ls_central-searchterm1 gt_alv-bu_sort1.
    ls_centralx-searchterm1 'X'.

    CALL FUNCTION 'BAPI_BUPA_CENTRAL_CHANGE'
      EXPORTING
        businesspartner l_partner
        centraldata     ls_central
        centraldata_x   ls_centralx
      TABLES
        return          lt_return[].

    LOOP AT lt_return WHERE type CA 'EAX'.
      CALL FUNCTION 'MESSAGE_TEXT_BUILD'
        EXPORTING
          msgid               lt_return-id
          msgnr               lt_return-number
          msgv1               lt_return-message_v1
          msgv2               lt_return-message_v2
          msgv3               lt_return-message_v3
          msgv4               lt_return-message_v4
        IMPORTING
          message_text_output l_msg.
      gt_alv-msg gt_alv-msg && l_msg && ';'.
    ENDLOOP.
    IF sy-subrc 0.
      CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
      gt_alv-type 'E'.
      gt_alv-sicon c_red.
    ELSE.
      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
        EXPORTING
          wait 'X'.
      gt_alv-type 'S'.
      gt_alv-sicon c_green.
      gt_alv-msg '修改成功!'.
    ENDIF.

    MODIFY gt_alv.
    CLEAR gt_alv.

  ENDLOOP.



我的评论
昵称
邮箱
域名
  记住 通知博主
验证码

  联系我们

微信扫一扫

 登录  打赏

  随机文章