MicroStrategy ONE

AbstractReportGridDisplayCell

AbstractReportGridDisplayCell is an abstract class that renders cells within a report grid in MicroStrategy Web products. The class provides methods that generate the tag attributes and render the content of the cell. Subclasses are responsible for rendering a particular type of cell such as a metric value cell, column header cell, or row header cell. See diagram below for different types of cells in a report grid and the subclasses responsible for rendering their contents.

As shown in the diagram above, AbstractReportGridDisplayCell is extended by the following classes and their corresponding subclasses. Refer to the Grid Object Model for information on different components of a report grid.

  • ReportGridCellColHeaderImpl

  • ReportGridCellRowHeaderImpl

  • ReportGridCellColTitleImpl

  • ReportGridCellRowTitleImpl

  • ReportGridCellMetricValueImpl

The Using Custom Cell Rendering Classes topic provides instructions on how to make the MicroStrategy Web application use your custom cell rendering classes.

The generateOutput() abstract method in the AbstractReportGridDisplayCell abstract class lays out the structure of the cell. It renders the entire table cell including the <TD> and the closing </TD> HTML tags, as well as the data between them. generateOutput() uses the following methods, which are called in the order in which they are listed.

  • generateTooltipContent()—Renders a tool tip with the element description.

  • getContextMenu()—Generates the context-menus and renders the attributes necessary for displaying the menu when the user right-clicks the current element.

  • generateDragAndDrop()—Renders attributes that are necessary for enabling the drag and drop feature.

  • generateInnerHTML()—Renders the HTML generated inside a cell. It calls the following methods:

    • generatePreContent()—Inserts HTML before the main content defined in the cell. It is typically used for the check boxes displayed in drilling or while filtering on selections.

    • generateContent()—Generates the main cell content which is displayed to the end user. It generates the necessary anchor tag if the content requires a link (such as a drilling link), and then calls generateText()  to render the content.

      • generateText()— Generates the text that gets displayed by the Web browser.

    • generatePostContent()—Appends HTML after the main content. It is typically used for pivoting or sorting  buttons.

Modifying the generateText() method provides complete flexibility in displaying contents within the cell. Creating your own output for a specific cell type requires the creation of a new class that extends the appropriate ReportGridCell...Impl subclass of AbstractReportGridDisplayCell. The following topics provide descriptions of these subclasses and include code samples.

See also