【问题标题】:Data will not show if 'View Report' button isn't clicked in SSRS如果未在 SSRS 中单击“查看报告”按钮,则数据不会显示
【发布时间】:2019-11-05 14:25:17
【问题描述】:

我正在使用 Reporting Services 显示 SQL Server 数据集中的一些数据,该数据集有两个参数。 现在,如果未单击“查看报告”按钮,则数据不会在页面加载时显示(Visual Studio 中的“预览”选项卡/本地主机上的 Web 浏览)。在页面加载时我可以做什么,如果参数是否填充,数据仍然会显示?

我尝试将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) 除非参数被填充并且按钮被点击。

【问题讨论】:

  • 您如何启动报告(您的代码)?还是您的意思是添加默认值,以便在浏览器中导航到 SSRS 报告时显示数据?
  • 我确实使用 SSMS 将数据添加到数据库中,然后在 VS 中,我使用我在 SSMS 中创建的数据的数据源创建了一个新的 SSRS 项目。它们显示正常,就像我编写查询一样,但现在仅在浏览器中数据不会自动显示,但是感谢@Larnu,它在 VS 的“预览”选项卡中工作正常。

标签: sql sql-server reporting-services


【解决方案1】:

您需要在报告中给参数一个默认值;在这种情况下,它似乎需要是NULL

在“报告数据”窗格中右键单击您的参数,然后转到“参数属性”。确保启用“允许空值”属性。然后转到默认值窗格,选择“指定值”和添加。然后OK。

【讨论】:

  • 感谢您的意见。这部分解决了问题:在 Visual Studio 中,现在在预览选项卡中显示数据而无需输入参数,但是,在 Web 浏览器中查看时,这不起作用。知道为什么吗?
  • 您是否重新部署了报告,或重新配置了服务器上的默认值(因为重新部署报告时并不总是设置它们),@TheVaLo ?
  • 部署你的意思是?是的,我为几乎所有更改部署报告。这就是它在部署到本地主机后自动在浏览器中打开一个新选项卡的方式。在 VS 中它可以工作,但在浏览器中还没有。奇怪。
  • 是的。您是否在服务器上手动重新配置它们?就像我说的,部署没有通过的人。
  • 我只是在SSRS的VS项目上重新配置了参数的默认值(实际上是(Null))。不过,我认为我没有触及 SQL Server 中数据的“默认 (?)”值,至少没有自觉。
猜你喜欢
  • 2023-01-13
  • 1970-01-01
  • 2014-07-22
  • 2014-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多