动态 ERP 报告队列状态窗口的管理报告器停留在"排队"

症状

单击动态 ERP 管理报告器中的"生成"按钮,但"报告队列状态"窗口将状态列为"已排队"而不是"已处理"。

原因

此错误有六个潜在原因: 原因 1 如果管理报告程序处理服务与托管管理报告器 SQL 数据库的计算机位于同一台计算机上。进程服务可能由于尝试在 SQL Server 接受连接之前启动而出错。请参阅决议部分中的分辨率 1。 原因 2 发生 SQL Server 连接错误,需要重新启动管理报告程序进程服务。请参阅决议部分中的解决方法 2。 原因 3 运行管理报告器进程服务的用户没有足够的权限从管理报告器 SQL Server 数据库读取。请参阅决议部分中的解决方法 3。 原因 4 未启用管理报告器 SQL Server 数据库上的 SQL 服务代理。请参阅决议部分第4号决议。 原因 5 如果管理报告器数据库的所有者是 Windows 用户,而 SQL 服务器服务由本地用户运行,则可能会发生这种情况。如果选中事件查看器,您可能会看到以下消息: 在目标队列中排队消息时发生异常。错误 15404,状态 19。无法获取有关 Windows NT 组/用户"域\用户"、错误代码 0x5 的信息。 请参阅决议部分中的解决方法 5。

原因 6

如果在 SQL 服务器管理工作室中的"服务器属性"中选择"无计数"复选框,则可能会发生这种情况。 如果在生成报告后检查事件查看器,您可能会看到此消息:

System.data.Linq.change冲突异常:(未找到或更改行)或(在程序集"xxxxxx"中未标记为可序列化)

请参阅决议部分第6号决议。

解决方案

分辨率 1 如果使用 Windows Server 2008,您可以将管理报告程序处理服务设置为"自动(延迟开始)",而不是"自动"。 或 手动或使用类似于以下内容的脚本重新启动进程服务: 净停止 MR 过程服务 NET 开始 MR 过程服务 分辨率2 手动或使用类似于以下内容的脚本重新启动进程服务: 净停止 MR 过程服务 NET 开始 MR 过程服务 分辨率3 授予运行此服务的用户在 SQL Server 中的管理报告器数据库下的"常规用户"角色。可以在"服务控制"面板下的"登录"选项卡上找到此用户。 分辨率4 在管理报告器数据库所在的 SQL 服务器上运行以下语句: 选择名称,是否启用从系统.数据库位置名称 = DB_NAME() 和[代理]启用 = 1 此语句应返回管理报告器 SQL Server 数据库的行。如果没有,则运行下面的语句以在管理报告器 SQL Server 数据库上重新启用 SQL 服务代理: 已启用 [管理报告] 设置启用_带回滚的"代理";"分辨率5 将数据库所有者更改为 sa 或将 SQL Server 服务用户更改为域用户。

分辨率 6

在 SQL 服务器管理工作室中,右键单击服务器名称,然后选择"属性"。单击"连接",在"默认连接"选项部分中,向下滚动并取消选中无计数。

需要更多帮助?

扩展你的技能
了解培训
抢先获得新功能
加入 Microsoft 内部人员

此信息是否有帮助?

你对翻译质量的满意程度如何?

哪些因素影响了你的体验?

是否还有其他反馈?(可选)

谢谢您的反馈意见!

×