Saiku Hierarchize函数不返回预期的cellset

时间:2016-01-14 07:58:27

标签: rest mdx mondrian saiku

有人可以解释为什么针对Saiku mdx执行的rest api查询未返回预期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服务器的返回json,并且确实缺少单元格。 Actual result

2 个答案:

答案 0 :(得分:1)

如果您正在使用执行端点执行并传入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
  }

答案 1 :(得分:0)

也许尝试在[ALL]成员中添加食物以强制解决问题?

这是我的AdvWrks模拟:

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];