SSRS 仅当查询返回数据时才发送数据驱动的电子邮件

问题描述 投票:0回答:1

我们正在努力开发诚信报告以保持桌子清洁。

例如:

收件人:[email protected] 来自:[email protected] 主题:拥有多个主要电子邮件地址的个人

身体:

ID 电子邮件地址
1 我@me.com
1 [email protected]

我们期望有一种方法可以根据结果计数有条件地发送报告。示例:当 resultset > 1 发送电子邮件至 [email protected] 否则不发送电子邮件.

我们找到了强制错误的解决方法。但这似乎是一种相当标准的做法。 SSRS 是否提供执行此操作的本机功能?

reporting-services reportingservices-2005 ssrs-2016
1个回答
0
投票

除非您拥有带有数据驱动订阅的企业版,否则没有本地方法可以防止发送空白报告。

您可以使用一些解决方法。

一个是像你提到的那样添加一个错误。

还有一个就是发个报告说今天没有重复了

工作更顺畅的方法是添加一次性订阅并使用每天运行的 SP 与 SQL Server Agent 触发它。 SP 会计算您的记录并使用 IF 来触发报告订阅。

DECLARE @RESULT_SET INT = (SELECT COUNT(*) FROM ...)

IF @RESULT_SET > 1
    EXEC dbo.AddEvent @EventType = 'TimedSubscription', @EventData = 'b8ed8dbc-49b2-40ba-b21a-123456789ABC'

EventData 是订阅 ID。

© www.soinside.com 2019 - 2024. All rights reserved.