SAP主动推送到外部系统

SAP主动推送到外部系统

一、SE80创建代理类

在这里插入图片描述

二、选择service consumer

在这里插入图片描述

三、选择External WSDL/Schema

在这里插入图片描述

四、选择URL

在这里插入图片描述

五、输入外部系统创建的WSDL地址

在这里插入图片描述

六、选择开发包,请求号,这里以保存本地为例。

在这里插入图片描述

七、点击完成,并激活。

在这里插入图片描述
在这里插入图片描述

八、执行T-CODE:LPCONFIG

在这里插入图片描述
在这里插入图片描述
然后点击工具栏的新建按钮。

九、输入相关信息。

在这里插入图片描述

十、点击保存,这个会保存到定制请求中,请提前创建好定制请求。这里以保存本地为例

在这里插入图片描述
然后点击激活按钮。
注释:如果是保存到定制请求的话,还需要系统间不同客户端的传输。
执行T-code:SCC1
放入刚才保存的定制请求。点击立即执行。

十一、在程序中实例化代理类。

*$*$-Start: (2)---------------------------------------------------------------------------------$*$*
ENHANCEMENT 1  ZVL_SEND_MESS_SRM.    "active version
    DATA:LV_ACTION1.
    CLEAR:LV_ACTION1.
    DATA: LT_ITEM_INP TYPE TABLE OF ZSMM031 WITH HEADER LINE,
          LT_ITEM_OUT TYPE TABLE OF ZSMM030 WITH HEADER LINE.
    SELECT SINGLE ACTION INTO LV_ACTION1
      FROM ZTGD001
     WHERE ZKFQD = 'ZMM007'
       AND ZXH = '0'
       AND ENH_CODE = 'ZVL_SEND_MESS_SRM'.

    IF LV_ACTION1 IS INITIAL AND SY-UCOMM = 'SICH_T' AND T180-TRTYP = 'V'.
      READ TABLE XLIKP INDEX 1.
      IF XLIKP-VBTYP = '7'.
        LOOP AT XLIPS.
          LT_ITEM_INP-I_VBELN = XLIPS-VBELN.
          LT_ITEM_INP-I_POSNR = XLIPS-POSNR.
          LT_ITEM_INP-I_LFIMG = XLIPS-LFIMG.
          APPEND LT_ITEM_INP.
          CLEAR: LT_ITEM_INP,XLIPS.
        ENDLOOP.

      CALL FUNCTION 'ZMM_FM_SRM011'
        TABLES
          it_item       = LT_ITEM_INP
          et_item       = LT_ITEM_OUT.
      ENDIF.
      DATA : LO_CLIENTPROXY   TYPE REF TO ZMMCO_REJECT_RECEIVE_DETAIL, "类对象
             LO_SYS_EXCEPTION TYPE REF TO CX_AI_SYSTEM_FAULT,
             IS_ITEM          TYPE ZMMREJECT_RECEIVE_REQUEST,
             LT_ITEM          TYPE TABLE OF ZMMREJECT_RECEIVE_DETAIL_REQUE,
             LS_ITEM          TYPE ZMMREJECT_RECEIVE_DETAIL_REQUE,
             LS_PARAMETERS    TYPE ZMMSYNC_REJECT,
             LS_REQUEST       TYPE ZMMSYNC_REJECT1 , "传入参数
             LS_RESPONSE      TYPE ZMMSYNC_REJECT_RESPONSE1. "传出参数

  CREATE OBJECT LO_CLIENTPROXY.
  LOOP AT LT_ITEM_OUT.
    LS_ITEM-LIFEX = LT_ITEM_OUT-E_VERUR.
    LS_ITEM-LIFEXPOS = LT_ITEM_OUT-E_LIFEXPOS.
    LS_ITEM-POSNR = LT_ITEM_OUT-E_POSNR.
    LS_ITEM-VBELN = LT_ITEM_OUT-E_VBELN.
    LS_ITEM-STATUS = LT_ITEM_OUT-E_STATUS.
    LS_ITEM-MESS_TEXT = LT_ITEM_OUT-E_MESS_TEXT.
    APPEND LS_ITEM TO LT_ITEM.
    CLEAR: LS_ITEM,LT_ITEM_OUT.
  ENDLOOP.
  IS_ITEM-ITEM = LT_ITEM.
  LS_PARAMETERS-IT_ITEM = IS_ITEM.
  LS_REQUEST-PARAMETERS = LS_PARAMETERS.
  TRY.
      CREATE OBJECT LO_CLIENTPROXY
        EXPORTING
          LOGICAL_PORT_NAME = 'ZMM_SRM011'.

      CALL METHOD LO_CLIENTPROXY->SYNC_REJECT
        EXPORTING
          SYNC_REJECT          = LS_REQUEST
        IMPORTING
          SYNC_REJECT_RESPONSE = LS_RESPONSE.


    CATCH CX_AI_SYSTEM_FAULT INTO LO_SYS_EXCEPTION.
  ENDTRY.
    ENDIF.
ENDENHANCEMENT.
  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

joan nan

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

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

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

打赏作者

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

抵扣说明:

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

余额充值