ReportExecution2005 - 您能获得渲染报告的行数吗?

时间:2010-11-23 17:25:49

标签: reporting-services ssrs-2008

我正在努力解决SSRS发送预定报告电子邮件的事实,即使报告中没有数据也是如此。我认为我可以使用ReportExecution2005执行(呈现)报告,然后在行数大于零时发送电子邮件。这可能吗?

1 个答案:

答案 0 :(得分:2)

首先我发布了报告,然后我创建了只能触发一次的订阅。完成后,我抓住了该报告订阅的工作名称。然后我创建了一个检查记录计数的存储过程,如果检测到记录,则触发了msdb..sp_start_job @job_name ='',它通过电子邮件发送给我和我们的技术支持人员。简而言之......它只会在检测到记录时通知我。

DECLARE @cnt smallint

SELECT @cnt = COUNT(FieldName) FROM TableName

IF (@cnt) > 0

BEGIN

  exec msdb..sp_start_job @Job_Name = 'E1F4B93A-8578-490D-BD15-3C989C3BE4F3'

END

ELSE

BEGIN

PRINT 'No Records Found!'

END

这是我的帖子的链接,其中有一个查询,可以帮助您获取正确的工作名称。它适用于2005年和2008,但是如果您使用命名实例,则需要对其进行修改。 http://ayesamson.com/category/sql-server/2008/reporting-services-2008/subscriptions/

希望这会有所帮助。我们使用标准版的SQL Server 2005& 2008 / R2