Class RolapCell

    • Field Detail

      • pos

        protected final int[] pos
      • ci

        protected mondrian.rolap.RolapResult.CellInfo ci
    • Method Detail

      • getCoordinateList

        public List<Integer> getCoordinateList()
        Description copied from interface: Cell
        Returns the coordinates of this Cell in its Result.
        Specified by:
        getCoordinateList in interface Cell
        Returns:
        Coordinates of this Cell
      • getValue

        public Object 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:

        Specified by:
        getValue in interface Cell
      • getCachedFormatString

        public String getCachedFormatString()
        Description copied from interface: Cell
        Return the cached formatted string, that survives an aggregate cache clear.
        Specified by:
        getCachedFormatString in interface Cell
      • getFormattedValue

        public String 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, see Format.
        Specified by:
        getFormattedValue in interface Cell
      • isNull

        public boolean isNull()
        Description copied from interface: Cell
        Returns whether the cell's value is null.
        Specified by:
        isNull in interface Cell
      • isError

        public boolean isError()
        Description copied from interface: Cell
        Returns whether the cell's calculation returned an error.
        Specified by:
        isError in interface Cell
      • getDrillThroughSQL

        public String getDrillThroughSQL​(boolean extendedContext)
        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 interface Cell
      • getDrillThroughSQL

        public String getDrillThroughSQL​(List<OlapElement> fields,
                                         boolean extendedContext)
      • 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 interface Cell
      • 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 interface Cell
        Returns:
        true if can drill through
      • chooseDrillThroughCube

        public static RolapCube chooseDrillThroughCube​(Member[] currentMembers,
                                                       RolapCube defaultCube)
      • 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 unlimited
        firstRowOrdinal - Ordinal of row to skip to (1-based), or 0 to start from beginning
        fields - 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

        public Object getPropertyValue​(String propertyName)
        Description copied from interface: Cell
        Returns the value of a property.
        Specified by:
        getPropertyValue in interface Cell
        Parameters:
        propertyName - Case-sensitive property name
        Returns:
        Value of property
      • getContextMember

        public Member getContextMember​(Hierarchy hierarchy)
        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 interface Cell
        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 implement Cell.setValue(java.lang.Object, org.olap4j.AllocationPolicy, java.lang.Object...).
        Specified by:
        setValue in interface Cell
        Parameters:
        scenario - Scenario
        newValue - New value
        allocationPolicy - Allocation policy
        allocationArgs - Arguments for allocation policy