3

我正在尝试使用 Microsoft Dynamics AX 2009 中的批处理运行未修改的报告。我已经设置了配置,并设置了 AOS 打印机来运行报告。当我向批处理队列发送报告时,它在开始执行时立即出错。

错误如下:

执行代码时出错:SysGlobalCache 对象未初始化。

(S)\Classes\SysGlobalCache\get (S)\Classes\ClassFactory\reportRunClass - 第 14 行 (S)\Classes\RunBaseReport\makeReportRun - 第 19 行 (S)\Classes\RunBaseReport\unpack - 第 31 行 (S)\Classes \RunbaseReportStd\unpack - 第 26 行 (S)\Classes\BatchRun\runJobStatic - 第 27 行

我尝试过运行三种不同的报告:客户、供应商和采购线。我每次都得到同样的错误。

有什么建议么?

4

4 回答 4

4

我们在工作中遇到了类似的问题,但不想依赖于必须设置之前建议的传统批处理方法。幸运的是,在我们的案例中,并不要求将报告实际打印成硬拷贝。因此,您可以将报告运行到文件(ASCII、PDF 等)中,而不是尝试将报告发送到打印机。

批处理服务器可以处理这些,但由于您需要指定保存文件的位置,因此请注意以下事项:

请务必使用您希望保存到的路径的 UNC 文件路径,否则您可能会收到以下错误:“目标文件必须为 UNC 格式。”

还要确保已应用必要的权限以允许写入该位置,否则您会收到错误消息,例如:“无法打开文件”

于 2012-08-22T20:17:53.203 回答
0

我认为问题在于批次正在尝试处理服务器代码,并且报告旨在运行客户端。在此 URL 尝试解决方法:

http://blogs.msdn.com/b/emeadaxsupport/archive/2009/06/16/how-to-run-client-batches-on-ax-2009.aspx

要点是,您创建一个名为“客户端”或其他名称的批处理组,将其分配给批处理服务器,然后在该组上运行批处理。这可能对你有用。

于 2012-08-22T19:32:28.383 回答
0

另一种选择是将报告更改为在服务器上运行。您需要检查菜单项并确保它已设置为在服务器上运行。它是菜单项上的一个属性。

当您向批次添加报告时,请查看批次查询屏幕。选择批处理作业 - 然后单击“任务”。如果任务显示 'Run Location' = client,它将不会在基于服务器的批处理框架中运行。

抢。

于 2012-08-25T15:02:07.483 回答
0

我遇到了类似的错误。我重新启动了 AOS 和 SQL 报告服务,一切正常。希望这可以帮助。

于 2013-01-24T10:58:52.307 回答