Class ReportOutlineModeTransformImpl

  • All Implemented Interfaces:
    AppTransform, ReportDataTransform, LayoutTransform, Transform
    Direct Known Subclasses:
    AbstractReportOutlineModeExportTransform

    public class ReportOutlineModeTransformImpl
    extends ReportGridTransformImpl

    Title: ReportOutlineModeTransformImpl.

    The ReportOutlineModeTransformImpl generates the grid visualization of the data returned by a Report. As opposed to the ReportGridTransformImpl, the data is displayed in outline mode, for example:

    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,727
    $5,770
    $3,489
    $6,230
     
     
    Cameras 
    $7,212
    $11,745
    $8,819
    $11,556
     
     
    TV's 
    $1,808
    $4,190
    $2,428
    $4,001
     
    [-] Movies 




     
     
    Drama 
    $1,140
    $1,867
    $1,497
    $2,157
     
     
    Special Interests 
    $613
    $1,125
    $658
    $1,092
     
    [-] Music 




     
     
    Pop 
    $649
    $959
    $628
    $1,266
     
     
    Soul / R&B 
    $549
    $1,040
    $690
    $1,166
    [-] Southwest 




     
    [-] Electronics 




     
     
    Audio Equipment 
    $5,754
    $9,291
    $6,669
    $13,134
     
     
    Cameras 
    $12,125
    $25,268
    $17,725
    $26,134
     
     
    TV's 
    $4,508
    $7,359
    $4,863
    $9,169
     
    [-] Movies 




     
     
    Drama 
    $2,030
    $3,693
    $2,629
    $4,927
     
     
    Special Interests 
    $1,169
    $1,807
    $1,302
    $2,290
     
    [-] Music 




     
     
    Pop 
    $930
    $2,041
    $1,182
    $2,229
     
     
    Soul / R&B 
    $1,009
    $1,928
    $1,375
    $2,376

    For the data to be displayed correctly, the report data must come already "indented". This happens by setting the "Indented" property in the "Template Formatting" property set of the template extended properties.

    Since:
    MicroStrategy Web 7.3.1 or earlier
    • Field Detail

      • imgOutlineExpand

        protected FormalParameter imgOutlineExpand
        This is the image name for expanding the Outline Mode grid data.
        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.
      • imgOutlineContract

        protected FormalParameter imgOutlineContract
        This is the image name for collapsing the Outline Mode grid data.
        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.
      • outlineModeDefaultLevelMax

        protected FormalParameter outlineModeDefaultLevelMax
        Deprecated.
        This parameter is not used anymore.
        If this value is set to true the default level at which any newly run report wil open for outline mode will be maximum expanded.
        If it is false, the default will be fully collapsed.
        This property will be used only if the report property denoting the outline mode level is not present.
        Allowed Values: String values.
      • outlineModeLevelTableID

        protected FormalParameter outlineModeLevelTableID
        Deprecated.
        This parameter is not used anymore.
        This is the ID for the table used to show the outline mode levels at the top of the report.
        Allowed Values: String value representing an ID.
        Since:
        MicroStrategy Web 7.5.0
      • cssOutlineModeLevelTable

        protected FormalParameter cssOutlineModeLevelTable
        Deprecated.
        css formatting should now be applied through the layout-xml.
        This is the css name for the table used to show the outline mode levels at the top of the report.
        Allowed Values: String value representing a css class name. It should be defined in a css file included in the page.
      • cssOutlineModeLevelCell

        protected FormalParameter cssOutlineModeLevelCell
        Deprecated.
        css formatting should now be applied through the layout-xml.
        This is the css name for the cells used to show the outline mode levels at the top of the report.
        Allowed Values: String value representing a css class name. It should be defined in a css file included in the page.
      • cssOutlineModeExpandImage

        protected FormalParameter cssOutlineModeExpandImage
        Deprecated.
        css formatting should now be applied through the layout-xml.
        This is the css name for the expand image used in the outline mode grid display.
        Allowed Values: String value representing a css class name. It should be defined in a css file included in the page.
      • cssOutlineModeContractImage

        protected FormalParameter cssOutlineModeContractImage
        Deprecated.
        css formatting should now be applied through the layout-xml.
        This is the css name for the contract image used in the outline mode grid display.
        Allowed Values: String value representing a css class name. It should be defined in a css file included in the page.
      • outlineModeSupressDuplicateSubTotals

        protected FormalParameter outlineModeSupressDuplicateSubTotals
        If this is set to true we will supress the duplication of sub totals in outline mode except for the case when the metrics are on the rows.
        Allowed Values: boolean true or false.
        Since:
        MicroStrategy Web 7.5.0
      • useImagesForOutlineMode

        protected FormalParameter useImagesForOutlineMode
        If this is set to true we will use the contract and expand images to denote outline mode, if set to false we will use text to display those states.
        Allowed Values: boolean true or false.
        Since:
        MicroStrategy Web 7.5.1
      • outlineModeState

        protected FormalParameter outlineModeState
        This is an XML representation of the outline mode expansion state.
        Allowed Values: String with an XML representation of the outline mode expansion state.
        Since:
        MicroStrategy Web 8.0.0
      • staticOutlineMode

        protected FormalParameter staticOutlineMode
        This will indicate if we want a static or non static outline mode.
        In static outline mode we will not execute or render any of the Javascript associated with outline mode. In HTML mode the oultine mode transform will always be static irrespective of the value of this formal parameter. Allowed Values: true or false.
        Since:
        MicroStrategy Web 8.0.0
    • Constructor Detail

      • ReportOutlineModeTransformImpl

        public ReportOutlineModeTransformImpl()
        default no-args constructor.
        It created the formal parameters and assign default values to them.
    • Method Detail

      • renderGridData

        public void renderGridData​(MarkupOutput out,
                                   boolean includeMetricValues)
        Description copied from class: ReportGridTransformImpl
        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).
        Overrides:
        renderGridData in class ReportGridTransformImpl
        Parameters:
        out - MarkupOutput to generate the HTML.
        includeMetricValues - whether to include metric values or not
        Since:
        MicroStrategy Web 8.0.0
      • isSubtotal

        protected boolean isSubtotal​(WebHeader header)
        Returns true if the given WebHeader corresponds to a subtotal.
        Since:
        MicroStrategy Web 8.0.1
      • renderJavascript

        protected void renderJavascript​(MarkupOutput out)
        Description copied from class: ReportGridTransformImpl
        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 ReportGridTransformImpl
        Parameters:
        out - MarkupOutput to generate the HTML.
        Since:
        MicroStrategy Web 8.0.0
      • generateJavaScriptForOutlineMode

        protected void generateJavaScriptForOutlineMode​(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 outline mode feature.
        Parameters:
        out - MarkupOutput to generate the HTML.
        rb - ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).
      • 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.
        Extends super.renderRowTitle by merging the subtitles cells into one single cell (when outline mode is on, each attribute is displayed in only one column, regardless of how many attribute forms are being displayed).
        Overrides:
        renderRowTitle in class ReportGridTransformImpl
        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
      • getResultSetStartRow

        protected int getResultSetStartRow()
        Returns:
        int the result window first row number.
        Since:
        MicroStrategy Web 8.0.0
      • getCurrentHeader

        protected WebHeader getCurrentHeader()
        Since:
        MicroStrategy Web 9.0.0
      • addApplicableAttributesRow

        protected void addApplicableAttributesRow​(WebRow row,
                                                  java.util.Map attributes)
        Since:
        MicroStrategy Web 9.0.0
      • getAttributesRow

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