Package mondrian.rolap
Class RolapCell
java.lang.Object
mondrian.rolap.RolapCell
- All Implemented Interfaces:
Cell
-
Field Summary
-
Method Summary
Modifier and TypeMethodDescriptionboolean
Returns whether it is possible to drill through this cell.static RolapCube
chooseDrillThroughCube
(Member[] currentMembers, RolapCube defaultCube) drillThroughInternal
(int maxRowCount, int firstRowOrdinal, List<OlapElement> fields, boolean extendedContext, org.apache.logging.log4j.Logger logger) Generates an executes a SQL statement to drill through this cell.Return the cached formatted string, that survives an aggregate cache clear.getContextMember
(Hierarchy hierarchy) Returns the context member for a particular dimension.Returns the coordinates of this Cell in itsResult
.int
Returns the number of fact table rows which contributed to this Cell.getDrillThroughSQL
(boolean extendedContext) Returns a SQL query that, when executed, returns drill through data for this Cell.getDrillThroughSQL
(List<OlapElement> fields, boolean extendedContext) Returns the cell's value formatted according to the current format string, and locale-specific settings such as currency symbol.getPropertyValue
(String propertyName) Returns the value of a property.getValue()
Returns the cell's raw value.boolean
isError()
Returns whether the cell's calculation returned an error.boolean
isNull()
Returns whether the cell's value is null.void
setValue
(org.olap4j.Scenario scenario, Object newValue, org.olap4j.AllocationPolicy allocationPolicy, Object... allocationArgs) Helper method to implementCell.setValue(java.lang.Object, org.olap4j.AllocationPolicy, java.lang.Object...)
.
-
Field Details
-
pos
protected final int[] pos -
ci
protected mondrian.rolap.RolapResult.CellInfo ci
-
-
Method Details
-
getCoordinateList
Description copied from interface:Cell
Returns the coordinates of this Cell in itsResult
.- Specified by:
getCoordinateList
in interfaceCell
- Returns:
- Coordinates of this Cell
-
getValue
Description copied from interface:Cell
Returns the cell's raw value. This is useful for sending to further data processing, such as plotting a chart.The value is never null. It may have various types:
- if the cell is null, the value is
Util.nullValue
; - if the cell contains an error, the value is an instance of
Throwable
; - otherwise, the type of this value depends upon the type of
measure: possible types include
BigDecimal
,Double
,Integer
andString
.
- if the cell is null, the value is
-
getCachedFormatString
Description copied from interface:Cell
Return the cached formatted string, that survives an aggregate cache clear.- Specified by:
getCachedFormatString
in interfaceCell
-
getFormattedValue
Description copied from interface:Cell
Returns the cell's value formatted according to the current format string, and locale-specific settings such as currency symbol. The current format string may itself be derived via an expression. For more information about format strings, seeFormat
.- Specified by:
getFormattedValue
in interfaceCell
-
isNull
public boolean isNull()Description copied from interface:Cell
Returns whether the cell's value is null. -
isError
public boolean isError()Description copied from interface:Cell
Returns whether the cell's calculation returned an error. -
getDrillThroughSQL
Description copied from interface:Cell
Returns a SQL query that, when executed, returns drill through data for this Cell.If the parameter
extendedContext
is true, then the query will include all the levels (i.e. columns) of non-constraining members (i.e. members which are at the "All" level).If the parameter
extendedContext
is false, the query will exclude the levels (coulmns) of non-constraining members.The result is null if the cell is based upon a calculated member.
- Specified by:
getDrillThroughSQL
in interfaceCell
-
getDrillThroughSQL
-
getDrillThroughCount
public int getDrillThroughCount()Description copied from interface:Cell
Returns the number of fact table rows which contributed to this Cell.- Specified by:
getDrillThroughCount
in interfaceCell
-
canDrillThrough
public boolean canDrillThrough()Returns whether it is possible to drill through this cell. Drill-through is possible if the measure is a stored measure and not possible for calculated measures.- Specified by:
canDrillThrough
in interfaceCell
- Returns:
- true if can drill through
-
chooseDrillThroughCube
-
drillThroughInternal
public SqlStatement drillThroughInternal(int maxRowCount, int firstRowOrdinal, List<OlapElement> fields, boolean extendedContext, org.apache.logging.log4j.Logger logger) Generates an executes a SQL statement to drill through this cell.Throws if this cell is not drillable.
Enforces limits on the starting and last row.
If tabFields is not null, returns the specified columns. (This option is deprecated.)
- Parameters:
maxRowCount
- Maximum number of rows to retrieve, <= 0 if unlimitedfirstRowOrdinal
- Ordinal of row to skip to (1-based), or 0 to start from beginningfields
- List of field expressions to return as the result set columns.extendedContext
- If true, add non-constraining columns to the query for levels below each current member. This additional context makes the drill-through queries easier for humans to understand.logger
- Logger. If not null and debug is enabled, log SQL here- Returns:
- executed SQL statement
-
getPropertyValue
Description copied from interface:Cell
Returns the value of a property.- Specified by:
getPropertyValue
in interfaceCell
- Parameters:
propertyName
- Case-sensitive property name- Returns:
- Value of property
-
getContextMember
Description copied from interface:Cell
Returns the context member for a particular dimension. The member is defined as follows (note that there is always a member):- If the dimension appears on one of the visible axes, the context member is simply the member on the current row or column.
- If the dimension appears in the slicer, the context member is the member of that dimension in the slier.
- Otherwise, the context member is the default member of that dimension (usually the 'all' member).
- Specified by:
getContextMember
in interfaceCell
- Parameters:
hierarchy
- Hierarchy- Returns:
- current member of given hierarchy
-
setValue
public void setValue(org.olap4j.Scenario scenario, Object newValue, org.olap4j.AllocationPolicy allocationPolicy, Object... allocationArgs) Description copied from interface:Cell
Helper method to implementCell.setValue(java.lang.Object, org.olap4j.AllocationPolicy, java.lang.Object...)
.
-