点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) [BO 4.2 SP7 RES...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中) [BO 4.2 SP7 RES...
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
[BO 4.2 SP7 RESTful Web服务],您好,我现在正在替换预定计划Webi报告并下载创建的实例的应用程序中的一段Java代码(PDF 或Excel)。 目标是删除所有Java SDK依赖关系,并仅使用RESTful Web服务来重建完整的工作流。 到目前为止,我已成功实现以下目标:
1。 使用/logon/long
2登录到BO Server。 使用/documents/
3获取所需的报告参数。 通过POST到/documents/
4,将报告安排为具有填充参数的"现在"执行。 通过使用/v1/cmsquery对创建的实例ID进行查询。 (查询将查找报告文档的SI_NEW_JOB_ID属性。)
5。 从/documents/
到目前为止,所有方法都可以正常工作。 我可以在BO Web前端的报告的"历史记录"列表中看到新创建的实例,还可以在此处打开/下载Excel或PDF文件。
Java SDK应用程序的最后一步是下载用于以下目的的二进制实例文件: 客户端计算机上的本地存储。 我是通过以下解决方案做到的:
1。 通过执行上述步骤4中的查询,从IInfoStore中获取实例IInfoObject。
2。 通过调用IInfoObject.getFiles()获取IFiles列表。
3。 从该列表中获取第一个条目,并将其转换为IRemoteFile实例。
4。 通过调用IRemoteFile.getStreamingDownloadFile(0)获得IStreamingDownloadFile类型的二进制下载流。该流使我可以将所述二进制文件下载到运行该应用程序的计算机上。 不幸的是,到目前为止,我还没有成功用RESTful Web服务API替换此解决方案。 我认为它应该与
GET/infostore/folder/<实例的SI_ID>/file
一起使用,但实际上这似乎仅适用于我使用POST/infostore/上传的文件 文件夹/<文件夹ID>/文件。 通过计划报表创建的报表实例不是可通过这种方式访问的"文件夹"中的"文件"。 尝试此操作时,我收到"内部服务器错误(RWS 00070)"。
我还尝试通过使用实例的OpenDocument链接来获取文件,但这指向具有Javascript代码的HTML页面 ,只能使用它的是浏览器,不能进行低级二进制下载。
我错过了什么吗? 如何仅使用RESTful Web服务下载实例文件? 还是在BO 4.2 SP7中仍然无法实现?
最好的问候,
Jörg
您是否看过"获取日程表的实例详细信息"?
https://help.sap.com/viewer/db6a17c0d1214fd6971de66ea0122378/4.2.7/en-US/de46f377df52430a927904593aa6e342f.html
和
获取实例 报告的详细信息
https://help.sap .com/viewer/db6a17c0d1214fd6971de66ea0122378/4.2.7/zh-CN/e67c1bbb84424c2f9ed9e1ba796971d1.html
一周热门 更多>