public class

ReportOutlineModeTransformImpl

extends ReportGridTransformImpl
java.lang.Object
   ↳ com.microstrategy.web.transform.AbstractTransform
     ↳ com.microstrategy.web.transform.AbstractLayoutTransform
       ↳ com.microstrategy.web.app.transforms.AbstractAppTransform
         ↳ com.microstrategy.web.app.transforms.AbstractWebBeanTransform
           ↳ com.microstrategy.web.app.transforms.AbstractReportTransform
             ↳ com.microstrategy.web.app.transforms.AbstractReportDataTransform
               ↳ com.microstrategy.web.app.transforms.AbstractReportGridTransform
                 ↳ com.microstrategy.web.app.transforms.ReportGridTransformImpl
                   ↳ com.microstrategy.web.app.transforms.ReportOutlineModeTransformImpl
Known Direct Subclasses
Known Indirect Subclasses

Class Overview

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.

Summary

[Expand]
Inherited Constants
From class com.microstrategy.web.app.transforms.ReportGridTransformImpl
From class com.microstrategy.web.app.transforms.AbstractReportDataTransform
From class com.microstrategy.web.app.transforms.AbstractAppTransform
Fields
protected FormalParameter cssOutlineModeContractImage This field is deprecated. css formatting should now be applied through the layout-xml.
protected FormalParameter cssOutlineModeExpandImage This field is deprecated. css formatting should now be applied through the layout-xml.
protected FormalParameter cssOutlineModeLevelCell This field is deprecated. css formatting should now be applied through the layout-xml.
protected FormalParameter cssOutlineModeLevelTable This field is deprecated. css formatting should now be applied through the layout-xml.
protected FormalParameter imgOutlineContract This is the image name for collapsing the Outline Mode grid data.
protected FormalParameter imgOutlineExpand This is the image name for expanding the Outline Mode grid data.
protected FormalParameter outlineModeDefaultLevelMax This field is deprecated. This parameter is not used anymore.
protected FormalParameter outlineModeLevelTableID This field is deprecated. This parameter is not used anymore.
protected FormalParameter outlineModeState This is an XML representation of the outline mode expansion state.
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.
protected FormalParameter staticOutlineMode This will indicate if we want a static or non static outline mode.
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.
[Expand]
Inherited Fields
From class com.microstrategy.web.app.transforms.ReportGridTransformImpl
From class com.microstrategy.web.app.transforms.AbstractReportGridTransform
From class com.microstrategy.web.app.transforms.AbstractReportDataTransform
From class com.microstrategy.web.app.transforms.AbstractReportTransform
From class com.microstrategy.web.app.transforms.AbstractAppTransform
Public Constructors
ReportOutlineModeTransformImpl()
default no-args constructor.
Public Methods
String getDescription()
Returns a textual description of this transform to be used in WYSIWYG tools.
void initializeImages()
initialize the images for the transform.
void initializeProperties()
Extends initializeProperties by invoking initializeTranformContext
ReportGridCellRowHeader newRowHeader(WebHeader wh)
Creates and initialize a new ReportGridCellRowHeader with the given parameters.
ReportGridCellRowTitle newRowTitle(WebTitle title, WebSubTitle subTitle, int subTitleIndex)
Creates and initialize a new ReportGridCellRowTitle with the given parameters.
void renderGridData(MarkupOutput out, boolean includeMetricValues)
Generates the data content of the grid, this includes both Row headers and metric values.
void renderOutlineModeLevels(MarkupOutput out, ReportBean rb)
This method is deprecated. This method is not used by Microstrategy Web. If you need to generate these buttons you may call renderOutlineModeLevels(MarkupOutput) directly.
void renderRowTitle(MarkupOutput out, ReportBean rb, WebTitle title)
Renders a single rowTitle.
Protected Methods
void addApplicableAttributesRow(WebRow row, Map attributes)
void generateJavaScriptForOutlineMode(MarkupOutput out, ReportBean rb)
This method is 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.
Map getAttributesRow(WebRow row)
Generates the list of attributes used by <tr> of a single row.
WebHeader getCurrentHeader()
int getResultSetStartRow()
boolean isSubtotal(WebHeader header)
Returns true if the given WebHeader corresponds to a subtotal.
void renderJavascript(MarkupOutput out)
This method renders the javascript code that needs to be generated on the server side because its content is dynamic.
void updateDynamicScriptFileInformation()
[Expand]
Inherited Methods
From class com.microstrategy.web.app.transforms.ReportGridTransformImpl
From class com.microstrategy.web.app.transforms.AbstractReportGridTransform
From class com.microstrategy.web.app.transforms.AbstractReportDataTransform
From class com.microstrategy.web.app.transforms.AbstractReportTransform
From class com.microstrategy.web.app.transforms.AbstractWebBeanTransform
From class com.microstrategy.web.app.transforms.AbstractAppTransform
From class com.microstrategy.web.transform.AbstractLayoutTransform
From class com.microstrategy.web.transform.AbstractTransform
From class java.lang.Object
From interface com.microstrategy.web.app.transforms.AppTransform
From interface com.microstrategy.web.app.transforms.ReportDataTransform
From interface com.microstrategy.web.transform.LayoutTransform
From interface com.microstrategy.web.transform.Transform

Fields

protected FormalParameter cssOutlineModeContractImage

This field is 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.

protected FormalParameter cssOutlineModeExpandImage

This field is 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.

protected FormalParameter cssOutlineModeLevelCell

This field is 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.

protected FormalParameter cssOutlineModeLevelTable

This field is 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.

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.

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.

protected FormalParameter outlineModeDefaultLevelMax

This field is 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.

protected FormalParameter outlineModeLevelTableID

This field is 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.

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.

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.

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.

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.

Public Constructors

public ReportOutlineModeTransformImpl ()

default no-args constructor.
It created the formal parameters and assign default values to them.

Public Methods

public 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.";

public void initializeImages ()

initialize the images for the transform.

public void initializeProperties ()

Extends initializeProperties by invoking initializeTranformContext

public ReportGridCellRowHeader newRowHeader (WebHeader wh)

Creates and initialize a new ReportGridCellRowHeader with the given parameters.

public ReportGridCellRowTitle newRowTitle (WebTitle title, WebSubTitle subTitle, int subTitleIndex)

Creates and initialize a new ReportGridCellRowTitle with the given parameters.

public 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

public void renderOutlineModeLevels (MarkupOutput out, ReportBean rb)

This method is deprecated.
This method is not used by Microstrategy Web. If you need to generate these buttons you may call renderOutlineModeLevels(MarkupOutput) directly.

Generates the HTML for the buttons that changes the current grid's expanded level.
Out of the box, this is actually rendered by the ReportToolbar, specifically by the renderOutlineModeLevels(MarkupOutput) method.

Parameters
out MarkupOutput to generate the HTML.
rb ReportBean being transformed (ignored, always uses the bean passed to the initializeTransform method).

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).

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

Protected Methods

protected void addApplicableAttributesRow (WebRow row, Map attributes)

protected void generateJavaScriptForOutlineMode (MarkupOutput out, ReportBean rb)

This method is 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).

protected 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

protected WebHeader getCurrentHeader ()

protected int getResultSetStartRow ()

Returns
  • int the result window first row number.

protected boolean isSubtotal (WebHeader header)

Returns true if the given WebHeader corresponds to a subtotal.

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.

Parameters
out MarkupOutput to generate the HTML.

protected void updateDynamicScriptFileInformation ()