在 SSRS 中将两个不同数据库服务器的结果集显示到一个报表中,并提供参数选择



我在两个结构相同的数据库服务器中有两个表。我正在准备一个SSRS报告,其中表名和加入日期作为参数选择。如果我选择表1 [下拉列表]和连接日期开始/结束日期过滤器,则表1数据将显示在SSRS报告中,如果我选择表2,那么它应该显示表2数据。

表1列: 开斋节, ename, eno, joiningdate表2列: 开斋节, ename, eno, joiningdate

注:应该有一个数据集和一个报表

一种方法是每个服务器有一个 2 个数据集。然后为相应的数据集提供 2 个 Tablix。根据所选参数,显示相应的 tablix 并隐藏另一个 tablix。

如果您的@source参数表的值为 1(对于源 1(和 2(对于源 2(

你可以

更进一步,把它传递给你的查询......就像数据集1一样,你可以包含where @source = 1,你的数据集2说where @source = 2

这将防止代码在它不打算用于的服务器上不必要地运行。. 有意义吗?

如果你从第一台服务器链接了第二台服务器,那么你可以从第一台服务器做这样的事情......

IF @Server = 1
    BEGIN
        SELECT eid, ename, eno, joiningdate FROM table1
    END
ELSE
    BEGIN
        SELECT eid, ename, eno, joiningdate FROM [MyLinkedServerName].[myDatabaseName].[mySchemaName].[table1]
    END

。其中@Server是从 SSRS 传入的参数名称

最新更新