rolapcalculatedmember.java
来自「数据仓库展示程序」· Java 代码 · 共 73 行
JAVA
73 行
/*
// $Id: //open/mondrian/src/main/mondrian/rolap/RolapCalculatedMember.java#16 $
// This software is subject to the terms of the Common Public License
// Agreement, available at the following URL:
// http://www.opensource.org/licenses/cpl.html.
// Copyright (C) 2001-2005 Kana Software, Inc. and others.
// All Rights Reserved.
// You must accept the terms of that agreement to use this software.
//
// jhyde, 26 August, 2001
*/
package mondrian.rolap;
import mondrian.olap.Exp;
import mondrian.olap.Formula;
import mondrian.olap.Property;
/**
* A <code>RolapCalculatedMember</code> is a member based upon a
* {@link Formula}.
*
* <p>It is created before the formula has been resolved; the formula is
* responsible for setting the "format_string" property.
*
* @author jhyde
* @since 26 August, 2001
* @version $Id: //open/mondrian/src/main/mondrian/rolap/RolapCalculatedMember.java#16 $
**/
class RolapCalculatedMember extends RolapMember {
private final Formula formula;
RolapCalculatedMember(
RolapMember parentMember, RolapLevel level, String name,
Formula formula) {
super(parentMember, level, name);
this.formula = formula;
}
// override RolapMember
public int getSolveOrder() {
return formula.getSolveOrder();
}
public Object getPropertyValue(String name) {
if (name.equals(Property.FORMULA.name)) {
return formula;
} else if (name.equals(Property.CHILDREN_CARDINALITY.name)) {
// Looking up children is unnecessary for calculated member.
// If do that, SQLException will be thrown.
return new Integer(0);
} else {
return super.getPropertyValue(name);
}
}
public boolean isCalculated() {
return true;
}
public boolean isCalculatedInQuery() {
return true;
}
public Exp getExpression() {
return formula.getExpression();
}
}
// End RolapCalculatedMember.java
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?