【问题标题】:Find where report email job is查找报告电子邮件作业的位置
【发布时间】:2014-07-09 12:09:07
【问题描述】:

我在 Visual Studio 2012 中有一份报告 (.rdl)。我知道该报告每天早上 5 点通过电子邮件发送,但我找不到执行此操作的工作。我一直在寻找 SQL Server 代理工作,但没有。

我听说这个工作不能在 SQL Server 代理中,因为那样报告中的图片不能附加到电子邮件中(不知道这是不是真的?)。

我尝试通过连接到数据库来查看 Reporting Services 配置管理器,但我认为它只是那里的服务/服务器(?)属性。找不到任何发送该报告的电子邮件作业。

当我查看用于报告的数据集时,我只能找到填充它的源(存储过程),但这对我没有多大帮助..

您知道在哪里可以找到这份工作吗?尝试发送 .rdl 报告电子邮件时什么是正常的?从 VS 2012 可以做到这一点吗?

【问题讨论】:

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


    【解决方案1】:

    报表订阅通过 SQL Server 代理运行。

    您可以通过对您的 ReportServer 数据库进行这样的查询来获取作业名称,它们是 GUID 类型的字符串:

    select JobName = rs.ScheduleID
      , ReportName = c.Name
    from ReportSchedule rs
      inner join [Catalog] c on rs.ReportID = c.ItemID
    

    这将给出如下结果:

    可以在 SQL Server 代理中看到的匹配作业:

    您可以检查作业并查看它在做什么:

    即在 ReportServer 数据库上调用存储过程。

    请参阅SSRS Subscriptions and their SQL Server Agent job names 了解更详细的查询。

    【讨论】:

    • 我找到了这份工作。但是是否可以为配置设置一些 GUI 而不是在 Job Properties 中执行此操作?
    • 我在图像上找到了您所拥有的确切内容,但第 1 步中的“exec....”对我来说毫无意义,因为您看到 @EventData 也像一个 GUID
    • 您在寻找哪些在通过报表管理器网站配置订阅时看不到的内容?
    • msdn.microsoft.com/en-us/library/ms157147.aspx 即报表服务器的 Web 界面。它将允许您管理报告、文件夹、订阅等。
    猜你喜欢
    • 2021-10-02
    • 2016-10-11
    • 2012-07-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多