【问题标题】:SSRS subscription fails on renderingSSRS 订阅在呈现时失败
【发布时间】:2012-09-19 15:09:11
【问题描述】:

我在 VS 2008 中创建了一个 SSRS 报告,并在 Windows Server 2012 上运行它。当我从报告管理器运行报告时,它运行没有问题。但是,当我设置预定订阅时,我收到以下错误消息:发送邮件失败:呈现报告期间发生错误。邮件不会被重新发送。

我尝试了许多渲染格式选项,包括 Excel、Word 和 CSV。它在每种格式上都失败了。我确实尝试了“带有报告数据的 XML 文件”选项并发送了邮件。我还使用了“包含链接”选项而不包含报告并且有效。

我还在“处理选项”中将“报告超时”选项设置为“不要超时报告”,但问题仍然存在。

我也在运行另一个相同的报告,除了时间间隔,它运行良好。失败的报告捕获每周数据,而运行正常的报告捕获每月数据。

对这份报告的内容有什么想法吗?我已经提供了我能想到的所有信息,但是如果有人需要任何其他信息,请告诉我!感谢您的帮助!

【问题讨论】:

  • 我的第一个想法是您需要将 SSRS 配置为使用邮件服务器,但您还有另一个有效的报告,对吧?下一个问题是报告何时呈现?可能是在晚上服务器很忙的时候。我会在日志中查看报告服务器并查看错误的详细信息。最后一条线索是每月数据有效,但每周数据无效。结果文件有多大?也许它对于您的电子邮件网络来说太大了。
  • 感谢@Davos 的想法。我会检查服务器日志并告诉你我发现了什么。
  • 我认为您的问题是身份验证。另一个报告是否使用不同的数据源?报告呈现为哪个用户?如果您习惯于使用 Windows 身份验证运行报告,那么当没有真实用户提供身份验证时,报告管理器使用什么用户?理想情况下,当您进行电子邮件或其他订阅时,您可以设置一个特定用户,您可以使用数据源设置保存该用户,然后它就会起作用。
  • 感谢达沃斯的意见。在检查日志并没有发现任何内容后,将报告搁置以等待其他优先事项,我们回到它并从头开始。最初,我们重命名报告以删除一些空格和字符(一些早已离开的人留下的不良做法)。一旦我们这样做并对其进行了测试,一切正常,并且已经工作了大约一周。尽管我们的团队现在使用标准的编程实践,但仍有很多遗留的东西。我不知道这是 SSRS 的问题,但它似乎已经解决了这个问题。
  • 我不倾向于在报告名称中使用空格,但我刚刚查看了一下,在我的一台 2008R2 服务器上有一堆名称中有空格的报告。这是你唯一改变的吗?您是否也重命名了数据源?您正在运行什么版本的报告服务?只是好奇,以防我将来看到这个。

标签: reporting-services


【解决方案1】:

虽然我不是 100% 确定这一点,但在我更改名称并删除一些特殊字符(主要是括号)之后,这似乎清除了它。

编辑:经过很长一段时间后,我确信这不是修复。我有一些报告在一段时间内似乎运行良好,但后来失败了。从报表管理器运行报表时,它运行良好,并且可以毫无问题地导出。

我随后从报告管理器运行报告并将其导出为 .csv 文件。在文本编辑器中打开此文件后,我注意到在整个报表中随机分布有双引号 (")。导出到 excel 时没有显示。我重写了脚本以将引号替换为空格。我运行它再次从报告管理器并再次将其导出到.csv,结果中有双引号。当我从 SSMS 执行此操作时,我没有得到双引号。看来这是由于导出而发生的。报告将显示在报告管理器中,但不会出现在订阅中。

任何想法或建议都将不胜感激。我已经为此工作了一段时间(几个月),需要做出一些解决方案。谢谢!

【讨论】:

    【解决方案2】:

    最终找到并解决了解决方案,方法是使用缺少的服务包更新 sql server。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-22
      • 2023-03-27
      • 2010-10-06
      相关资源
      最近更新 更多