SSRS数据驱动的触发电子邮件

时间:2018-12-12 20:21:14

标签: sql-server reporting-services ssrs-2012 data-driven

我对SSRS还是陌生的,并且对如何向报告中的个人发送电子邮件有疑问。

我的任务是创建一个报告,该报告列出所有员工及其电子邮件地址和一些有关他们的信息,该报告还包含其经理的电子邮件地址。

我已经创建了列出所有员工和必要信息的报告,现在他们的经理应该收到一封电子邮件,其中仅显示有关其直属员工的信息,并且该电子邮件仅应发送给经理,如果他们下面有员工,这些员工将出现在报告列表中。

2 个答案:

答案 0 :(得分:1)

创建一个存储过程来收集报告数据。这是如何构造它的示例

1)创建存储过程

a)将经理和员工收集到一个表变量中

b)它使用游标循环遍历表变量中的每个管理器,并执行第二个存储过程,该过程使用DB-email向他们发送消息

c)选择报告数据

2)创建SSRS报告

a)创建一个数据集,该数据集从第1步开始调用您的存储过程(请注意:这将在每次运行时向管理人员发送电子邮件!)

b)将SSRS报告发布到报告服务器

c)为报表创建订阅,以便它可以在需要时运行。当SSRS调用存储过程以生成报告数据时,该存储过程将调用您的第二个存储过程,该过程将向每个经理发送电子邮件

答案 1 :(得分:1)

SSRS允许您创建使用数据的订阅,但是,它不允许您使用数据创建订阅。

您可以做的是:将“经理名称”作为参数添加到报表中,并使报表仅显示传递给该参数的经理直接下属的员工。然后为每个经理创建一个订阅,将其名称传递给“经理名称”参数。

您不能做的是使用报表生成的数据为当天要加入报表的经理动态创建订阅。为此,您需要使用.net或类似工具编写自己的报告应用程序。