【问题标题】:SSRS reports based on Getdate() function基于 Getdate() 函数的 SSRS 报告
【发布时间】:2018-08-02 06:35:13
【问题描述】:

我在查询中使用 getdaye() 函数开发了一份报告。该报告在 SQL management Studio 上运行良好。

我使用 SQL Server 数据工具创建了一个报告,该报告基于我在 SQL Studio 中编写的查询。我已经使用数据源建立了连接,并且能够连接到 SQL 数据库。几天后,当我使用该工具运行报告时,报告数据与我使用 SQL 管理工作室运行查询时获得的数据不同。显然 Getdate() 没有获取正确的日期。

仅当我将查询复制并粘贴到 SQL Server 数据工具中然后运行报表时,报表数据才会匹配。

我是否做错了什么,或者我应该使用为日期创建一个参数并在 sql server 数据工具上指定默认值 = Now()。 是否有任何其他解决方法。

下摆

【问题讨论】:

  • 我怀疑 getdate() 在您的查询中工作正常,但这可能是您如何使用报告中返回的日期的问题。您是否在报告中使用了包含您的日期的任何表达式?你可以通过在查询结果中包含 getdate() 的结果(无论如何你可能正在这样做)并在运行报告时从 SSMS 运行跟踪(Tools SQL Server Profiler)来证明 SQL 正在工作。您应该能够看到发送到您的 SQL 服务器的确切查询

标签: reporting-services


【解决方案1】:

我猜这并没有将报表发布到报表服务器,而是重复在 Visual Studio (SSDT) 中预览结果。 SSDT 缓存数据以改善 SSDT 中的体验,并仅在需要时从数据库中检索数据。 “需要”意味着您要么更改查询,要么选择不同的参数。您当然可以将参数传递给数据库服务器,但如果您不希望这样做,则必须不时清除缓存。查看保存报告的文件夹并删除与报告同名的 *.data 文件。如here 所述,您可以通过在工具菜单中添加菜单命令来轻松完成此任务。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多