我发现 icCube 和 XMLA 有问题。
当通过 XMLA 执行查询时,我们有多个相同维度的项目会消失结果的节点“SlicerAxis”。
例子:
如果执行:
select
hierarchize({[Customers].[Geography].[All Regions],[Customers].[Geography].[All Regions].children}) on rows,
[Measures].members on columns
from
[Sales]
where {[Product].[Product].[All Products].[icCube].[Support].[Platinum]}
一切都好。
在 XMLA 输出中:
.....
<AxesInfo>
<AxisInfo name="Axis0">
.....
</AxisInfo>
<AxisInfo name="Axis1">
.....
</AxisInfo>
<AxisInfo name="SlicerAxis">
.....
</AxisInfo>
</AxesInfo>
.....
但是如果我们执行:
select
hierarchize({[Customers].[Geography].[All Regions],[Customers].[Geography].[All Regions].children}) on rows,
[Measures].members on columns
from
[Sales]
where {[Product].[Product].[All Products].[icCube].[Support].[Platinum],[Product].[Product].[All Products].[icCube].[Support].[Gold]}
XMLA 输出为:
.....
<AxesInfo>
<AxisInfo name="Axis0">
.....
</AxisInfo>
<AxisInfo name="Axis1">
.....
</AxisInfo>
</AxesInfo>
.....
无节点<AxisInfo name="SlicerAxis">
一些 APIs XMLA 像“jpivot”或“JasperReport net.sf.jasperreports.olap.xmla.JRXmlaQueryExecuterFactory”读取 AxesInfo 信息并希望至少有 SlicerAxis 命名节点。这些 APIS 失败。
原谅我的英语。
问候和感谢。
胡安