如何在Crystal Reports Server中更改rpt报表的数据源

时间:2010-08-10 19:08:51

标签: crystal-reports

我有3台安装了Crystal Reports Server XI R2的不同计算机。它们位于不同的子网中,指向具有相同模式定义但名称不同(开发,测试,生产)的不同oracle数据库。

我在开发环境中创建了一个rpt文件,指向“dev”模式。 一切都很好。该报告已成功执行。

当我得到相同的rpt并在测试服务器中发布它时,我无法更改数据源位置。似乎rpt文件修复了其创建时使用的数据源。

任何人都知道如何更改rpt文件的数据源,使其独立于数据库位置并独立于设计人员使用的数据库?

由于

1 个答案:

答案 0 :(得分:0)

我从问题中假设不同的Oracle数据库具有不同的数据库名称,但具有相同的模式名称 - 类似于开发,测试和实时的OperationalDB? (如果它们具有不同的模式名称,则会更复杂。)

如果是这样,那么这取决于你正在使用什么类型的驱动程序。

如果使用ODBC驱动程序,则只需在每台Crystal计算机上设置具有相同数据源名称的不同ODBC源(指向相应的数据库)。

如果使用本机Oracle驱动程序,那么我建议在每台机器上编辑TNSNAMES.ORA文件,使它们各自具有指向相应数据库的相同TNS名称。

如果使用本机Oracle驱动程序而您无法编辑TNSNAMES.ORA文件(例如,如果它是共享网络文件而不是位于每台Crystal计算机上),则需要更改每次将报表从一台计算机传输到另一台计算机时,报表设计器中的数据源位置(或通过API,如果通过API访问Crystal)。