使用BusinessObjects存储库作为Crystal Report的数据源

时间:2011-04-22 13:23:13

标签: soap crystal-reports repository business-objects-sdk

我想将BusinessObjects资源库中包含的信息用作Crystal Reports的数据源。遗憾的是,此信息不会保存在简单的表结构中 - 大多数属性都存储在加密的二进制字段中。

有许多方法可以访问BO的存储库:

  1. '传统'SDK(Java,COM,.Net)
  2. SOAP SDK(http:// [server:port] / dswsbobje / services / listServices)
  3. 查询工具(http:// [server:port] / businessobjects / enterprise [11 | 115 | 12] / adminlaunch / query /)
  4. 选项1在我的情况下不起作用,因为我想用BO Enterprise部署报告,而不是自定义的Web应用程序。

    选项2可能有效,但我不确定Crystal Reports与SOAP的接口有多好,特别是因为它需要连接到第二个SOAP服务进行身份验证。

    选项3不起作用,因为它返回HTML(不是XHTML)

    此时我最可行的选择是重写#3以返回XML文档并创建支持的XSD。如果我这样做,我可能会在github上发布解决方案。

    另一种选择是(以某种方式)在SOAP服务周围添加REST包装器。这听起来像是一项非常艰巨的任务。

    有没有人做过我需要做的事情?

1 个答案:

答案 0 :(得分:0)

SOAP选项将是最直接的,因为启用Web服务是一个非常简单的选项,可以在一个XML配置文件中切换,然后重新启动Tomcat。

REST选项可能已经可用,但取决于您的特定BO版本。我非常确定Explorer在XI R2时代有一些REST选项,从BO 4.0,SP4开始,你应该可以这样做:http://help.sap.com/businessobject/product_guides/boexir4/en/xi4_bip_rest_ws_en.pdf

最后,您可以选择直接对存储库数据库进行ODBC访问。从4.0开始,MS SQL Server 2008是Windows,IBM DB2 for unix或linux的默认设置,但MySQL(先前的默认选项)仍然可以使用。其中任何一个都应该直接访问,并提供比标准repo界面更多的细节。

如果你选择直接访问路由,出于安全考虑,我会建议代理设置,或者复制到已经处理了报告需求的数据库中。