Class ReportGridTransformImpl

  • All Implemented Interfaces:
    AppTransform, ReportDataTransform, LayoutTransform, Transform
    Direct Known Subclasses:
    AbstractReportGridExportTransform, IPhoneReportGridTransformImpl, ReportDesignModeTransformImpl, ReportOutlineModeTransformImpl

    public class ReportGridTransformImpl
    extends AbstractReportGridTransform

    The ReportGridTransformImpl generates the grid visualization of the data returned by a Report.

    Take as example the following table:
    Region
    Category
    Subcategory
    Quarter
    Q1 03
    Q2 03
    Q3 03
    Q4 03
    Metrics
    Profit Forecast
    Profit Forecast
    Profit Forecast
    Profit Forecast
    Northwest
    Electronics
    Audio Equipment
    $2,737
    $4,795
    $3,351
    $7,064
    Northwest
    Electronics
    Cameras
    $7,368
    $11,930
    $8,441
    $11,252
    Northwest
    Electronics
    TV's
    $1,680
    $4,239
    $2,278
    $3,778
    Northwest
    Movies
    Drama
    $1,114
    $1,817
    $1,361
    $2,232
    Northwest
    Movies
    Special Interests
    $598
    $1,167
    $643
    $1,078
    Northwest
    Music
    Pop
    $635
    $978
    $626
    $1,158

    As with any other Transforms, the output can be customized by extending public or protected render methods. In particular, this Transform defines 3 main public methods:

    • renderGrid(MarkupOutput): which generates the whole grid, and calls:

      1. renderGridHeaders(MarkupOutput): which generates the top section:
        Region
        Category
        Subcategory
        Quarter
        Q1 03
        Q2 03
        Q3 03
        Q4 03
        Metrics
        Profit Forecast
        Profit Forecast
        Profit Forecast
        Profit Forecast

      2. renderGridData(MarkupOutput): which generates the bottom section:
        Northwest
        Electronics
        Audio Equipment
        $2,737
        $4,795
        $3,351
        $7,064
        Northwest
        Electronics
        Cameras
        $7,368
        $11,930
        $8,441
        $11,252
        Northwest
        Electronics
        TV's
        $1,680
        $4,239
        $2,278
        $3,778
        Northwest
        Movies
        Drama
        $1,114
        $1,817
        $1,361
        $2,232
        Northwest
        Movies
        Special Interests
        $598
        $1,167
        $643
        $1,078
        Northwest
        Music
        Pop
        $635
        $978
        $626
        $1,158

    This Transform allows to customize the content of every cell, for this reason, this content is not generated internally, but is delegated to a class that implements the ReportGridDisplayCell interface.
    When the renderGrid method is invoked, the Transform starts iterating through the grid's data. For each cell that it identifies needs to be rendered, it creates a different ReportGridDisplayCell and initializes it with the corresponding information. Depending on the cell type, an specialized ReportGridDisplayCell is created with the relevant data. There are five types of cells:

    The implementation class to use for each of these cells is controlled through a configuration file. The name and location of the file to be used by the Transform is specified in the AbstractReportGridTransform.gridClassesConfFile. Developers then, can create their own implementation of these classes (or extend the default ones) that modifies the cell output.

    In the report page, this Transform is also responsible for generating the incremental fetch links for both, columns and rows. This functionality is inherited from AbstractReportDataTransform

    Since:
    MicroStrategy Web 7.3.1 or earlier
    • Field Detail

      • useImageOnEmptyCells

        protected FormalParameter useImageOnEmptyCells
        It is used in the transform to specify the use of transparent image on empty metric cells.
        Allowed Values: TRUE/FALSE.
        It is recommended for this formal paramter to be set to false, as using images for empty cells might degrade performance.
        Since:
        MicroStrategy Web 8.1.1
      • mergeColHeaderPara

        protected FormalParameter mergeColHeaderPara
        It is used in the transform to specify merge or repeat column headers.
        Allowed Values: TRUE/FALSE.
      • showBandingPara

        protected FormalParameter showBandingPara
        It is used in the transform to specify whether to show banding. It only applies to reports that don't use built-in formattings (i.e. reports from old projects).
        Allowed Values: TRUE/FALSE.
      • showDrillHyperlink

        protected FormalParameter showDrillHyperlink
        It is used in the transform to specify whether to allow hyperlink drilling.
        Allowed Values: TRUE/FALSE.
      • showDrillHyperlinkMetric

        protected FormalParameter showDrillHyperlinkMetric
        It is used in the transform to specify whether to allow hyperlink drilling for metrics.
        Allowed Values: TRUE/FALSE.
      • showDrillRMC

        protected FormalParameter showDrillRMC
        It is used in the transform to specify whether to show Right Mouse Click menu for drill.
        Allowed Values: TRUE/FALSE.
      • showDrillRMCMetric

        protected FormalParameter showDrillRMCMetric
        It is used in the transform to specify whether to show Right Mouse Click menu for drill for metrics.
        Allowed Values: TRUE/FALSE.
      • showDrillAdvanced

        protected FormalParameter showDrillAdvanced
        It is used in the transform to specify whether to allow advanced drilling.
        Allowed Values: TRUE/FALSE.
      • showDrillDownOnly

        protected FormalParameter showDrillDownOnly
        It is used in the transform to specify whether to allow drilling to the child only.
        Allowed Values: TRUE/FALSE.
      • showDrillMetric

        protected FormalParameter showDrillMetric
        It is used in the transform to specify whether to allow drilling on metrics.
        Allowed Values: TRUE/FALSE.
      • showDrillCheckBox

        protected FormalParameter showDrillCheckBox
        It is used in the transform to specify whether to allow select filter - check box drilling.
        Allowed Values: TRUE/FALSE.
      • showFilterOnSelectionCheckBox

        protected FormalParameter showFilterOnSelectionCheckBox
        It is used in the transform to specify whether to allow filter on selection.
        Allowed Values: TRUE/FALSE.
      • wrapRowHeader

        protected FormalParameter wrapRowHeader
        This is the parameter which decides if we wrap the row header cells when displaying the report. It was added to support older browsers that ignore WordWrap in css (which is how the Word Wrap property in the grid formatting dialog works). In newer browsers, the user has complete control. It's usually mapped to the "wrapRowHeader" preference (set at the project level by the administrator) and set through the style catalog. It affects the transform's output as follow:
        1. If true, users with Internet Explorer 5.5 and greater-word wrapping is controlled by the "Wrap text" setting on the Format panel (on the Alignment tab); users with Internet Explorer 5.0 and less and Netscape Navigator 4.7-word wrapping is allowed in all attribute element cells.
        2. When false, users with IE 5.5 and greater-word wrapping for the attribute element cells that are in the rows (on the left of the grid) is not allowed. Word wrapping in all other cells is still controlled by the "Wrap text" setting on the Format panel (on the Alignment tab); users with Internet Explorer 5.0 and below-word wrapping for the attribute element cells that are in the rows (on the left of the grid) is not allowed. Word wrapping is allowed in all other cells.
        Allowed Values: TRUE/FALSE.
      • wrapMetricValue

        protected FormalParameter wrapMetricValue
        This is the parameter which decides if we wrap the metric values cells when displaying the report. It was added to support older browsers that ignore WordWrap in css (which is how the Word Wrap property in the grid formatting dialog works). In newer browsers, the user has complete control. It's usually mapped to the "wrapRowHeader" preference (set at the project level by the administrator) and set through the style catalog. It affects the transform's output as follow:
        1. If true, users with Internet Explorer 5.5 and greater-word wrapping is controlled by the "Wrap text" setting on the Format panel (on the Alignment tab); users with Internet Explorer 5.0 and less and Netscape Navigator 4.7-word wrapping is allowed in all attribute element cells.
        2. When false, users with IE 5.5 and greater-word wrapping for the attribute element cells that are in the rows (on the left of the grid) is not allowed. Word wrapping in all other cells is still controlled by the "Wrap text" setting on the Format panel (on the Alignment tab); users with Internet Explorer 5.0 and below-word wrapping for the attribute element cells that are in the rows (on the left of the grid) is not allowed. Word wrapping is allowed in all other cells.
        Allowed Values: TRUE/FALSE.
      • headerMetricValueOptimized

        protected FormalParameter headerMetricValueOptimized
        This is the parameter which decides if we move the common html attributes of non-metric headers and metric value cells to a map and is thus stored once. Allowed Values: TRUE/FALSE.
      • drillRetainParent

        protected FormalParameter drillRetainParent
        This is the FP which tells whether to retain the parent while drilling.
        If a value is specified here, then the drill Preference on the preference page for the same is ignored.
        Allowed Values:
        PreferencesDrillTransform.DRILL_OPTION_DRILL_ANYWHERE = "1";
        PreferencesDrillTransform.DRILL_OPTION_DRILL_HYPERLINKS = "2";
        PreferencesDrillTransform.DRILL_OPTION_SIMPLE_DRILL = "3";
        PreferencesDrillTransform.DRILL_OPTION_NO_DRILL = "4";
        PreferencesDrillTransform.DRILL_OPTION_REPORT_DEFINITION = "5";
      • maxSortAllowed

        protected FormalParameter maxSortAllowed
        This is the value used in the transform to specify how many nested sorts will be allowed in the report.
        Allowed Values: positive integer values.
      • drillLinkExtraURL

        protected FormalParameter drillLinkExtraURL
        This is the code which we will append with the drill hyperlink tag for DHTML.
        Allowed Values: String values.
      • ignoreSubtotal

        protected FormalParameter ignoreSubtotal
        It is used in the transform to specify whether to display subtotal cells.
        Allowed Values: TRUE/FALSE.
      • hideMetricsLabel

        protected FormalParameter hideMetricsLabel
        Hides the 'Metrics' label on the grid's titles.
        Allowed Values: TRUE/FALSE.
        Since:
        MicroStrategy Web 7.5.0
      • imgActiveSortAsc

        protected FormalParameter imgActiveSortAsc
        This is the image name for showing the active sort icon for ascending values.
        Allowed Values: The value to indicate should be a valid image file name, with any necessary path information not included already on the resourcesFolderImage application configuration parameter.
      • imgActiveSortDesc

        protected FormalParameter imgActiveSortDesc
        This is the image name for showing the active sort icon for descending values.
        Allowed Values: The value to indicate should be a valid image file name, with any necessary path information not included already on the resourcesFolderImage application configuration parameter.
      • imgInActiveSortAsc

        protected FormalParameter imgInActiveSortAsc
        This is the image name for showing the inactive sort icon for ascending values.
        Allowed Values: The value to indicate should be a valid image file name, with any necessary path information not included already on the resourcesFolderImage application configuration parameter.
      • imgInActiveSortDesc

        protected FormalParameter imgInActiveSortDesc
        This is the image name for showing the inactive sort icon for descending values.
        Allowed Values: The value to indicate should be a valid image file name, with any necessary path information not included already on the resourcesFolderImage application configuration parameter.
      • showSortButtonsForAttributes

        protected FormalParameter showSortButtonsForAttributes
        This is the flag used in the transform to specify whether to show sort buttons for attributes (row titles).
        Allowed Values: TRUE/FALSE.
      • showSortRMCForAttributes

        protected FormalParameter showSortRMCForAttributes
        This is the flag used in the transform to specify whether to show sort right mouse click menu for attributes (row titles).
        Allowed Values: TRUE/FALSE.
      • showSortButtonsForMetrics

        protected FormalParameter showSortButtonsForMetrics
        This is the flag used in the transform to specify whether to show sort buttons for metrics (column headers).
        Allowed Values: TRUE/FALSE.
      • showSortRMCForMetrics

        protected FormalParameter showSortRMCForMetrics
        This is the flag used in the transform to specify whether to show sort right mouse click menu for metrics (column headers).
        Allowed Values: TRUE/FALSE.
      • cssParentFontSize

        protected FormalParameter cssParentFontSize
        This is the report's base font size.
        Used when generating the report's CSS classes with the WebCSSHelper.
        Allowed Values: positive integer values.
        Since:
        MicroStrategy Web 7.5.0
      • cssUseRelativeFont

        protected FormalParameter cssUseRelativeFont
        Determines whether to use relative font for the CSS.
        Used when generating the report's CSS classes with the WebCSSHelper.
        It should be of BOOLEAN type.
        Since:
        MicroStrategy Web 7.5.4
      • cssPathParameter

        protected FormalParameter cssPathParameter
        Determines the CSS class path to for all CSS classes in a grid report.
        This class will be appended as a prefix to all the CSS classes generated by the WebCSSHelper with a '.' at the beginning
        Since:
        MicroStrategy Web 8.0.0
      • dpiConversion

        protected FormalParameter dpiConversion
        Indicates the dpi conversion factor to convert between inches and pixels (inches=pixels/dpiConversion).
        Since:
        MicroStrategy Web 8.0.0
      • zoomFactor

        protected FormalParameter zoomFactor

        Indicates the zoom factor to use for adjusting sizes. Fonts, column widths and other size related features will adjust their values by this percentage.

        Default value: 100.
        Since:
        MicroStrategy Web 8.0.0
      • containerWidth

        protected FormalParameter containerWidth
        Specifies the width (in any measure accepted by the web-browser) of the <div> tag enclosing the grid's table. Only used when the widthMode is set to be fixed.
        Since:
        MicroStrategy Web 8.0.0
      • containerHeight

        protected FormalParameter containerHeight
        Specifies the height (in any measure accepted by the web-browser) of the <div> tag enclosing the grid's table. Only used when the heightMode is set to be fixed.
        Since:
        MicroStrategy Web 8.0.0
      • widthMode

        protected FormalParameter widthMode

        Determines whether the <div> tag enclosing the grid should have a fixed width, or should expand to fit the width of the grid's content.

        Allowed values:
        • 0-Fixed
        • 2-Fit to contents
        When the width is set to be fixed, then the containerWidth property must also be specified.
        Since:
        MicroStrategy Web 8.0.0
      • heightMode

        protected FormalParameter heightMode

        Determines whether the <div> tag enclosing the grid should have a fixed height, or should expand to fit the height of the grid's content.

        Allowed values:
        • 0-Fixed
        • 2-Fit to contents
        When the height is set to be fixed, then the containerHeight property must also be specified.
        Since:
        MicroStrategy Web 8.0.0
      • overflowMode

        protected FormalParameter overflowMode

        If the widthMode or heightMode is set to be fixed, this parameter specifies what should happen with the <div>'s content if it overflows the space specified by the containerHeight or containerWidth parameters.

        Allowed values:
        • 0-Clipped: The content is clipped, and it's not visible
        • 1-Scroll: The content is clipped but scrollbars are enabled.
        Since:
        MicroStrategy Web 8.0.0
      • showUniqueDrillPaths

        protected FormalParameter showUniqueDrillPaths
        It is used in the transform to specify whether to show unique drill paths on context menus.
        Allowed Values: TRUE/FALSE.
        Since:
        MicroStrategy Web 8.1.2
      • FP_IS_HTML_EXPORT

        public static final java.lang.String FP_IS_HTML_EXPORT
        See Also:
        Constant Field Values
      • _sharedCellProperties

        protected com.microstrategy.web.app.transforms.SharedCellProperties _sharedCellProperties
        Since:
        MicroStrategy Web 8.1.0
    • Constructor Detail

      • ReportGridTransformImpl

        public ReportGridTransformImpl()
        Default no-args constructor.
        Creates and initializes formal parameters.
    • Method Detail

      • getDescription

        public java.lang.String getDescription()
        Returns a textual description of this transform to be used in WYSIWYG tools.
        Returns:
        "The ReportGridTransformImpl generates the grid visualization of the data returned by a Report.";
      • updateDynamicScriptFileInformation

        protected void updateDynamicScriptFileInformation()
        Since:
        MicroStrategy Web 9.0.0
      • initializeTranformContext

        public void initializeTranformContext()
        Deprecated.
        please use instead the ReportGridTransformImpl.Context instance as context.
        Description copied from class: AbstractReportDataTransform
        Initialize the transform context object. This object is later passed to the ReportGridDisplayCell instances so they have information about the transform.
        Overrides:
        initializeTranformContext in class AbstractReportDataTransform
      • renderJavascript

        protected void renderJavascript​(MarkupOutput out)
        This method renders the javascript code that needs to be generated on the server side because its content is dynamic. It extends renderJavascript by including control variables that informs the browser the grid status, and context (or right-mouse-click) menus.
        Overrides:
        renderJavascript in class AbstractReportDataTransform
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • renderContextMenus

        protected void renderContextMenus​(MarkupOutput out)
        Generates the HTML used for client-side context (right mouse click) menus. These are registered into the ContextMenuManager by the Transform and the cells.
        Overrides:
        renderContextMenus in class AbstractAppTransform
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • renderEmptyCase

        public void renderEmptyCase​(MarkupOutput out,
                                    ReportBean rb)
        Deprecated.
        This method has been deprecated and will be removed in future versions of the product. In its place, use/extend the renderEmptyGrid method.
        Generates the HTML when the grid contains no data.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
      • renderEmptyGrid

        public void renderEmptyGrid​(MarkupOutput out)
        Generates the HTML when the grid contains no data.
        It simply creates an empty table and call the renderEmptyMessage method.
        In case this Transform is used in the context of Documents (ReportWriting), nothing is generated.
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • renderEmptyMessage

        public void renderEmptyMessage​(MarkupOutput out)
        Generates the "no data" message for a grid.
        It checks whether the grid is empty because the template contains no objects, or just because the current selection in the page-by generates no data, and renders the appropriate message.
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • getOpenAccordionEvent

        public WebEvent getOpenAccordionEvent()
        Returns the event to open the accordion. This is used in the case that the grid is empty so the users can open the browser and add objects.
        Returns:
        WebEvent to open the obect browser in the report page.
        Since:
        MicroStrategy Web 9.0.0
      • renderLayout

        public void renderLayout​(MarkupOutput out,
                                 ReportBean rb)
        Deprecated.
        This method has been deprecated and will be removed in future versions of the product. In its place, use/extend the renderGridHeaders method.
        Generates the top part of the report, that is, the row titles, column titles and column headers.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
      • renderLayout

        public void renderLayout​(MarkupOutput out,
                                 ReportBean rb,
                                 boolean renderRowTitles,
                                 boolean renderColTitles,
                                 boolean renderColHeaders)
        Deprecated.
        This method has been deprecated and will be removed in future versions of the product. In its place, use/extend the renderGridHeaders method.
        Generates the top part of the report, that is, the row titles, column titles and column headers.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        renderRowTitles - ignored, this argument is not used anymore.
        renderColTitles - ignored, this argument is not used anymore.
        renderColHeaders - to decide whether to include column headers in the output.
      • renderColumnTitles

        public void renderColumnTitles​(MarkupOutput out,
                                       ReportBean rb,
                                       WebGridTitles colTitles)
        Deprecated.
        This method has been deprecated and will be removed in future versions of the product.
        This method has never been used, nor implemented. It's kept only for backwards compatibility.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        colTitles - collection of grid titles being rendered.
      • renderColumnTitle

        public void renderColumnTitle​(MarkupOutput out,
                                      ReportBean rb,
                                      WebTitle title)
        Renders a single column title.
        It creates the ReportGridCellColTitle using the newColTitle method, and calls onColumnTitle
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        title - the corresponding WebTitle
      • renderColumnTitle

        public void renderColumnTitle​(MarkupOutput out,
                                      ReportBean rb,
                                      WebTitle title,
                                      int colSpan)
        Since:
        MicroStrategy Web 9.0.0
      • renderData

        public void renderData​(MarkupOutput out,
                               ReportBean rb)
        Deprecated.
        This method has been deprecated and will be removed in future versions of the product. In its place, use/extend the renderGridData method.
        Generates the data content of the grid, this includes both Row headers and metric values.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
      • renderData

        public void renderData​(MarkupOutput out,
                               ReportBean rb,
                               boolean renderMetricValues)
        Deprecated.
        This method has been deprecated and will be removed in future versions of the product. In its place, use/extend the renderGridData method.
        Generates the data content of the grid, this includes both Row headers and metric values.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        renderMetricValues - whether to include metric values or not
      • renderSingleRow

        public void renderSingleRow​(MarkupOutput out,
                                    ReportBean rb,
                                    WebRow row)
        Generates a single row of data. It calls:
        1. onRowStart (to inform a new row is being rendered).
        2. renderRowHeaders (if showRowHeaders return true).
        3. renderMetricValues.
        4. onRowEnd (to inform a new row is being rendered).
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        row - the corresponding WebRow
      • renderSingleRow

        public void renderSingleRow​(MarkupOutput out,
                                    ReportBean rb,
                                    WebRow row,
                                    boolean includeMetricValues)
        Generates a single row of data. It calls:
        1. onRowStart (to inform a new row is being rendered).
        2. renderRowHeaders (if showRowHeaders return true).
        3. renderMetricValues (if the includeMetricValues argument is true).
        4. onRowEnd (to inform a new row is being rendered).
        The purpose of not including metric values is for situations when we would like to generate only the row axis and no data.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        row - the corresponding WebRow
        includeMetricValues - true if metric values show be included. False otherwise.
      • renderFirstSingleRow

        public void renderFirstSingleRow​(MarkupOutput out,
                                         ReportBean rb,
                                         WebGridRows rows,
                                         boolean includeMetricValues)
        Generates a single row of data with an empty metrics axis. It calls:
        1. onRowStart (to inform a new row is being rendered).
        2. renderRowHeaders (if showRowHeaders return true).
        3. onMetricValue(newEmptyMetricValue()) (if the includeMetricValues argument is true).
        4. onRowEnd (to inform a new row is being rendered).
        The purpose of not including metric values is for situations when we would like to generate only the row axis and no data.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        rows - entire WebGridRows collection
        includeMetricValues - true if metric values show be included. False otherwise.
        Since:
        MicroStrategy Web 9.0.0
      • showEmptyAxis

        protected boolean showEmptyAxis()
        Since:
        MicroStrategy Web 9.0.0
      • showEmptyRowAxis

        protected boolean showEmptyRowAxis()
        Since:
        MicroStrategy Web 9.0.0
      • showEmptyColAxis

        protected boolean showEmptyColAxis()
        Since:
        MicroStrategy Web 9.0.0
      • showEmptyMetricAxis

        protected boolean showEmptyMetricAxis()
        Since:
        MicroStrategy Web 9.0.0
      • showEmptyAxisCssLink

        protected boolean showEmptyAxisCssLink()
        Since:
        MicroStrategy Web 9.0.0
      • renderRowHeaders

        public void renderRowHeaders​(MarkupOutput out,
                                     ReportBean rb,
                                     WebRow row)
        Renders the row headers of a single row.
        Basically, it iterates through the rowHeaders collection and calls renderRowHeader, for example:
           WebHeaders rowHeaders = row.getHeaderElements();
        
          for (int j = 0; j < rowHeaders.size(); j++) {
               renderRowHeader(out, rb, rowHeaders.get(j), firstTotal);
           }
         
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        row - the corresponding WebRow
      • renderRowHeader

        public void renderRowHeader​(MarkupOutput out,
                                    ReportBean rb,
                                    WebHeader rowHeader)
        Deprecated.
        This method is not used anymore by the Transform. Instead use renderRowHeader(MarkupOutput, ReportBean, WebHeader, boolean)
        Renders a single row header.
        It creates the ReportGridCellRowHeader using the newRowHeader method, and calls onRowHeader
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        rowHeader - the corresponding rowHeader
      • renderRowHeader

        public void renderRowHeader​(MarkupOutput out,
                                    ReportBean rb,
                                    WebHeader rowHeader,
                                    boolean displayTotalLabel)
        Renders a single row header.
        It creates the ReportGridCellRowHeader using the newRowHeader method, and calls onRowHeader.
        If this is a row header of a total, then it will first check the ignoreSubtotal Formal Parameter and if true, won't render the cell; if false, it will then check the displayTotalLabel argument, and when false, will set the cell's text to be a blank space.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        rowHeader - the corresponding rowHeader
        displayTotalLabel - false if totals rowHeaders
        Since:
        MicroStrategy Web 7.5.0
      • renderExtraRowHeader

        public void renderExtraRowHeader​(MarkupOutput out,
                                         WebHeader extraHeader,
                                         int rowSpan)
        Renders an extra row header.
        It creates the ReportGridCellRowHeader using the extraHeader method, and calls onRowHeader.
        This method is mainly used for #809124, if row span is larger than 8190 we need to divide the original td cell and render extra td cells. This method uses the cached row header to render a new cell with expected row span.
        Parameters:
        out - MarkupOutput to generate the HTML.
        extraHeader - the cached rowHeader.
        rowSpan - the expected row span for this extra cell.
      • renderMetricValues

        public void renderMetricValues​(MarkupOutput out,
                                       ReportBean rb,
                                       WebRow row)
        Renders the metric values of a single row.
        Basically, it iterates through the rowHeaders collection and calls renderMetricValue, for example:
           for (int j = 0; j < row.size(); j++) {
               renderMetricValue(out, rb, row.get(j));
           }
         
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        row - the corresponding WebRow
      • renderMetricValue

        public void renderMetricValue​(MarkupOutput out,
                                      ReportBean rb,
                                      WebRowValue rowValue)
        Renders a single metric value.
        If this cell is for a total, it will check the ignoreSubtotal Formal Parameter and if true, it will just ignore this cell, otherwise it creates a new ReportGridCellMetricValue using the newMetricValue method, and calls onMetricValue.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        rowValue - the corresponding WebRowValue
      • renderRowTitlesAccessibility

        protected void renderRowTitlesAccessibility​(MarkupOutput out,
                                                    ReportBean rb,
                                                    WebGridTitles rowTitles)
        Renders an empty list of row titles.
        This is a needed in accessibility mode because screen readers don't support "rowspan" attribute in table cells, so we need to expand the row titles when their rowspan is greater than 0. This method basically iterates through the list of rowTitles and generates an empty row title cell for each one of them, for example:
           for (int i = 0; i < rowTitles.size(); i++) {
               WebTitle title = rowTitles.get(i);
        
               for (int j = 0; j < title.getSpan(); j++) {
                   onRowTitle(newRowTitle(), out);
               }
           }
         
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        rowTitles - the corresponding WebGridTitles
      • renderRowTitles

        public void renderRowTitles​(MarkupOutput out,
                                    ReportBean rb,
                                    WebGridTitles rowTitles)
        Renders the row titles of the report.
        Basically, it iterates through the rowTitles collection and calls renderRowTitle, for example:
           for (int i = 0; i < rowTitles.size(); i++) {
               renderRowTitle(out, rb, rowTitles.get(i));
           }
         
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        rowTitles - the corresponding WebGridTitles
      • renderRowTitle

        public void renderRowTitle​(MarkupOutput out,
                                   ReportBean rb,
                                   WebTitle title)
        Renders a single rowTitle.
        Basically, it creates a new ReportGridCellRowTitle using the newRowTitle method, and calls onRowTitle.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        title - the corresponding WebTitle
      • renderColumnHeaders

        public void renderColumnHeaders​(MarkupOutput out,
                                        ReportBean rb,
                                        WebHeaders colHeaders)
        Renders the column headers of the report.
        Basically, it iterates through the colHeaders collection and calls renderColumnHeader, for example:
           for (int i = 0; i < colHeaders.size(); i++) {
               renderColumnHeader(out, rb, colHeaders.get(i));
           }
         
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        colHeaders - the corresponding WebHeaders
      • renderColumnHeader

        public void renderColumnHeader​(MarkupOutput out,
                                       ReportBean rb,
                                       WebHeader header)
        Renders a single column header.
        Basically, it creates a new ReportGridCellColHeader using the newColHeader method, and calls onColumnHeader.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
        header - the corresponding WebHeader
      • renderCssLink

        public void renderCssLink​(MarkupOutput out)
        Extends renderCssLink to generate the <style> tag necessary for this report's format.
        This can be controlled with the useBuiltInFormat FormalParameter: if it is false, even if the report has built-in format information from the iServer, this will not be generated and will just call super.renderCssLink
        Overrides:
        renderCssLink in class AbstractAppTransform
        Parameters:
        out - MarkupOutput to generate the HTML.
      • getCSSInformation

        protected java.lang.String getCSSInformation​(WebCSSHelper cssHelper)
        Since:
        MicroStrategy Web 9.0.0
      • buildDNDForEmptyGrid

        protected void buildDNDForEmptyGrid​(MarkupOutput out)
        Deprecated.
        This method is not called anymore and it doesn't generate any HTML. It's kept just for backwards compatibility.
        Parameters:
        out - MarkupOutput to generate the HTML.
      • generateJavaScriptForDrill

        protected void generateJavaScriptForDrill​(MarkupOutput out,
                                                  ReportBean rb)
        Deprecated.
        This method has been deprecated and will be removed in future versions of the product. It is expected that these control variables will be part of the grid's bone.
        Generates the javascript control variables used to generate dynamic drill URLs.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
      • generateJavaScriptForResizeColumns

        protected void generateJavaScriptForResizeColumns​(MarkupOutput out,
                                                          ReportBean rb)
        Deprecated.
        This method has been deprecated and will be removed in future versions of the product. It is expected that these control variables will be part of the grid's bone.
        Generates the javascript control variables used with the resize columns feature.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
      • generatePreHTMLForResizeColumns

        protected void generatePreHTMLForResizeColumns​(MarkupOutput out)
        Deprecated.
        This method is not called anymore and it doesn't generate any HTML. It's kept just for backwards compatibility.
        Parameters:
        out - MarkupOutput to generate the HTML.
      • generateJSForDrillCheckBoxesForIncFetch

        protected void generateJSForDrillCheckBoxesForIncFetch​(MarkupOutput out,
                                                               ReportBean rb)
        Deprecated.
        This method has been deprecated and will be removed in future versions of the product. It is expected that these functionality will be part of the grid's bone.
        Generates the javascript used to initialize the drilling when using incremental fetch.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
      • renderBottom

        public void renderBottom​(MarkupOutput out,
                                 ReportBean rb)
        Deprecated.
        This method has been deprecated and will be removed in future versions of the product. In its place, users can control the output using a layout-xml.
        Render bottom area of the transform.
        Out of box, we are displaying a message if the report is truncated because the number of report cells is exceeding limit.
        Then we display the incremental fetch for row, if the formal parameter "showIncreFetchForRowOnBottom" is true.
        Sample source code for this method is provided below.
           if (isReportTruncated()) {
               renderMaxRowsLimitMessage(out);
           }
        
           if (isTrue(showIncreFetchForRowOnBottom)) {
               renderIncreFetchOnRow(out, getReportBean());
           }
        
         
        Specified by:
        renderBottom in interface ReportDataTransform
        Overrides:
        renderBottom in class AbstractReportDataTransform
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
      • hasCenter

        public boolean hasCenter()
        Description copied from class: AbstractReportDataTransform
        Whether the transform has the center area. Out of box, it returns true.
        Specified by:
        hasCenter in class AbstractReportDataTransform
        Returns:
        Whether the transform has the center area
        Since:
        MicroStrategy Web 8.0.0
      • renderCenter

        public void renderCenter​(MarkupOutput out,
                                 ReportBean rb)
        Deprecated.
        This method has been deprecated and will be removed in future versions of the product. In its place, users can control the output using a layout-xml.
        Renders the center area of the Transform, that is, the grid.
        This method first checks if the grid is emtpy, and calls renderEmptyGrid, otherwise it checks if its a datamart, and calls renderDatamartMessage. By default it just calls renderGrid. Sample source code for this method is provided below.
           if (isGridEmpty()) {
               renderEmptyGrid(out);
        
           } else if (isDatamart()) {
               renderDatamartMessage(out);
        
           } else {
               renderGrid(out);
           }
         
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
      • renderNonViewableMessage

        public void renderNonViewableMessage​(MarkupOutput out)
        Renders a message to the end user indicating that the results of the report have been stored in a table. This method is called when the current report type is Datamart, Cube, Incremental Refresh.
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 9.0.0
      • renderDatamartMessage

        public void renderDatamartMessage​(MarkupOutput out)
        Renders a message to the end user indicating that the results of the report have been stored in a table. This method is called when the current report type is Datamart.
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • renderCubeReportMessage

        public void renderCubeReportMessage​(MarkupOutput out)
        Renders a message to the end user indicating that the results of the cube report has been published This method is called when the current report type is Cube.
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 9.0.0
      • renderIncRefresReportMessage

        public void renderIncRefresReportMessage​(MarkupOutput out)
        Renders a message to the end user indicating that the results of the cube report has been published This method is called when the current report type is Incremental Refresh.
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 9.0.0
      • renderMaxRowsLimitMessage

        public void renderMaxRowsLimitMessage​(MarkupOutput out)
        Renders a message indicating that report exceeded the number of cells allowed by the MicroStrategy Server.
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • renderGrid

        public void renderGrid​(MarkupOutput out)
        Renders the grid.
        It calls renderGridHeaders and renderGridData. It also calls renderLockHeadersInfo to generates divs necessary with this feature.
        Sample source code for this method is provided below.
           Tag tableTag = generateGridTable();
        
           renderColTags(tableTag.getContent());
           renderGridHeaders(tableTag.getContent());
           renderGridData(tableTag.getContent());
        
          tableTag.render(out);
        
           renderLockHeadersInfo(out);
         
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • renderDropZones

        public void renderDropZones​(MarkupOutput out)
        Since:
        MicroStrategy Web 9.0.0
      • getLockHeaderTag

        protected Tag getLockHeaderTag()
        Generate the lock header tag information for the grid.
        Returns:
        Tag instance with the lock header information. If not supported given the scenario, it might return null.
        Since:
        MicroStrategy Web 9.0.0
      • isLockedHeaders

        protected boolean isLockedHeaders()
      • isSpecifyWidthForCell

        protected boolean isSpecifyWidthForCell()
        Since:
        MicroStrategy Web 8.0.1
      • isSpecifyIdForTitleCell

        protected boolean isSpecifyIdForTitleCell()
        Since:
        MicroStrategy Web 8.0.1
      • renderLockHeadersInfo

        protected void renderLockHeadersInfo​(MarkupOutput out)
        Generates divs that allows the headers to be "locked" in the browser window.
        The row headers and column headers are generated again by this method, then using javascript these are positioned on top of the original headers, creating the illusion that the later are kept still.
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • renderGridHeaders

        public void renderGridHeaders​(MarkupOutput out)
        Generates the top part of the report, that is, the row titles, column titles and column headers.
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • renderGridHeaders

        protected void renderGridHeaders​(MarkupOutput out,
                                         boolean includeColumnHeaders)
        Generates the top part of the report, that is, the row titles, column titles and column headers.
        The includeColumnHeaders argument allows to dynamically decide if the column headers should be rendered or not.
        Parameters:
        out - MarkupOutput to generate the HTML.
        includeColumnHeaders - to decide whether to include column headers in the output.
        Since:
        MicroStrategy Web 8.0.0
      • renderGridTitles

        protected void renderGridTitles​(MarkupOutput out)
        Convenience method to generate only the grid titles, that is row and column titles. It calls renderGridHeaders(out, false);
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • renderGridData

        public void renderGridData​(MarkupOutput out)
        Generates the data content of the grid, this includes both Row headers and metric values.
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • renderGridData

        protected void renderGridData​(MarkupOutput out,
                                      boolean includeMetricValues)
        Generates the data content of the grid, this includes both Row headers and metric values.
        The includeMetricValues argument controls whether the metric values will be included in the output. The purpose of not including metric values is for situations when we would like to generate only the row axis and no data (internally used for lock headers).
        Parameters:
        out - MarkupOutput to generate the HTML.
        includeMetricValues - whether to include metric values or not
        Since:
        MicroStrategy Web 8.0.0
      • checkAndRenderExtraColumn

        protected void checkAndRenderExtraColumn​(MarkupOutput out)
        Since:
        Microstrategy Web 9.0.1
      • checkAndRenderEmptyRowHeader

        protected void checkAndRenderEmptyRowHeader​(MarkupOutput out)
        Renders the drag and drop zone as the empty row header at the left hand side of the grid
        Since:
        Microstrategy Web 9.0.1
      • getColTitleCount

        protected int getColTitleCount()
        Since:
        MicroStrategy Web 9.0.0
      • getSubtitlesCount

        protected int getSubtitlesCount​(WebTemplateUnit unit)
        Since:
        MicroStrategy Web 9.0.0
      • renderRowHeaders

        protected void renderRowHeaders​(MarkupOutput out)
        Convenience method to generate only the row headers (all row headers). It calls renderGridData(out, false);
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • renderColTags

        public void renderColTags​(MarkupOutput out)
        Generates the HTML for <col> tags for the main table.
        This tags control the width of the column in the grid.
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • renderColTagsHtml

        protected void renderColTagsHtml​(MarkupOutput out,
                                         int dpi,
                                         double zoom)
        Renders the col tags for a grid column widths.
        Parameters:
        dpi - int containing the dpi of the client
        zoom - value for zoom property to use
        out - MarkupOutput instance where the HTML contents to render are to be saved
        Since:
        MicroStrategy Web 9.0.0
      • getOpenObjectBrowserEvent

        public WebEvent getOpenObjectBrowserEvent()
        Returns the event to open the ObjectBrowser. This is used in the case that the grid is empty so the users can open the browser and add objects.
        Returns:
        WebEvent to open the obect browser in the report page.
        Since:
        MicroStrategy Web 8.0.0
      • getDrillEvent

        public WebEvent getDrillEvent()
        Since:
        MicroStrategy Web 8.0.1
      • getRwdDrillOutEvent

        public WebEvent getRwdDrillOutEvent()
        Since:
        MicroStrategy Web 9.0.0
      • getRenameEvent

        public WebEvent getRenameEvent()
        Since:
        MicroStrategy Web 8.0.1
      • getDerivedElementsEvent

        public WebEvent getDerivedElementsEvent()
        Since:
        MicroStrategy Web 9.0.0
      • getAdvancedDrillEvent

        public WebEvent getAdvancedDrillEvent()
        Since:
        MicroStrategy Web 8.0.1
      • getDrillEditorProcessEvent

        public WebEvent getDrillEditorProcessEvent()
        Since:
        MicroStrategy Web 8.0.1
      • getDrillFilterOnSelectionEvent

        public WebEvent getDrillFilterOnSelectionEvent()
        Since:
        MicroStrategy Web 8.0.1
      • getAdvancedDrillProcessEvent

        public WebEvent getAdvancedDrillProcessEvent()
        Since:
        MicroStrategy Web 8.0.1
      • getSortEvent

        public WebEvent getSortEvent()
        Since:
        MicroStrategy Web 8.0.1
      • mergeColHeader

        protected boolean mergeColHeader()
        Deprecated.
        Please query directly the mergeColHeaderPara formal parameter instead
        Returns the value of the mergeColHeader formal parameter.
      • overflowMode

        protected int overflowMode()
        Returns the value of the overflowMode formal parameter.
        Since:
        MicroStrategy Web 8.0.0
      • containerWidth

        protected java.lang.String containerWidth()
        Returns the value of the containerWidth formal parameter (in pixels).
        Since:
        MicroStrategy Web 8.0.0
      • containerHeight

        protected java.lang.String containerHeight()
        Returns the value of the containerWidth formal parameter (in pixels).
        Since:
        MicroStrategy Web 8.0.0
      • widthMode

        protected int widthMode()
        Deprecated.
        Please query directly the widthMode formal parameter instead
        Returns the value of the widthMode formal parameter.
        Since:
        MicroStrategy Web 8.0.0
      • heightMode

        protected int heightMode()
        Deprecated.
        Please query directly the heightMode formal parameter instead
        Returns the value of the heightMode formal parameter.
        Since:
        MicroStrategy Web 8.0.0
      • showColHeaders

        protected boolean showColHeaders()
        Check whether the Template Formatting property ShowColumnHeaders is true or false.
        Returns:
        the boolean value of the property.
        Since:
        MicroStrategy Web 8.0.0
      • showRowHeaders

        protected boolean showRowHeaders()
        Check whether the Template Formatting property ShowRowHeaders is true or false.
        Returns:
        the boolean value of the property.
        Since:
        MicroStrategy Web 8.0.0
      • isReportTruncated

        public boolean isReportTruncated()
        Returns the value of getReportBean().getReportData().isReportTruncated(). This indicates that this report has exceeded the maximum amount of rows allowed by the administrator, therefore the data has been truncated.
        Returns:
        true if the report data has been truncated.
        Since:
        MicroStrategy Web 8.0.0
      • isDesignMode

        protected boolean isDesignMode()
        Description copied from class: AbstractReportTransform
        This methods allows the transform to identify if concrete subclasses are designed to work in design mode, or in execute mode.
        Overrides:
        isDesignMode in class AbstractReportTransform
        Returns:
        false by default. Any inherting class should override to implement its own version.
        Since:
        MicroStrategy Web 8.0.0
      • generateReportGridTable

        protected void generateReportGridTable​(MarkupOutput out,
                                               ReportBean rb,
                                               boolean specifyUniqueReportID)
        Deprecated.
        This method has been deprecated and will be removed in future versions of the product. It's not used anymore. In its place you may call: generateGridTable().renderOpenTag(out);
        Generates the open tag of the report's grid table.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method). *
        specifyUniqueReportID - (ignored).
      • generateGridTable

        protected Tag generateGridTable()
        Creates the TableTag instance that is used for the table holding the report's data.
        Returns:
        The TableTag for the grid.
        Since:
        MicroStrategy Web 8.0.0
      • getAttributesEmptyGridTable

        protected java.util.Map getAttributesEmptyGridTable()
        Generates the list of attributes used by an empty grid's table. This method may be extended to include extra/custom attributes.
        Returns:
        Map with the Attributes to use
        Since:
        MicroStrategy Web 8.0.0
      • getAttributesGridTable

        protected java.util.Map getAttributesGridTable()
        Generates the list of attributes used by the grid's table. This method may be extended to include extra/custom attributes.
        Returns:
        Map with the Attributes to use
        Since:
        MicroStrategy Web 8.0.0
      • getAttributesBoneDiv

        protected java.util.Map getAttributesBoneDiv()
        Generates the list of attributes used by a div surrounding the grid. This div includes the information used by grid's bone, such as scriptclass and subtype (sty).
        Returns:
        Map with the Attributes to use
        Since:
        MicroStrategy Web 8.0.0
      • getAttributesRow

        protected java.util.Map getAttributesRow​(WebRow row)
        Generates the list of attributes used by <tr> of a single row.
        Parameters:
        row - the corresponding WebRow
        Returns:
        Map with the Attributes to use
        Since:
        MicroStrategy Web 8.0.0
      • getCssGrid

        protected java.lang.String getCssGrid()
        Returns the css class to be used by the grid table.
        Since:
        MicroStrategy Web 8.0.0
      • newEmptyRowHeader

        public ReportGridCellRowHeader newEmptyRowHeader​(int rowSpan)
        Creates and returns an empty row header with the specified rowSpan.
        Parameters:
        rowSpan - The number of rows you expect the new header to span over.
        Returns:
      • newGridTitle

        protected ReportGridCellTitle newGridTitle​(WebTitle title,
                                                   java.lang.String className)
        Since:
        MicroStrategy Web 8.1.0
      • onRowStart

        protected void onRowStart​(MarkupOutput out)
        This method is called when a new row needs to be rendered. It is responsible to open the <tr> tag
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • onRowStart

        protected void onRowStart​(WebRow row,
                                  MarkupOutput out)
        This method is called when a new row needs to be rendered. It is responsible to open the <tr> tag
        Parameters:
        out - MarkupOutput to generate the HTML.
        row - the corresponding WebRow
        Since:
        MicroStrategy Web 8.0.0
      • onRowTitle

        protected void onRowTitle​(ReportGridCellRowTitle cell,
                                  MarkupOutput out)
        This method is called when a row title needs to be rendered. By default it just calls cell.generateOutput(out) (that is, it just delegates it to the cell itself).
        Parameters:
        cell - the corresponding cell
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • onColumnTitle

        protected void onColumnTitle​(ReportGridCellColTitle cell,
                                     MarkupOutput out)
        This method is called when a column title needs to be rendered. By default it just calls cell.generateOutput(out) (that is, it just delegates it to the cell itself).
        Parameters:
        cell - the corresponding cell
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • onRowHeader

        protected void onRowHeader​(ReportGridCellRowHeader cell,
                                   MarkupOutput out)
        This method is called when a row header needs to be rendered. By default it just calls cell.generateOutput(out) (that is, it just delegates it to the cell itself).
        Parameters:
        cell - the corresponding cell
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • onColumnHeader

        protected void onColumnHeader​(ReportGridCellColHeader cell,
                                      MarkupOutput out)
        This method is called when a column header needs to be rendered. By default it just calls cell.generateOutput(out) (that is, it just delegates it to the cell itself).
        Parameters:
        cell - the corresponding cell
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • onMetricValue

        protected void onMetricValue​(ReportGridCellMetricValue cell,
                                     MarkupOutput out)
        This method is called when a metric value needs to be rendered. By default it just calls cell.generateOutput(out) (that is, it just delegates it to the cell itself).
        Parameters:
        cell - the corresponding cell
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • onRowEnd

        protected void onRowEnd​(MarkupOutput out)
        This method is called when row has finished. It is responsible to close the <tr> tag
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • onRowEnd

        protected void onRowEnd​(WebRow row,
                                MarkupOutput out)
        This method is called when row has finished. It is responsible to close the <tr> tag
        Parameters:
        row - the corresponding WebRow
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • getContextMenuManagerName

        protected java.lang.String getContextMenuManagerName()
        Returns the name to use for the ContextMenuManager of this Transform. By default, it uses _bean.getName() + "_GM" unless otherwise specified by the formal parameter
        Overrides:
        getContextMenuManagerName in class AbstractAppTransform
        Since:
        MicroStrategy Web 8.0.1
      • canRemoveFromGrid

        public boolean canRemoveFromGrid()
        Utility methood for determining if all the privileges are enabled for displaying the user the option to remove one element from the grid
        Returns:
        boolean value indicating if the manipulation should be enabled
        Since:
        MicroStrategy Web 8.0.1
      • canRemoveFromReport

        public boolean canRemoveFromReport()
        Utility methood for determining if all the privileges are enabled for displaying the user the option to remove one element from the report
        Returns:
        boolean value indicating if the manipulation should be enabled
        Since:
        MicroStrategy Web 8.0.1
      • canRename

        public boolean canRename()
        Utility methood for determining if all the privileges are enabled for displaying the user the option to rename one element from the grid
        Returns:
        boolean value indicating if the manipulation should be enabled
        Since:
        MicroStrategy Web 8.0.1
      • canAddThresholds

        public boolean canAddThresholds()
        Utility method for determining if all the privileges are enabled for displaying the user the option to add thresholds to current element from the grid
        Returns:
        boolean value indicating if the manipulation should be enabled
        Since:
        MicroStrategy Web 9.0.0
      • canFilterOn

        public boolean canFilterOn()
        Utility methood for determining if all the privileges are enabled for displaying the user the option to filter on one element from the grid
        Returns:
        boolean value indicating if the manipulation should be enabled
        Since:
        MicroStrategy Web 8.0.1
      • canFormat

        public boolean canFormat()
        Utility methood for determining if all the privileges are enabled for displaying the user the option to format one element from the grid
        Returns:
        boolean value indicating if the manipulation should be enabled
        Since:
        MicroStrategy Web 8.0.1
      • canSort

        public boolean canSort()
        Utility methood for determining if all the privileges are enabled for displaying the user the option to sort on one element from the grid
        Returns:
        boolean value indicating if the manipulation should be enabled
        Since:
        MicroStrategy Web 8.0.1
      • canDrill

        public boolean canDrill()
        Utility methood for determining if all the privileges are enabled for displaying the user the option to drill on one element from the grid
        Returns:
        boolean value indicating if the manipulation should be enabled
        Since:
        MicroStrategy Web 8.0.1
      • canInsertShortcutMetric

        public boolean canInsertShortcutMetric()
        Utility methood for determining if all the privileges are enabled for displaying the user the option to insert shortcut metrics on the grid
        Returns:
        boolean value indicating if the manipulation should be enabled
        Since:
        MicroStrategy Web 8.0.1
      • canPivot

        public boolean canPivot()
        Utility methood for determining if all the privileges are enabled for displaying the user the option to pivot one element from the grid
        Returns:
        boolean value indicating if the manipulation should be enabled
        Since:
        MicroStrategy Web 8.0.1
      • isDrillRMCAvailableForMetricValue

        public boolean isDrillRMCAvailableForMetricValue()
        Utility method to check if Drill RMC is available.
        Since:
        MicroStrategy Web 8.0.1
      • canModifyAttributeForm

        public boolean canModifyAttributeForm()
        Utility methood for determining if all the privileges are enabled for displaying the user the option to modify the attribute forms on one element from the grid
        Returns:
        boolean value indicating if the manipulation should be enabled
        Since:
        MicroStrategy Web 8.0.1
      • canResize

        public boolean canResize()
        Utility methood for determining if allowing users to resize columns of a linked template in rwd
        Returns:
        boolean value indicating if the manipulation should be enabled
        Since:
        MicroStrategy Web 9.2.2