`
hhluci
  • 浏览: 36451 次
  • 来自: ...
社区版块
存档分类
最新评论

mondrian系列教程(二)

J# 
阅读更多

一、多维查询结果分析Result分析:

  1.  查看mondrian API文档,我们发现:Result 是一个接口,ResultBase这个抽象类实现了该接口,RolapConnection.NonEmptyResult 和RolapResult继承了该类。
  2. 如何访问切片轴?code: Position slicers[] = result.getSlicerAxis().positions;for (int i=0; i<slicers.length; i++) {
                    Position position = slicers[i];
                    for (int k = 0; k < position.members.length; k++) { 
                        Member member = position.members[k];
                        System.out.println(member.getUniqueName());
                    }
                }
  3. 如何访问非切片轴? for(int i=0; i<result.getAxes().length; i++)
                {
                 Position[] axes = result.getAxes()[i].positions;
                 for (int j=0; j<axes.length; j++) {
                     Position position = axes[j];
                        for (int k = 0; k < position.members.length; k++) { 
                            Member member = position.members[k];
                            System.out.println(member.getUniqueName());
                        }
                }
                }
  4. 如何访问单元值?

          

 

 

分享到:
评论
4 楼 huimengshao 2013-01-01  
		Result result = connection.execute(query);

		System.out.println("========== slicers =========");
		List<Position> slicers = result.getSlicerAxis().getPositions();
		for (int i = 0; i < slicers.size(); i++) {
			Position position = slicers.get(i);
			for (int k = 0; k < position.size(); k++) {
				Member member = position.get(k);
				System.out.println(member.getUniqueName());
			}
		}

		System.out.println("=========== axes ===========");
		for (int i = 0; i < result.getAxes().length; i++) {
			List<Position> axes = result.getAxes()[i].getPositions();
			for (int j = 0; j < axes.size(); j++) {
				Position position = axes.get(j);
				for (int k = 0; k < position.size(); k++) {
					Member member = position.get(k);
					System.out.println(""+member.getUniqueName());
				}
			}
		}
		
		System.out.println("=========== cell ===========");
		int[] position1 = {0,0};
		System.out.println(result.getCell(position1).getValue());

		System.out.println("========== result ==========");
		PrintWriter pw = new PrintWriter(System.out);
		result.print(pw);
		pw.flush();
3 楼 fireinjava 2012-05-11  
Result result = connection.execute(query);
PrintWriter pw = new PrintWriter(System.out);
result.print(pw);

取单元格值看下result.print(pw);这代码就知道咋实现的了
2 楼 ruinxdgzy 2010-07-07  
正准备学mondrian,希望有后续教程可供参考!
1 楼 samnia 2009-12-28  
result.getCell(new int[]{j}).getFormattedValue()

相关推荐

    pentaho教程

    Pentaho是一款开源的企业级商业智能(BI)平台,它提供了数据集成、报表、分析和可视化等一系列功能,帮助企业从各种数据源中提取、转换、加载(ETL)数据,并创建直观的交互式报告和仪表盘。在本教程中,我们将深入...

    pentaho 教程

    ### Pentaho教程知识点详解 #### 一、Pentaho与数据商业化的意义 - **数据商业化**:在当今数字化时代,数据已经成为了企业最宝贵的资产之一。如何将这些数据转化为可利用的信息,进而支撑企业的决策制定,是数据...

    多维数据查询MDX教程(全).zip

    5. ** mondrian**:Mondrian是一个开源的OLAP服务器,支持MDX查询,可与多种数据源集成。它的灵活性和可扩展性使其在大数据分析领域广泛应用。 6. **应用示例** - **交叉表查询**:通过在行轴和列轴上放置不同维度...

    jpivot教程

    ### jpivot教程精要 #### 一、简介与安装配置 **jpivot** 是一个用于构建多维数据透视表的应用程序框架,适用于Java Web应用程序。它利用Mondrian OLAP服务器来处理多维数据集,并提供了丰富的API以及前端组件来...

    pentaho入门中文资料

    Pentaho是一款开源的企业级商业智能(BI)套件,提供了数据集成、报表、分析和可视化等一系列功能,帮助企业从各种数据源中提取、转换、加载(ETL)数据,并进行数据分析。作为初学者,掌握Pentaho能帮助你快速构建...

    Kettle初级教程(入门级详细解析各个控件)

    - **向导**:提供一系列引导式的操作流程,帮助用户快速完成特定任务。 - **帮助**:提供在线文档、FAQ等帮助信息。 - **变量**:用于管理和配置Kettle中的变量。 #### 3. 工具栏介绍 - **转换Transformation工具...

    data-integration_7.1使用手册

    Transformation是一个步骤或一系列步骤的集合,用于转换数据。它涉及到数据的输入、转换和输出。Variable是数据集成过程中使用的变量,用于在Transformation中存储和传递数据。 Kettle包含了几个核心组件,如Spoon...

    pentaho经典中文资料

    这个压缩包中包含的是一系列经典的中文资料,涵盖了Pentaho的不同方面,旨在帮助用户深入理解和使用Pentaho。 1. **Advanced_Reporting_Guide-zh-CN-1.5.4.htm**:这份文档详细介绍了Pentaho高级报告功能,包括如何...

Global site tag (gtag.js) - Google Analytics