【问题标题】:tsql to export and attach SSRS report to email?tsql 导出和附加 SSRS 报告到电子邮件?
【发布时间】:2018-03-30 08:35:22
【问题描述】:

我不认为有一个简单的方法可以做到这一点,但这里就是。

我们有一个SSRS 报告,可以使用http://MyServer/ReportServer/Pages/ReportViewer.aspx?%2fSales%2fSalesReport 调用

我们也使用数据库邮件来发送我们的电子邮件,所以代码如下所示:

EXEC msdb.dbo.sp_send_dbmail    
@profile_name = 'Joe Smith',    
@recipients = 'john@Company.com',    
@subject = 'Daily Sales',    
@body = 'Some HTML',    
@body_format = 'HTML' ;    

仅使用 tsql,我能否以某种方式将 Excel 作为附件添加到发送的电子邮件中?

可以使用http://MyServer/ReportServer?%2fSaless%2fSalesReport&rs:Command=Excel 在本地查看 Excel,但我不确定如何将其作为附件包含。

谢谢。

【问题讨论】:

  • 您可以使用 @file_attachments='c:\myFile.xlsx' 使用 sp_send_mail 发送文件附件,但我认为您不能直接从 T-SQL 执行报告。您可以查看订阅以直接向收件人解决此问题,或者安排报告将 Excel 文件转储到特定位置,然后您的 T-SQL sp_send_mail 命令将使用该固定网络文件名作为附件。

标签: excel sql-server-2008 tsql email reporting-services


【解决方案1】:

好吧,仅使用 TSQL,您将删除此问题的 SSRS 部分。无需使用 SSRS 报告,只需直接调用代码并通过@attach_query_result_as_file parameter 使用sp_send_dbmail 中的结果即可。如果您的 SSRS 报告正在格式化您的结果,因此您必须使用 SSRS 报告,那么您可以安排此报告运行并将 xls 拖放到您的 SQL Server 可以访问和发送的文件共享上它与sp_send_db_mail@file_attachments 参数一起使用。

【讨论】:

  • 很高兴看到有人和我有同样的想法……但快了 30 秒 :)
  • 从外观上看,你快了 30 秒 @AlanSchofield
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-27
  • 2018-08-02
  • 2021-09-15
  • 2012-05-07
  • 2019-04-17
相关资源
最近更新 更多