Reporting Services订阅不允许修改“收件人:”字段

时间:2009-06-03 21:32:28

标签: sql sql-server sql-server-2008 reporting-services

我有一个小问题让我头疼。我们的报表服务器是Win 2008服务器上的SQL Ent 2008。当具有报表浏览器权限的用户尝试设置报表订阅时,“收件人:”字段将显示为灰色并预先填充其用户名。他们无法更改此内容,也无法发送到他们的电子邮件地址,即username@domain.com。任何线索都会非常感激。

4 个答案:

答案 0 :(得分:28)

“网站设置”..“配置项目级角色定义”..“浏览器”

他们只能“管理个人订阅”。 SSRS不允许更改电子邮件地址,因为他们可以在其中放置任何内容。

在BOL,Managing Subscriptions ...和How to: Subscribe to a Report (Report Manager),这会导致Configuring a Report Server for E-Mail Delivery。这说:

  

设置的配置选项   收件人:消息中的字段

     

用户定义的订阅   根据权限创建   由管理人员授予   订阅任务包含预设   基于域的用户名   用户帐号。当用户创建时   订阅,收件人姓名   在To:字段中是自我解决的   使用的域用户帐户   创建订阅的人。

     

如果您使用的是SMTP服务器或   使用电子邮件帐户的转发器   与域名不同   用户帐户,报告发送将   SMTP服务器尝试失败   将报告提供给该用户。

     

要解决此问题,您可以   修改配置设置   允许用户在“收件人”中输入名称:   字段:

     
      
  1. 使用文本编辑器打开RSReportServer.config。
  2.   
  3. 将SendEmailToUserAlias设置为False。
  4.   
  5. 将DefaultHostName设置为域名系统(DNS)名称或IP   SMTP服务器的地址或   转发器。
  6.   
  7. 保存文件。
  8.   

答案 1 :(得分:6)

我意识到这是一个3岁的帖子(虽然在5个月前有关于此帖的活动)但是我发现了另一个可能对其他人试图解决这个问题的tid-bit。

作为配置文件RSReportServer.config的一部分,如 installdir \ Reporting Services \ ReportServer \中的上述答案中所述,该文件的一部分可以将您的域名添加到其中与用户别名一起使用。

要编辑的标签是 DefaultHostName ,如微软文档中所述,当该值设置为true时,此值与 SendEmailToUserAlias 标签一起使用。

最终用户仍有灰色显示To:字段,显示其AD用户别名,但是当他们设置通过电子邮件发送报告的订阅时,SMTP服务器会在执行时将指定的域(从DefaultHostName标记)附加到别名。

我不想使用上一个答案中指定的工作轮次,因为我不希望最终用户能够指定任何电子邮件地址。

这适用于SQL 2008 R2的SSRS。来自Microsoft的文档(http://msdn.microsoft.com/en-us/library/ms157273.aspx#bkmk_email_extension)

N.B。确保在更改文件之前关闭报告服务流程,在进行并保存更改后,请重新启动该流程。

答案 2 :(得分:1)

这很好用。

只是为了让您知道该文件位于以下位置(除非您正在寻找它)。 RSReportServer.config位于%Program Files%\Microsoft SQL Server\MSSQL.n\Reporting Services\ReportServer文件夹

答案 3 :(得分:1)

我添加了gbn的解决方案版本。

1.使用文本编辑器打开RSReportServer.config。

2.将SendEmailToUserAlias设置为True。 (所以To:不是空白的)

3.将DefaultHostName设置为SMTP服务器或转发器的域名系统(DNS)名称或IP地址。

4.保存文件。

此版本将在“收件人:”部分显示您的别名,电子邮件将立即显示。