Saiku Hierarchize 函数不返回预期的单元集
Saiku Hierarchize function not returning expected cellset
有人可以解释一下为什么针对 Saiku rest api
执行的 mdx
查询没有 return 预期 cellset
吗?此查询执行为 mdx
类型 ThinQuery
。
SELECT
{
[Location.CountryHierarchy].[Croatia]
,[Location.CountryHierarchy].[Serbia]
} ON COLUMNS
,Hierarchize
(
Union
(
{
[Product.ProductHierarchy].[Drinks]
,[Product.ProductHierarchy].[Food]
}
,[Product.ProductHierarchy].[Drinks].Children
)
) ON ROWS
FROM [Sales cube];
预期输出(使用 jpivot、pivot4j 和 Pentaho SchemaWorkbench/MDX 资源管理器测试)
ExpectedResult
在 Android 上呈现的实际结果正在处理 OLAP 客户端 - 只是为了确保我还检查了来自 saiku 服务器的 returned json 并且确实缺少单元格。
Actual result
也许可以尝试添加 Food 的 [ALL]
成员来强制解决这个问题?
这是我的 AdvWrks mock-up:
SELECT
{
[Product].[Category].&[4]
,[Product].[Category].&[1]
} ON 0
,Hierarchize
(
Union
(
{
[Customer].[Customer Geography].[Country].&[Australia]
,[Customer].[Customer Geography].[Country].&[Canada]
}
,{
[Customer].[Customer Geography].[Country].&[Australia].Children
,[Customer].[Customer Geography].[Country].&[Canada].[All]
}
)
) ON 1
FROM [Adventure Works]
WHERE
[Measures].[Internet Sales Amount];
所以在你的场景中:
SELECT
{
[Location.CountryHierarchy].[Croatia]
,[Location.CountryHierarchy].[Serbia]
} ON COLUMNS
,Hierarchize
(
{
[Product.ProductHierarchy].[Drinks]
,[Product.ProductHierarchy].[Food]
,[Product.ProductHierarchy].[Drinks].Children
}
) ON ROWS
FROM [Sales cube];
如果您使用执行端点执行并传入 MDX 或查询模型,则需要使用属性部分,试试这个:
"properties": {
"saiku.olap.query.automatic_execution": true,
"saiku.olap.query.nonempty": true,
"saiku.olap.query.nonempty.rows": true,
"saiku.olap.query.nonempty.columns": true,
"saiku.ui.render.mode": "table",
"saiku.olap.query.filter": true,
"saiku.olap.result.formatter": "flat",
"org.saiku.query.explain": true,
"org.saiku.connection.scenario": false,
"saiku.olap.query.drillthrough": true
}
有人可以解释一下为什么针对 Saiku rest api
执行的 mdx
查询没有 return 预期 cellset
吗?此查询执行为 mdx
类型 ThinQuery
。
SELECT
{
[Location.CountryHierarchy].[Croatia]
,[Location.CountryHierarchy].[Serbia]
} ON COLUMNS
,Hierarchize
(
Union
(
{
[Product.ProductHierarchy].[Drinks]
,[Product.ProductHierarchy].[Food]
}
,[Product.ProductHierarchy].[Drinks].Children
)
) ON ROWS
FROM [Sales cube];
预期输出(使用 jpivot、pivot4j 和 Pentaho SchemaWorkbench/MDX 资源管理器测试) ExpectedResult
在 Android 上呈现的实际结果正在处理 OLAP 客户端 - 只是为了确保我还检查了来自 saiku 服务器的 returned json 并且确实缺少单元格。 Actual result
也许可以尝试添加 Food 的 [ALL]
成员来强制解决这个问题?
这是我的 AdvWrks mock-up:
SELECT
{
[Product].[Category].&[4]
,[Product].[Category].&[1]
} ON 0
,Hierarchize
(
Union
(
{
[Customer].[Customer Geography].[Country].&[Australia]
,[Customer].[Customer Geography].[Country].&[Canada]
}
,{
[Customer].[Customer Geography].[Country].&[Australia].Children
,[Customer].[Customer Geography].[Country].&[Canada].[All]
}
)
) ON 1
FROM [Adventure Works]
WHERE
[Measures].[Internet Sales Amount];
所以在你的场景中:
SELECT
{
[Location.CountryHierarchy].[Croatia]
,[Location.CountryHierarchy].[Serbia]
} ON COLUMNS
,Hierarchize
(
{
[Product.ProductHierarchy].[Drinks]
,[Product.ProductHierarchy].[Food]
,[Product.ProductHierarchy].[Drinks].Children
}
) ON ROWS
FROM [Sales cube];
如果您使用执行端点执行并传入 MDX 或查询模型,则需要使用属性部分,试试这个:
"properties": {
"saiku.olap.query.automatic_execution": true,
"saiku.olap.query.nonempty": true,
"saiku.olap.query.nonempty.rows": true,
"saiku.olap.query.nonempty.columns": true,
"saiku.ui.render.mode": "table",
"saiku.olap.query.filter": true,
"saiku.olap.result.formatter": "flat",
"org.saiku.query.explain": true,
"org.saiku.connection.scenario": false,
"saiku.olap.query.drillthrough": true
}