首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在AX 2009的SSRS中显示维度扩展数据类型

问无法在AX 2009的SSRS中显示维度扩展数据类型
EN

Stack Overflow用户
提问于 2012-05-03 02:56:50
回答 3查看 1.2K关注 0票数 2

如果您使用来自AX2009的内置查询(EmplTableListPage)并尝试使用它构建一个SSRS报表,并且您使用了字段Dimension1,则Visual Studio2008中的报表预览将正确呈现。将报表部署到SSRS服务器后,它将无法加载,并显示类似于以下内容的错误:

代码语言:javascript
复制
 An error has occurred during report processing. (rsProcessingAborted)
Query execution failed for dataset 'Dataset1'. (rsErrorExecutingCommand)
The AX query string 'SELECT EmplTable.1.Dimension[1],EmplTable.1.EmplId,DirPartyTable.1.Name FROM EmplTableListPage' is invalid. The valid format is 'SELECT [fields] FROM [AX query name]', where [fields] can be either '*' or a comma separated field list.

如果从报表中删除Dimension1字段并重新部署,则错误将消失,并且报表将正确呈现。

我尝试在AOT中向查询中添加一个字段,并专门添加Dimension1,但也不起作用(相同的错误消息)。

如何在SSRS报告中显示维度字段中的数据?为什么它可以在Visual Studio中工作,而不能在AX或报表管理器网站中工作?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-08-23 04:32:13

根据微软在其What's New in Microsoft Dynamics AX 2012 for Developers白皮书中的说法,2012增强了对AX 2009中不支持的维度的支持,这意味着您不能在SSRS报告上显示维度字段中的数据:

​

票数 2
EN

Stack Overflow用户

发布于 2012-08-23 16:34:58

我使用了这种方法(连接所有可能的Dimensions表组合)请注意,示例仅适用于前两个维度:

​

而不是来自ssrs:

代码语言:javascript
复制
SELECT LedgerTable.1.AccountName,Dimensions.1.DimensionCode:NAME(SysDimension),Dimensions.2.DimensionCode:NAME(SysDimension) FROM LedgerTransSRS

顺便说一下,我的原始查询名不是LedgerTransSRS,我的原始查询名是LedgerTransSRS_companySufix。我删除了本例中的_companySufix。所以不要修改原始的LedgerTransSRS查询(因为它存在于SYS层中并且正在使用中)。

票数 0
EN

Stack Overflow用户

发布于 2012-08-24 17:26:28

有相同的问题,但能够解决它。当您在SSRS中添加数据集时,您必须添加维度中的所有字段(您的查询将维度列在字段中)-而不仅仅是您想要访问的维度的字段。

因此,对ssrs中的数据集的查询应为:

代码语言:javascript
复制
SELECT * FROM EmplTable

查询中导致错误的部分是:EmplTable.1.Dimension[1]

在SSRS中获取数据集中查询中的所有字段,这应该可以解决问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10419954

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档