我创建了一个报表数据提供程序类,它返回参数的临时表和数据协定(根据http://technet.microsoft.com/en-us/library/gg731917.aspx)。我在Visual Studio中创建了一个报表。当我在VS中测试报告时,它运行正常,我得到数据等。但是,当我在AX中运行报告时,会显示请求参数的对话框 - 但报告仍然在给我SysDictClass object not initialised
错误本系列。
我得到的堆栈跟踪是:
Stack trace
(S)\Classes\SRSReportProviderMetadata\getDataContract - line 14
(S)\Classes\SRSReportProviderMetadata\initParameters - line 7
(S)\Classes\SRSReportProviderMetadata\new - line 20
(S)\Classes\SRSReportProviderMetadata\constructWithId - line 16
(S)\Classes\SRSReportProviderMetadata\constructWithName - line 16
(S)\Classes\SrsReportProviderQueryBuilder\initialize - line 10
(S)\Jobs\
为什么会出现这种情况的想法?
答案 0 :(得分:2)
这表示SRSReportParameterAttribute.getContractId
方法未返回有效的类ID。这是一个谜,因为返回的值在其new
方法中得到验证。
尝试重新部署报告,右键单击AX中的SSRS报告,然后选择“部署”。
如果不起作用,请尝试完全重新编译应用程序。
答案 1 :(得分:0)
检查Data Contract
类的属性,并确保RunOn
属性设置为Called from
。