函数调用外部给的webservice,返回结果: 错误代码400
错误:1.soamanager 配置端口错误:
调整端口后报错:
java端回复:
嗯 有问题了
我待会儿看看
应该是数据有问题
WebService服务及CIS平台接口开发参考文档
以下以ERP采购订单传SRM系统为例
- SRM系统提供WebService服务地址
正文内容:http://10.4.64.19:8090/srm/service/MLPurchaseOrderService?wsdl
接口文档:
SRM系统开发人员提供接口文档发送给CIS开发人员XX()。根据接口文档XX配置后发布新的WebService地址及文档提供给ERP开发人员。 - CIS根据SRM服务地址配置生成新的WebService服务地址(wsdl)
发送报文:XXXX
返回报文:XXXX
CIS开发人员以XML文件提供给ERP开发人员。 - SAP创建消费者
SE80进入开发包ZMLSCP01,选中包右键创建—> 企业服务
选择Service Consumer,继续
选择external WSDL,继续
选择URL,继续
填入URL,继续
填写包,请求号,前缀填:Z 继续并激活。
4. Soamanager 配置服务消费者
输入事务代码跳转至网页:
http://upd.changhong.com:8000/sap/bc/webdynpro/sap/appl_soap_management?sap-language=ZH
Web服务配置
搜索依据:消费者代理;搜索模式:ZCO_REQUEST_HANDLE_MLPURCHASE;执行
选中消费者代理,点Apply Selection
创建逻辑端口,注意配置类型:手动配置
保存
5. SAP调用Proxy
创建函数ZMLSCP1_FR0013 用于发送采购订单,传入参数订单抬头和订单行项。
代码注意的几个点:
- request_data 请求xml格式字符串的拼接(字符串拼接宏及转义字符的处理)
- 代理proxy的调用(异常的处理)
- return_data 返回xml格式字符串消息的解析(strans转换的使用)