pentaho CDE中的交叉制表符/透视图

时间:2018-10-21 13:51:01

标签: pentaho pentaho-cde

我正在尝试在postgresql中创建动态透视。我的查询包含3个维度,其中一个包含case语句。和一种措施。我已经尝试过各种在Web上找到的解决方案,但是都无法正常工作。 我正在寻找一个将普通查询转换为数据透视表的脚本。请帮助我。

1 个答案:

答案 0 :(得分:0)

基本上,您有3种选择:

  • 在MDX中编写查询,该查询可以轻松返回数据透视表;首先需要Mondrian模式;
  • 使用Kettle数据源,并使用PDI对数据进行归一化;
  • 在表组件的postFetch方法中编写反规范化函数:它获取来自查询的数据并对其进行处理,然后再将其传递给表渲染器。

代码段可指导您完成组件的postFetch中的非规范化过程:

function(data){
    var resultset = data.resultset;
    var metadata = data.metadata;

    // doStuff - this is the bit you'll have to code according to your needs. The resultset array has 1 element for each row of data; the metadata array holds metadata info such as colName, colType and output index.
    var newResultset = someFunction(resultset);
    var newMetadata = someOtherFunction(metadata);

    // set data to the new values
    data.resultset = newResultset;
    data.metadata = newMetadata;

    // return the modified data object to the component
    return data;
}