SSRS订阅管理工具的开发与应用

在企业环境中,报告的分发是一个常见的需求。通常,这些报告可以通过电子邮件发送给特定的个人或分发组。分发组的优势在于可以轻松地通过维护分发组来添加或移除接收报告的人员。然而,在某些情况下,使用分发组并不切实际。例如,当接收报告的人员被替换,或者出于其他原因需要更改某个人的订阅时,确定需要更改哪些报告订阅就变得困难。这可能意味着需要打开多个报告的订阅,以确定是否需要进行更改。

SSRS报告及其订阅的信息存储在ReportServer数据库中。Catalog表存储了报告的信息,而Subscriptions表存储了订阅的信息。两者通过Catalog表中的报告ID相关联,这是在SQL Server中定义的外键关系。订阅信息以XML字符串的形式存储在Subscription字段的ExtensionSettings中。订阅的各个部分,例如To、CC、BCC和其他值都存储为值。

解决方案

为了解决这个问题,创建了一个LightSwitch应用程序来搜索SSRS订阅中的特定名称。该应用程序将有一个用于搜索订阅的屏幕和用于Catalog和订阅条目的详细信息屏幕。还添加了从LightSwitch应用程序打开报告的功能,以便可以在订阅中进行更改。这个解决方案使得在需要时查找和更改订阅变得更加容易。它消除了仅仅为了找到不包含想要更改的名称的订阅而打开订阅所浪费的时间。

应用程序

只想在Catalog表中显示Path(报告的完整层次结构路径)、Name和Description以及Subscriptions集合。还将想要通过与Subscriptions的关系创建的Subscriptions集合。发现,如果一个字段被标记为可搜索的,即使它没有在搜索屏幕上显示,它也会被包含在搜索中。因此,将想要取消选中所有其他字段的Is Searchable。这在LastStatus字段上尤为重要,因为这个字段包含了关于最后一次发送的订阅的信息,即使当前订阅中没有包含人员的名字,也可能包含人员的名字。

只想在Subscription表中显示和搜索Extension Settings和通过与Catalog表的关系创建的Catalog集合。查看Catalog和Subscriptions表,会注意到两者之间的关系在设计器中显示。还添加了一个计算字段,用于格式化设置。在每个字符串之前放置了一个回车换行符(新行),以便每个参数在单独的一行上显示,使其更易于阅读。这个格式化字段(称为FormattedSettings)是屏幕上始终显示的。

屏幕

这是一个标准的搜索屏幕。格式化的设置、Catalog路径(作为链接)和Subscription ID(作为链接)是显示的字段。由于格式化设置字段是多行的,已经将其高度设置为5行。可以输入电子邮件地址的部分或全部,以找到包含该电子邮件地址的订阅。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485