SSRS订阅:新定义失败,旧定义失败

时间:2015-06-11 13:32:49

标签: email sql-server-2012 subscriptions reporting-services-2012

新报告的新报告失败,错误"发送邮件失败:指定的字符串不是电子邮件地址所需的格式。邮件不会重新发送。"

它的定义方式与现有的一样,使用相同的ReportServer,配置不变,因为它开始工作。 使用完整的电子邮件地址(user.name@do-main.co.uk),在Exchange Server上设置的现有SMTP服务器(正常工作,其他服务成功使用它)但队列不接收新的订阅电子邮件。此报告单独管理安全性(访问受限,使用完整DOMAIN \用户名表示法添加用户)。

防火墙/代理设置有变化,但无论如何SSRS都是内置的,所以没有看到连接..

我还能在哪里查看问题所在?

2 个答案:

答案 0 :(得分:0)

我删除了订阅并从头开始重新创建。没有错误,一切正常。有趣的是,我手动输入了电子邮件地址,与以前尝试复制并从其他地方粘贴它们相反。

仍然很奇怪。

答案 1 :(得分:0)

复制时可能包含字符,但名称必须完全匹配。我有这个问题,非常挑剔...

这里有一些用于分析订阅的有用脚本,微软不容易识别后端的个人用户和报告,但如果有一个隐藏,你可能会发现错误:

;

WITH subscriptionXmL
AS (
    SELECT SubscriptionID
        ,OwnerID
        ,Report_OID
        ,Locale
        ,InactiveFlags
        ,ExtensionSettings
        ,CONVERT(XML, ExtensionSettings) AS ExtensionSettingsXML
        ,ModifiedByID
        ,ModifiedDate
        ,Description
        ,LastStatus
        ,EventType
        ,MatchData
        ,LastRunTime
        ,Parameters
        ,DeliveryExtension
        ,Version
    FROM ReportServer.dbo.Subscriptions
    )
    ,
    -- Get the settings as pairs
SettingsCTE
AS (
    SELECT SubscriptionID
        ,ExtensionSettings
        ,
        -- include other fields if you need them.
        ISNULL(Settings.value('(./*:Name/text())[1]', 'nvarchar(1024)'), 'Value') AS SettingName
        ,Settings.value('(./*:Value/text())[1]', 'nvarchar(max)') AS SettingValue
    FROM subscriptionXmL
    CROSS APPLY subscriptionXmL.ExtensionSettingsXML.nodes('//*:ParameterValue') Queries(Settings)
    )
SELECT *
FROM SettingsCTE
WHERE settingName IN ('TO', 'CC', 'BCC')

还可以找到这篇关于设置订阅的可爱文章:

http://www.sqlcircuit.com/2012/10/ssrs-implementation-of-file-share.html