使用 BusinessObjects 存储库作为 Crystal Report 的数据源
我想使用 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 包装器。这听起来是一项相当艰巨的任务。
有没有人成功地完成了我需要做的事情?
I would like to use the information contained in BusinessObjects repository as a datasource for a Crystal Reports. Unfortunately, this information isn't persisted in a simple table structure--most of the properties are stored in encrypted, binary fields.
The are a number of ways to access BO's repository:
- 'traditional' SDK (Java, COM, .Net)
- SOAP SDK (http://[server:port]/dswsbobje/services/listServices)
- query tool (http://[server:port]/businessobjects/enterprise[11|115|12]/adminlaunch/query/)
Option 1 won't work in my situation, as I would like to deploy the reports with BO Enterprise, rather than a customized web application.
Option 2 may work, but I'm not certain how well Crystal Reports interfaces with SOAP, especially since it would need to connect to a second SOAP service for authentication.
Option 3 doesn't work because it returns HTML (not XHTML)
My most-viable option at this point is to re-write #3 to return an XML document and create the supporting XSD. If I do so, I'll probably post the solution on github.
Another option would be to (somehow) add a REST wrapper around the SOAP services. This sounds like a pretty daunting task.
Has anyone had any success doing what I need to do?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
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 是 unix 或 Linux 的默认选项,但仍然可以使用 MySQL(之前的默认选项)。其中任何一个都应该可以直接访问,并提供比标准存储库界面更多的细节。
如果您采用直接访问路线,出于安全原因,我建议您使用代理设置,或复制到已处理您的报告需求的数据库中。
The SOAP option would be the most straight-forward, as enabling Web Services is a very simple option toggle in one the XML config files followed by a restart of Tomcat.
REST options may be available already, but would depend on your specific BO version. I'm pretty sure that Explorer had some type of REST option during the XI R2 era, and as of BO 4.0, SP4, you should be able to do this: http://help.sap.com/businessobject/product_guides/boexir4/en/xi4_bip_rest_ws_en.pdf
Finally, you have the option of direct ODBC access to the repository database. As of 4.0, MS SQL Server 2008 is the default for Windows, IBM DB2 for unix or linux, but MySQL (the prior default option) can still be used as well. ANy of these should be straight forward to access, and provide more detail than the standard repo interface.
If you go that direct-access route, for security reasons I would recommend a proxy setup, or replication into a database that already handled your reporting needs.