0

我们拥有开发,测试和生产的标准3环境设置。每个环境都有自己的报告服务器,Web服务器,数据库服务器等。环境迁移BO报告

我们的部分迁移是在服务器之间移动我们的业务对象(xi r2)报告,但现在我们需要手动更新连接每个报告的设置。现在有40多份报告,这是轻微的痛苦,随着我们的继续,这将成为一场噩梦。

由于我们如何生成报告,我们无法在生成报告时动态更改连接字符串。我们使用存储的procs而不是Universes,因为这是团队最熟悉的。

任何建议将不胜感激。

+0

Simliar to this(http://stackoverflow.com/questions/40545/replace-a-database-connection-for-report-and-all-subreports)但由于我们直接使用存储库,所以这些解决方案不起作用。 – smaclell 2009-10-06 14:08:41

回答

0

我搜查了很多,这似乎是一个不寻常的情况。我的最终解决方案似乎没问题,就是在每个环境中都有一致的DSN连接字符串。这意味着每个连接字符串都是相同的。

它仍然感觉不对,如果有人有其他想法会很好。

编辑:

测试后一点点,我发现我们的许多存储proceedures的使用DSN不会跑这悲惨地失败了。之后,我完全放弃了。

0

有一个API,你可以用它来编程地更新这种东西,但我不记得如何去做。查看Business Objects - IIRC提供的文档,它们不是公开提供的(至少在2006年,当我上次使用它时),所以您可能必须从供应商处获得它们。

0

查看BusinessObjects SDK的CrystalDecisions.Enterprise.Desktop.Report Assembly中的Report Class'ReportLogon Class。很多选项用于更改数据库连接。

我为客户端写了类似的东西来进行批量更改Universe和WebI报告。我会想象它对Crystal Reports非常相似。

+0

感谢您的评论。我将不得不进一步研究它,但是我需要在报告在CMS时更改报告的连接。 – smaclell 2009-11-19 17:42:02

+0

是的,这是使用BOE SDK可以完成的任务之一。 – craig 2009-11-19 20:23:47

0

你是在自己改变宇宙连接还是宇宙?

在我们的环境中,我们通过让Universe在环境中命名相同,但每个环境都有不同的Connection by环境来解决此问题。这可以防止需要更改每个报告。

+0

这非常合理,我在网上查看时看到了这个解决方案。可悲的是,我们不使用Universe,而是坚持使用直接的SQL。我已经更新了这个问题来表明这一点。 – smaclell 2009-11-19 17:45:05

+0

BusinessObjects SDK也可用于更改Universe的数据连接:http://www.cogniza.com/blog/?p=128 – craig 2009-11-19 20:29:07