Soap 将BusinessObjects存储库用作Crystal报表的数据源

Soap 将BusinessObjects存储库用作Crystal报表的数据源,soap,crystal-reports,repository,business-objects-sdk,Soap,Crystal Reports,Repository,Business Objects Sdk,我想使用BusinessObjects存储库中包含的信息作为Crystal Reports的数据源。不幸的是,这些信息并没有保存在一个简单的表结构中——大多数属性都存储在加密的二进制字段中 以下是访问BO存储库的多种方法: “传统”SDK(Java、COM、.Net) SOAP SDK(http://[server:port]/dswsbobje/services/listServices) 查询工具(http://[server:port]/businessobjects/enterprise

我想使用BusinessObjects存储库中包含的信息作为Crystal Reports的数据源。不幸的是,这些信息并没有保存在一个简单的表结构中——大多数属性都存储在加密的二进制字段中

以下是访问BO存储库的多种方法:

  • “传统”SDK(Java、COM、.Net)
  • SOAP SDK(http://[server:port]/dswsbobje/services/listServices)
  • 查询工具(http://[server:port]/businessobjects/enterprise[11 | 115 | 12]/adminlaunch/query/)
  • 选项1在我的情况下不起作用,因为我希望使用BO Enterprise部署报告,而不是定制的web应用程序

    选项2可以工作,但我不确定Crystal Reports与SOAP的接口是否良好,特别是因为它需要连接到第二个SOAP服务进行身份验证

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

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

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


    有人成功地完成了我需要做的事情吗?

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

    REST选项可能已经可用,但取决于您的特定BO版本。我非常确信,在XR2时代,Explorer有某种类型的休息选项,而对于BO 4席,SP4,你应该能够做到这一点:

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

    如果您选择直接访问路径,出于安全原因,我建议您安装代理,或者复制到已经满足您报告需求的数据库中