我在这里错过了一些简单的东西吗?这个简单的功能是升级到更新的 SSRS 版本所附带的吗?
SSRS 2012 中的标准订阅似乎也不允许输入描述(虽然我找不到 UI 的屏幕截图)。
虽然我从未使用过数据驱动的报告,但我想知道这些是否会提供我需要的功能。鉴于我并不真正需要订阅数据驱动,因此设置起来似乎需要做很多工作。
如果标准订阅满足业务需求,我会反对数据驱动订阅的需求。这值得你花时间和精力吗?如果是,那么明显的优势是订阅描述在 UI 中是可编辑的,并且在修改订阅时似乎不会被覆盖。
如果您仍然对使用标准订阅感兴趣...
“破解” SSRS 以使订阅不会覆盖描述(无论如何在 UI 中不可编辑)的一种方法是修改存储过程 ReportServer.dbo.UpdateSubscription。
免责声明:使用以下建议需您自担风险。这涉及修改 Reporting Services 所依赖的标准存储过程。
您可以更改更新语句,以便仅在订阅不是数据驱动订阅时才修改描述值(我们不想破坏可在 UI中编辑的数据驱动订阅描述)。在存储过程中,您可以通过查看@DataSettings 的值来区分数据驱动订阅和标准订阅。如果是IS NULL
,那么它是一个普通的旧订阅。如果是IS NOT NULL
,那么我们正在研究数据驱动的订阅。
更新语句中的以下行:
[Description] = @Description,
可以改为:
[Description] = CASE WHEN @DataSettings IS NULL THEN [Description]
ELSE @Description
END,
这将在 SSRS 中修改所有标准订阅描述时保持相同,但允许修改数据驱动的订阅描述。