需要配置连接FTP的账号(安全材料),如果是FTPS 或SFTP,还需要导入证书(密钥库)
概览
HTTPS SEND
JSON到XML的转换器
XML到CSV的转换器
其中/data节点需要留意, 该节点的定义需要和ABAP中数据结构的定义一致.
通过脚本修改文件名,添加时间戳后缀, 该节点不是必须的 可以在ABAP传递的http 抬头参数(Filename)中整合相关信息.
序列执行的两个步骤
步骤一,用于把csv文件写入ftp服务器,
步骤二,用于返回一个成功消息
步骤一, 写入ftp文件
步骤二.返回一个成功消息
异常处理, 返回一个失败消息
获取CPI REST 服务的调用地址
在浏览器中获取CPI的证书
证书导入ECC/S4系统(TCODE STRUST).
-
进入修改模式
-
导入之前下载的证书文件
-
Add to certificate list(添加到证书列表)
-
保存
-
确保再次进入后能看到证书信息
配置SM59和CPI 的连接
创建一个G(HTTP connect to extenal server )类型的连接
输入连接的关键信息
-
主机域名
-
端口
-
服务地址
-
代理服务器地址(因为ECC/S4在内网系统, 无法直接访问外网的CPI服务器, 需要通过代理服务器方式)
-
登录信息
-
指定https连接(如果不指定, 系统会使用http连接,不符合CPI发布的服务要求).
创建函数Z_IF_CALL_CPI_FTP.
函数允许传入JSON串或者数据对象. 如果是数据对象, 使用通用类转换成JSON串
基于RFC目标定义http client 对象
设置密码不弹框及其它抬头参数
发送报文,并获取返回的报文
获取并解析返回的报文,
函数测试验证通过
查看FTP服务器文件
数据定义
该数据定义与IFlow中XML->CSV的节点定义相关
关于传递的JSON数据格式如下
{“data”: [{“f1”: “M001”, “f2”: “W001”, “f3”: “10”}, {“f1”: “M002”, “f2”: “W002”, “f3”: “20”}]}
原创文章,作者:guozi,如若转载,请注明出处:https://www.sudun.com/ask/89124.html