我有一个ssrs报告,它使用共享数据集来提取我想要用于多个报告的最大日期时间值。我创建了一个名为MaxSnapshotDateTime.rsd的共享数据集,它使用查询:
select max(snapshot_DT) as snapshot_DT from dbo.SystemLog (nolock) where sync= 1
我的报告数据集Snapshotdatetime使用共享数据集。我的参数@snapshotdatetime从Snapshotdatetime数据集中获取可用和默认值。我希望能够将此@snapshotdatetime参数用于嵌入式数据集。
@snapshotdatetime参数是参数列表中的第一个参数。 Snapshotdatetime数据集是数据集列表中的第一个。 当我在SSDT中预览报表时,它最初会正确显示。但是,一旦我选择了View Report,snapshotdatetime参数就会显示为一个下拉列表,其中包含"选择一个值"作为下拉列表中可用的默认值和我的快照日期时间。 如果我将参数的可用值设置为None,则会得到不同的行为:参数显示正确但不适用于其他数据集查询。 不幸的是,我没有足够的权限来跟踪。我无法用其他来源复制。任何人都可以了解点击查看报告时发生的事情吗?
答案 0 :(得分:1)
我在这里做了一个疯狂的猜测,但我之前遇到过这样的问题并且已经做了很多让人头疼的问题。原来在rdl文件所在的解决方案中有一个rdl.data文件(它会自动创建)。这是报告的缓存文件。 “预览”报表时,将从此缓存文件而非实际数据集中提取报表的数据和设计。因此,它有可能是陈旧的。
如果您确实想要查看报告的输出,请尝试从解决方案运行报告,而不是预览报告。那会更可靠。
希望它对你有所帮助。