来自excel的BO 4.X Webi下载报告

时间:2015-11-03 09:51:21

标签: excel vba excel-vba business-objects

使用新发布的WEBI,无法像以前那样用DESKI时代来处理VBA报告。

我想知道是否有办法在excel表单击按钮(带参数)并从服务器获取报告。

我一直在考虑使用restFUL网络服务,但似乎存在性能问题。

我还考虑过使用SDK在中间使用JAVA应用程序,但是当我添加一层时它并不令人满意。

您知道是否还有其他方法可以从excel下载网络报告。

1 个答案:

答案 0 :(得分:1)

对于此类要求,您通常使用 OpenDocument 功能。然而,有一件事它不会做,但至少不能用于Webi文档,而是以Excel格式提供输出(HTML和PDF是Webi的两种可能格式)。平心而论,导出到Excel选项只需要两到三次点击,但我可以理解,这不是一个理想的解决方案。

另一个选项是 Java SDK ,我不建议这样做,因为不推荐使用ReBEAN SDK(您需要与Webi文档交互的Java SDK的一部分),并由REST SDK取代

如果OpenDocument功能不足,那么 REST SDK 将是您的选择。请记住,这将涉及很多步骤,每次都向WACS服务器发送命令,然后解码答案。步骤将是:

  • 验证并获取登录令牌
  • 刷新文档(如有必要,传递提示值)
  • 将文档导出到Excel
  • 关闭文档

仅在WACS服务器上支持REST接口,该服务器应在您的BI4服务器上运行(除非您有自定义的格局)。如果它很慢,我会建议查看此性能问题的根本原因,而不是完全丢弃SDK。

如果您要使用REST界面,我建议选择JSON通过REST而不是XML进行通信。它更容易阅读和解析。

我不推荐的最后一个选项是 LiveOffice 。这是一个单独的产品,允许您将Webi文档中的内容嵌入Office文档(最值得注意的是Excel)。 LiveOffice一直存在一些问题,并没有从SAP那里获得太多关于急需更新的热情。

最后一个想法:报告永远不会出现在同一张纸上,至少没有额外的编码量。无论您最终选择哪种SDK,您总会得到一个Excel文件。如果要在开始使用的Excel文件中显示结果,则需要对步骤进行编码以打开生成的文件,获取内容然后将其复制到工作表中。