我有一个基于业务功能发送给不同用户组的SSRS报告。我需要订阅更改从地址取决于谁的报告是发送给谁。例如,当报告是为财务组,它应该发送从Finance@example.com,但当它是为采购小组,它应该来自ProcurementAdmin@example.com。
目前,报告只是从订阅设置的from字段中配置的地址发送。
有一次,我在某个帖子中看到,更改订阅表中的所有者ID可以做到这一点--但这并没有为我改变任何事情。
在SSRS订阅中是否有一种使from地址动态的方法?
我正在使用Server和SSRS 2008 R2。
发布于 2015-04-28 06:55:56
最简单的方法是创建与配置的地址不同的多个订阅。但是,如果您有Server的版本,那么还有更好的方法。
您可以使用数据驱动的订阅来完成这一任务。这允许您使用SQL查询设置所有订阅选项。您需要使用Server的企业或商业智能版本才能使用数据驱动的订阅。
我假设您的报告使用一个参数来确定报告的类型(例如财务、采购等)。
首先,转到报表的订阅部分,并创建一个新的数据驱动订阅:

然后,为将返回订阅信息的SQL查询配置数据源。注意:这实际上并不需要依赖于数据库中的表,如果这对您有效的话,您可以合成SELECT语句中的所有值。
您可以使用类似于此的查询获取所有设置:
SELECT 'finance' AS type,
'finance_report_people@example.com' AS rcptAddr,
'FinanceAdmin@example.com' AS fromAddr
UNION ALL
SELECT 'procurement',
'procurement_report_people@example.com',
'ProcurementAdmin@example.com'然后,接下来的几个屏幕允许您使用此查询确定的值来设置订阅的各种选项。在本例中,您将参数值设置为type字段,to值将使用rcptAddr字段,您将使用fromAddr设置from字段。
通过这种方式,您可以配置具有不同收件人的动态订阅、对地址的答复、地址、主题等,所有这些都基于要传递给报表的参数值。
https://stackoverflow.com/questions/29909901
复制相似问题