ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

SAP调用外部WebService接口

SAP调用外部WebService接口

1:在SAP端配置WebService对象

tcode:SE80

右键:Z001(界面上找不到企业服务,部分菜单需要设置显示)

命名规则ZSAP2对方系统

创建成功

2、配置

tcode:lpconfig

代理类是上一步创建成功的

缺省端口默认打勾

维护WebService地址

选择你要调用的操作,维护对应操作

soap操作在WebService界面查找

对应的soapAction后的内容,包括双引号

代码调用

对应的类和方法都是来源于第一步创建的类

DATA: L_MSGTXT TYPE BAPI_MSG. DATA:WS_001 TYPE REF TO ZSAP2CRM_003CO_INTERFACE_COMMO . "proxy class DATA: LO_SYSTEM_FAULT TYPE REF TO CX_AI_SYSTEM_FAULT, LO_APPLICATION_FAULT TYPE REF TO CX_AI_APPLICATION_FAULT. DATA: LO_INPUT TYPE ZSAP2CRM_003INVOKE_INTERFACE_1, "输入参数 LO_OUTPUT TYPE ZSAP2CRM_003INVOKE_INTERFACE_S. "输出参数 LO_INPUT-PARAM_INFO = P_IN. CALL METHOD ZCL_SOAP_HANDLER=>CREATE_SOAP_OBJECT EXPORTING IN_CLASS = 'ZSAP2CRM_003CO_INTERFACE_COMMO' "代理类 IN_PORT_NAME = 'ZSAP2CRM_003CO_INTERFACE_COMMO' "逻辑端口 CLIENTID = 'com.boway.esb.crm.crm' "接口客户端 OPERATIONCODE = 'com.boway.esb.crm.otm.creditreleaseinfo' "操作代码 CHANGING C_OBJECT = WS_001. * TRY. CALL METHOD WS_001->INVOKE_INTERFACE "web service 里的函数也叫做方法 EXPORTING INPUT = LO_INPUT IMPORTING OUTPUT = LO_OUTPUT. CATCH CX_AI_SYSTEM_FAULT INTO LO_SYSTEM_FAULT."异常捕获 CLEAR L_MSGTXT. CALL METHOD LO_SYSTEM_FAULT->IF_MESSAGE~GET_TEXT RECEIVING RESULT = L_MSGTXT. * RETURN. CATCH CX_AI_APPLICATION_FAULT INTO LO_APPLICATION_FAULT. CLEAR L_MSGTXT. CALL METHOD LO_SYSTEM_FAULT->IF_MESSAGE~GET_TEXT RECEIVING RESULT = L_MSGTXT. "返回结果 * ENDTRY.
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进