public interface

PageByBean

implements ReportFrameElement
com.microstrategy.web.app.beans.PageByBean

Class Overview

The PageByBean is used to display the page-by axis for reports, and the group-by section for documents. Conceptually these components are the same: each is a collection of units (usually attributes) that the end-user can modify by adding, removing or changing the position of the units within the collection (pivoting).

These units control the data displayed to the user: when the report or document is executed each unit is displayed with a combo-box that lists its elements, the data is automatically filtered based on the currently selected element.

Although conceptually the same, the underlying SDK objects that manipulate the page-by axis and the group-by section are different. The goal of the PageByBean and its related classes is to abstract these differences.

This bean is associated with a target-bean, which by default can only be a ReportBean or a RWBean. From this target-bean it will populate its list of units, each of which implements the PageByUnit interface. The getUnits() method returns the enumeration of these units.

Summary

[Expand]
Inherited Constants
From interface com.microstrategy.utils.serialization.EnumWebPersistableState
From interface com.microstrategy.web.app.beans.AppComponent
Public Methods
abstract boolean canEdit()
Validates whether the user can edit this PageBy.
abstract Enumeration getFakedUnits()
Returns the report objects(excluding metrics) in the working set but not on the template
abstract Enumeration getUnits()
Returns the Enumeration of PageByUnit.
abstract int getViewMode()
Returns the view mode for this bean.
abstract boolean hasActiveUnits()
Returns whether this bean has a list of "active" units.
abstract boolean hasInvalidUnits()
Returns true if this bean has invalid units.
[Expand]
Inherited Methods
From interface com.microstrategy.utils.serialization.Persistable
From interface com.microstrategy.web.app.beans.AppComponent
From interface com.microstrategy.web.app.beans.FrameElement
From interface com.microstrategy.web.app.beans.ReportFrameElement
From interface com.microstrategy.web.beans.RequestPersistable
From interface com.microstrategy.web.beans.Transformable
From interface com.microstrategy.web.beans.WebComponent

Public Methods

public abstract boolean canEdit ()

Validates whether the user can edit this PageBy. Some Documents, for example, has a parameter to indicate they cannot be modified. This methods checks this property and any other priviledge.

Returns
  • true if the page-by collection can be modified (i.e. pivoted, sorted, removed, etc.)

public abstract Enumeration getFakedUnits ()

Returns the report objects(excluding metrics) in the working set but not on the template

Returns
  • Enumeration of PageByUnitReportFaked objects.

public abstract Enumeration getUnits ()

Returns the Enumeration of PageByUnit. This list is populated from the target-bean.

Returns
  • The enumeration with the available PageByUnit in the page-by.

public abstract int getViewMode ()

Returns the view mode for this bean. This bean can be in design mode or in view mode.
In design mode, there is no data thus the element list is not populated, only the PageByUnits are available.
In view mode, the element list will be populated as defined in the report/document.

Returns

public abstract boolean hasActiveUnits ()

Returns whether this bean has a list of "active" units. That is, a list of units that may be modified by the user. An empty list of group by units is not considered "active". Further, in the case of a report services document, if all of the group-by units are 'All' only, then the group by is not considered "active" as users may not change any of the units.

Returns
  • Whether the page by has a set of "active" units.

public abstract boolean hasInvalidUnits ()

Returns true if this bean has invalid units.

Returns
  • true if this bean has invalid units.