Coldfusion Report Builder很棒。
一个小问题。我们使用ANT + CFANT进行部署。
当我们创建报告时,请在开发框中名为MyApp_dev的数据源中说明。
我们的其他服务器是生产服务器。它还包含一个暂存构建,以确保在我们发布到live之前一切顺利。 (感谢Al Everett引起我的注意。)
创建报告时,一切都很有效。
我们将报告部署到我们的登台服务器,该服务器的数据源为MyApp_Staging。该服务器也可能会或可能不会在MyApp_Live下运行实时应用程序。 Ant将更新推送到Staging非常棒。
运行报告,崩溃并烧伤。为什么?
即使应用程序正在使用MyApp_Staging数据源,报告似乎也在寻找MyApp_Dev data_source。
在挖掘中我发现了一些方法,我想从头开始做这一个,最后的,理想的方式,而不是在我有一个新的Aha时不得不回去做几十个不同的报告!时刻。
1)明显:将数据源传入 cfreport 标记。对于从v8开始的ColdFusion Builder Reports或在Linux上测试的v9不起作用。
2)到目前为止最实际的选项(但很痛苦):将查询作为对象传递到ColdFusion Builder报告中。让我们考虑一下:
3)不太理想。将其解压缩,让分段中的所有报告都从实时服务器上运行。也许将实时数据复制到暂存(没有结构变化)让它看起来相似。
是否有任何雄辩的方法来实现上述目标?
提前致谢!
答案 0 :(得分:0)
如果您有不同的dev / staging / production box,为什么不在每个上使用相同的数据源名称呢?这样可以避免让代码弄清楚它在哪里。
由于我当前任务的安全问题使我无法使用RDS,因此我当然使用选项2。我也喜欢它,因为它更容易调试。