背景
SAP系统通过SOAP服务与其他系统集成,其中SAP是请求方,需要调用第三方系统的SOAP服务
前提
第三方系统服务地址
系统之间可联通
提供服务验证方式
步骤
- SE80定位至开发包,右键->新建->企业服务,选择Service consumer,点击继续
- 选择External WSDL/Schema,点击继续
- 选择URL
- 输入URL地址,点击继续
- 输入开发包,请求,代理类前缀(建议Z+模块缩写,如ZMDG_)
- 点击**,至此消费类创建完成,下一步需要设置逻辑端口,指定目标服务器
-
点击下图指示处或使用soamanager打开Service Consumers配置
-
新建逻辑端口ZLP01,并设置为默认端口
其他步骤默认,如需用户名密码验证则填入,最后点击完成
DATA:lo_proxy TYPE REF TO ypwk_co_domain_service.
CREATE OBJECT lo_proxy.
DATA:import_domain TYPE ypwk_import_domain1, import_domain_response TYPE ypwk_import_domain_response1.
"导入参数赋值 import_domain-parameters-is_req_head_async-zinstid = '23421321321'. import_domain-parameters-is_req_head_async-zzreqtime = '20190702181514'.
import_domain-parameters-it_data-item = VALUE #(
( zzserial = '0001' zzdom_code = 'ZZJGLX' zzdom_value = 'c' zzdom_t_cn = '企业' zzdom_level = '1' zzver = '1' zzchtime = '20190620181523' zzdel = '1'
)
).
"调用下游服务
TRY . lo_proxy->import_domain(
EXPORTING import_domain = import_domain
IMPORTING import_domain_response = import_domain_response
).
MESSAGE import_domain_response-parameters-es_response-es_return-zzmsg TYPE 'I'.
CATCH cx_ai_system_fault INTO DATA(lo_system_error).
DATA(lv_message) = lo_system_error->get_text( ).
MESSAGE lv_message TYPE 'S' DISPLAY LIKE 'E'.
ENDTRY.
|