SQL Server 如果未点击SSRS中的“查看报告”按钮,则不会显示数据

tvmytwxo  于 2023-01-16  发布在  其他
关注(0)|答案(2)|浏览(125)

我正在使用Reporting Services显示SQL Server中某个数据集中的一些数据,该数据集有两个参数。现在,如果未单击“查看报表”按钮,则数据不会在页面加载时显示(localhost上Visual Studio / Web Browsing中的“预览”选项卡)。在页面加载时,无论是否填充参数,数据都不会显示,我该怎么做呢?
我曾尝试更改SQL代码以包含IF条件,以便如果参数为空,则选择所有数据ELSE,按参数显示数据,但这不起作用,似乎只有在单击“查看报告”按钮时才执行数据集查询。
目前,我使用的SQL代码在使用填充参数搜索并单击上述按钮时工作正常:

IF(@SearchName IS NULL OR @SearchName  = '')
SELECT * FROM dbo.person;
ELSE
SELECT * FROM dbo.person WHERE ((name LIKE '%' + @SearchName + '%') OR (surname LIKE '%' + @SearchSurname+ '%'));

预期结果是返回所有数据集(SELECT * FROM dbo.person),除非填充参数并单击按钮。

mwg9r5ms

mwg9r5ms1#

您需要在报表中为参数提供默认值;在这种情况下,它似乎需要是NULL
右键单击“报表数据”窗格中的参数,转到“参数属性”。确保启用了属性“允许空值”。然后转到“默认值”窗格,选择“指定值”和“添加”,再选择“确定”。

8ftvxx2r

8ftvxx2r2#

在我的例子中,问题是由我对一个参数的默认值查询所返回的行在我的可用值查询结果中不存在而引起的。
这一点并不明显,因为错误的行没有显示出来--因为它们不在可用列表中。

相关问题