Style Intelligence v12.0

inetsoft.report.filter
Class SummaryFilter

java.lang.Object
  extended by inetsoft.report.lens.AbstractTableLens
      extended by inetsoft.report.filter.AbstractGroupedTable
          extended by inetsoft.report.filter.SummaryFilter
All Implemented Interfaces:
CalcFilter, GroupedTable, RegionTable, SortedTable, StyleConstants, TableFilter, TableLens, XConstants, XTable, Serializable, Cloneable

public class SummaryFilter
extends AbstractGroupedTable
implements TableFilter, SortedTable, CalcFilter, Cloneable

SummaryFilter is a special GroupFilter where only summary rows are displayed. The details rows are omitted.

See Also:
Serialized Form

Nested Class Summary
protected  class SummaryFilter.GroupNode
          Group node.
protected  class SummaryFilter.MergedGroupNode
          Merged group node.
 
Nested classes/interfaces inherited from class inetsoft.report.filter.AbstractGroupedTable
AbstractGroupedTable.BooleanObject
 
Field Summary
 
Fields inherited from class inetsoft.report.lens.AbstractTableLens
descriptor, isLeftAlign
 
Fields inherited from interface inetsoft.report.TableLens
BREAK_BORDER, NULL
 
Fields inherited from interface inetsoft.uql.XTable
EOT
 
Fields inherited from interface inetsoft.report.StyleConstants
ARROW_LINE_1, ARROW_LINE_2, ARROW_LINE_3, BACKGROUND_CENTER, BACKGROUND_TILED, BOX_RECTANGLE, BOX_ROUNDED_RECTANGLE, CENTER, CHART_3D_BAR, CHART_3D_BAR_3D, CHART_3D_PIE, CHART_3D_STACK_BAR, CHART_AREA, CHART_BAR, CHART_BUBBLE, CHART_CANDLE, CHART_CURVE, CHART_FILL_RADAR, CHART_GANTT, CHART_INV_BAR, CHART_INV_CURVE, CHART_INV_LINE, CHART_INV_POINT, CHART_INV_STACK_BAR, CHART_LINE, CHART_MAX_USER, CHART_PARETO, CHART_PIE, CHART_PIE_EXPLODED_ALL, CHART_PIE_EXPLODED_FIRST, CHART_PIE_EXPLODED_NONE, CHART_POINT, CHART_RADAR, CHART_RIBBON, CHART_SCATTER, CHART_SPEEDOMETER, CHART_STACK_AREA, CHART_STACK_BAR, CHART_STICK, CHART_STOCK, CHART_SURFACE, CHART_USER, CHART_VOLUME, CHART_WATERFALL, CHART_XY_LINE, CIRCLE, CROSS, CURRENCY, DASH_LINE, DASH_MASK, DEFAULT_PAGE_SIZE, DIAMOND, DOT_LINE, DOUBLE_3D_LOWERED, DOUBLE_3D_RAISED, DOUBLE_LINE, DOUBLE_MASK, FILL, FILLED_CIRCLE, FILLED_DIAMOND, FILLED_SQUARE, FILLED_TRIANGLE, FRACTION_WIDTH_MASK, H_ALIGN_MASK, H_CENTER, H_CURRENCY, H_LEFT, H_LINE, H_RIGHT, LANDSCAPE, LARGE_DASH, LEFT, LINECAP_BUTT, LINECAP_ROUND, LINECAP_SQUARE, LINEJOIN_BEVEL, LINEJOIN_MITER, LINEJOIN_ROUND, LOWERED_3D, LOWERED_MASK, LT_ANGLE, MEDIUM_DASH, MEDIUM_LINE, NIL, NO_BORDER, NONE, PAPER_10X11, PAPER_10X14, PAPER_11X17, PAPER_15X11, PAPER_9X11, PAPER_A_PLUS, PAPER_A2, PAPER_A3, PAPER_A3_EXTRA, PAPER_A3_EXTRA_TRANSVERSE, PAPER_A3_TRANSVERSE, PAPER_A4, PAPER_A4_EXTRA, PAPER_A4_PLUS, PAPER_A4_TRANSVERSE, PAPER_A4SMALL, PAPER_A5, PAPER_A5_EXTRA, PAPER_A5_TRANSVERSE, PAPER_B_PLUS, PAPER_B4, PAPER_B5, PAPER_B5_EXTRA, PAPER_B5_TRANSVERSE, PAPER_CSHEET, PAPER_DSHEET, PAPER_ENV_10, PAPER_ENV_11, PAPER_ENV_12, PAPER_ENV_14, PAPER_ENV_9, PAPER_ENV_B4, PAPER_ENV_B5, PAPER_ENV_B6, PAPER_ENV_C3, PAPER_ENV_C4, PAPER_ENV_C5, PAPER_ENV_C6, PAPER_ENV_C65, PAPER_ENV_DL, PAPER_ENV_INVITE, PAPER_ENV_ITALY, PAPER_ENV_MONARCH, PAPER_ENV_PERSONAL, PAPER_ESHEET, PAPER_EXECUTIVE, PAPER_FANFOLD_LGL_GERMAN, PAPER_FANFOLD_STD_GERMAN, PAPER_FANFOLD_US, PAPER_FOLIO, PAPER_ISO_B4, PAPER_JAPANESE_POSTCARD, PAPER_LEDGER, PAPER_LEGAL, PAPER_LEGAL_EXTRA, PAPER_LETTER, PAPER_LETTER_EXTRA, PAPER_LETTER_EXTRA_TRANSVERSE, PAPER_LETTER_PLUS, PAPER_LETTER_TRANSVERSE, PAPER_LETTERSMALL, PAPER_NOTE, PAPER_QUARTO, PAPER_STATEMENT, PAPER_TABLOID, PAPER_TABLOID_EXTRA, PATTERN_0, PATTERN_1, PATTERN_10, PATTERN_11, PATTERN_12, PATTERN_13, PATTERN_14, PATTERN_15, PATTERN_16, PATTERN_17, PATTERN_18, PATTERN_19, PATTERN_2, PATTERN_3, PATTERN_4, PATTERN_5, PATTERN_6, PATTERN_7, PATTERN_8, PATTERN_9, PATTERN_NONE, PORTRAIT, RAISED_3D, RAISED_MASK, REMAINDER, RIGHT, RIGHT_ANGLE, SOLID_MASK, SQUARE, STAR, THICK_LINE, THIN_LINE, THIN_THIN_LINE, TRAY_AUTO, TRAY_CASSETTE, TRAY_ENVELOPE, TRAY_ENVMANUAL, TRAY_FORMSOURCE, TRAY_LARGECAPACITY, TRAY_LARGEFMT, TRAY_LOWER, TRAY_MANUAL, TRAY_MIDDLE, TRAY_ONLYONE, TRAY_SMALLFMT, TRAY_TRACTOR, TRAY_UPPER, TRIANGLE, ULTRA_THIN_LINE, V_ALIGN_MASK, V_ANGLE, V_BASELINE, V_BOTTOM, V_CENTER, V_LINE, V_TOP, WIDTH_MASK, X
 
Fields inherited from interface inetsoft.uql.XConstants
AM_PM_DATE_GROUP, AM_PM_OF_DAY_DATE_GROUP, AVERAGE_FORMULA, CALC_FORMULA, COLUMN, CONCAT_FORMULA, CONDITION_EMPTY_STRING, CONDITION_NULL_STRING, CONDITION_NULL_VALUE, CONDITION_REAL_NULL, CORRELATION_FORMULA, COUNT_FORMULA, COVARIANCE_FORMULA, CURRENCY_FORMAT, CURRENT_REP_CHANGED, CURRENT_REP_WILL_CHANGE, DATE_FORMAT, DAY_DATE_GROUP, DAY_OF_MONTH_DATE_GROUP, DAY_OF_WEEK_DATE_GROUP, DAY_OF_YEAR_DATE_GROUP, DECIMAL_FORMAT, DISTINCTCOUNT_FORMULA, FIRST_FORMULA, FULL_JOIN, GREATER_EQUAL_JOIN, GREATER_JOIN, GROUP_OTHERS, HOUR_DATE_GROUP, HOUR_OF_DAY_DATE_GROUP, INNER_JOIN, JOIN, LAST_FORMULA, LEAVE_OTHERS, LEFT_JOIN, LESS_EQUAL_JOIN, LESS_JOIN, MAX_FORMULA, MEDIAN_FORMULA, MESSAGE_FORMAT, MILLISECOND_DATE_GROUP, MIN_FORMULA, MINUTE_DATE_GROUP, MODE_FORMULA, MONTH_DATE_GROUP, MONTH_OF_YEAR_DATE_GROUP, NONE_DATE_GROUP, NONE_FORMULA, NOT_EQUAL_JOIN, NTHLARGEST_FORMULA, NTHMOSTFREQUENT_FORMULA, NTHSMALLEST_FORMULA, PARAM_PREFIX, PART_DATE_GROUP, PERCENT_FORMAT, PERCENTAGE_BY_COL, PERCENTAGE_BY_ROW, PERCENTAGE_NONE, PERCENTAGE_OF_COL_GRANDTOTAL, PERCENTAGE_OF_COL_GROUP, PERCENTAGE_OF_GRANDTOTAL, PERCENTAGE_OF_GROUP, PERCENTAGE_OF_ROW_GRANDTOTAL, PERCENTAGE_OF_ROW_GROUP, POPULATIONSTANDARDDEVIATION_FORMULA, POPULATIONVARIANCE_FORMULA, PRODUCT_FORMULA, PTHPERCENTILE_FORMULA, QUARTER_DATE_GROUP, QUARTER_OF_YEAR_DATE_GROUP, RIGHT_JOIN, SECOND_DATE_GROUP, SET_FORMULA, SORT_ASC, SORT_DESC, SORT_NONE, SORT_ORIGINAL, SORT_SPECIFIC, SORT_VALUE_ASC, SORT_VALUE_DESC, STANDARDDEVIATION_FORMULA, SUB_QUERY_PARAM, SUM_FORMULA, SUMSQ_FORMULA, SUMWT_FORMULA, VARIANCE_FORMULA, WEEK_DATE_GROUP, WEEK_OF_MONTH_DATE_GROUP, WEEK_OF_YEAR_DATE_GROUP, WEIGHTEDAVERAGE_FORMULA, YEAR_DATE_GROUP
 
Fields inherited from interface inetsoft.report.filter.GroupedTable
GROUP_HEADER_FULL, GROUP_HEADER_IN_PLACE, GROUP_HEADER_ROWS
 
Constructor Summary
SummaryFilter(SortedTable table, int[] sums, Formula[] calcs, Formula[] grand)
          Create a SummaryFilter.
SummaryFilter(SortedTable table, int[] sums, Formula[] calcs, Formula[] grand, String[] headers)
          Create a SummaryFilter.
SummaryFilter(SortedTable table, int[] sums, Formula calc, Formula grand)
          Create a SummaryFilter.
SummaryFilter(SortedTable table, int sum, Formula calc, Formula grand)
          Create a SummaryFilter.
SummaryFilter(TableLens table, int[] groupcols, int[] sums, Formula[] calcs, Formula[] grand)
          Create a SummaryFilter.
SummaryFilter(TableLens table, int[] groupcols, int[] sums, Formula[] calcs, Formula[] grand, boolean hierarchy)
          Create a SummaryFilter.
SummaryFilter(TableLens table, int[] groupcols, int[] sums, Formula[] calcs, Formula[] grand, boolean hierarchy, int pglvl)
          Create a SummaryFilter.
SummaryFilter(TableLens table, int[] groupcols, int[] sums, Formula calc, Formula grand)
          Create a SummaryFilter.
 
Method Summary
 void clearSortByVal()
           
 boolean containsTopN(int col)
          Check if contains topn info.
 void dispose()
          Dispose the table to clear up temporary resources.
protected  boolean evaluate(SummaryFilter.GroupNode node)
          Evaluate the detail node.
 int getAlignment(int r, int c)
          Return the per cell alignment.
 int getBaseColIndex(int col)
          Get the base table column index corresponding to the filtered table.
 int getBaseRowIndex(int row)
          Get the base table row index corresponding to the filtered table.
 int getColCount()
          Return the number of columns in the table.
 String getColumnIdentifier(int col)
          Get the column identifier of a column.
 Comparer getComparer(int col)
          Get the comparer for a sorting column.
 TableDataDescriptor getDescriptor()
          Get internal table data descriptor which contains table structural infos.
 Font getFont(int r, int c)
          Return the per cell font.
 Formula getGrandFormula(int col)
          Get the grand total formula of the column.
 Formula[] getGrandFormulae()
          Get grand formulae.
 String getGrandLabel()
          Get the grand total row label.
 int getGroupColCount()
          Return the number of grouping columns.
 int getGroupColumns(int level)
          Get the number of columns used in the specified grouping level.
 Formula getGroupFormula(int col)
          Get the group formula of the column.
 int getGroupHeaderStyle()
          Get the group header style.
 int getGroupLevel(int r)
          Get the grouping level of this group header.
 SortOrder getGroupOrder(int col)
          Get the specific group order information.
 int getHeaderColCount()
          Return the number of columns on the left of the table to be treated as header columns.
 int getHeaderRowCount()
          Return the number of rows on the top of the table to be treated as header rows.
 Object getObject(int r, int c)
          Return the value at the specified cell.
 boolean[] getOrders()
          Get the sorting order of the sorting columns.
 int getRowCount()
          Return the number of rows in the table.
 int[] getSortCols()
          Get the columns that the table is sorted on.
 String getSummaryLabel()
          Get summary row label format.
 int getSummaryLevel(int row)
          Get summary level of a row.
 TableLens getTable()
          Get the original table of this filter.
 int getTrailerRowCount()
          Return the number of rows on the bottom of the table to be treated as trailer rows.
 boolean hasGrandSummary()
          Check if this table contains grand summary row.
 void invalidate()
          Invalidate the table filter forcely, and the table filter will perform filtering calculation to validate itself.
 boolean isAddGroupHeader()
          Check if group header is to be added to the grouped data.
 boolean isAggregateTopN()
          Check if only aggregate topN rows.
 boolean isDefaultResult()
          Get the default result option of this filter.
 boolean isGroupHeaderCell(int r, int c)
          Check if a cell is a group header cell.
 boolean isGroupHeaderRow(int r)
          Check if a row is displaying group header.
 boolean isKeepHierarchy()
          Check whether to keep group hierarchy.
 boolean isShowGroupColumns()
          Check if the group column contents are shown.
 boolean isSummaryCol(int col)
          Check if a column is a summary column.
 boolean isSummaryRow(int row)
          Check if a row is a summary row.
 boolean moreRows(int row)
          Check if there are more rows.
 void removeSortByVal(int col)
          Remove sort by column value info.
 void removeTopN(int col)
          Remove topn info.
protected  void resetOrder(List nodes0, List nodes1, int gidx)
          Restore to original order if necessary.
 void setAddGroupHeader(boolean h)
          Set whether group headers are added to the table.
 void setAggregateTopN(boolean aggTopN)
          Set the option if only aggregate topN rows.
 void setComparer(int col, Comparer comp)
          Set the comparer for a sorting column.
 void setDefaultResult(boolean def)
          Set the default result option of this filter.
 void setGrandLabel(String label)
          Set the grand total label.
 void setGroupHeaderStyle(int headerS)
          Set the group header style.
 void setGroupOrder(int col, SortOrder order)
          Set the specific group order information.
 void setMeasureNames(String[] names)
          Set the measure names to table.
 void setObject(int r, int c, Object v)
          Set the cell value.
 void setShowGroupColumns(boolean grp)
          Set the show group column contents option.
 void setSortByValInfo(int col, int scol, boolean reverse)
          Set sort by value column info.
 void setSummaryLabel(String fmt)
          Set the summary row label.
 void setTable(TableLens table)
          Set the base table of this filter.
 void setTopN(int col, int scol, int topn, boolean reverse)
          Set topn info.
 void setTopN(int col, int scol, int topn, boolean reverse, boolean kept, boolean others)
          Set topn info.
 void setTopNAggregateInfo(int dcol, int n, boolean topn)
          Set the global topN.
 
Methods inherited from class inetsoft.report.filter.AbstractGroupedTable
clearCache, clearPageBreaks, firstSummaryColumn, getAvailableLevels, getGroupColLevel, getGroupFirstRow, getGroupFirstRow, getGroupFirstRow0, getGroupLastRow, getGroupLastRow, getGroupLastRow0, getGroupLevel0, getHeader2, getMergedGroup, getOriginalPath, getPageBreakLevels, getRealGroupColCount, getSpan, isMergedGroup, isMergeGroupCells, setMergedGroup, setMergeGroupCells
 
Methods inherited from class inetsoft.report.lens.AbstractTableLens
addChangeListener, clone, containsDrill, containsFormat, findColumnByIdentifier, fireChangeEvent, getBackground, getBoolean, getByte, getColBorder, getColBorderColor, getColType, getColWidth, getDefaultFormat, getDouble, getFloat, getForeground, getInsets, getInt, getLong, getRowBorder, getRowBorderColor, getRowHeight, getShort, getTrailerColCount, getXDrillInfo, isLineWrap, isNull, isPrimitive, removeChangeListener, setColumnIdentifier, setLeftAlign, setLocal
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface inetsoft.report.TableLens
addChangeListener, containsDrill, containsFormat, getBackground, getColBorder, getColBorderColor, getColWidth, getDefaultFormat, getForeground, getInsets, getRowBorder, getRowBorderColor, getRowHeight, getSpan, getXDrillInfo, isLineWrap, removeChangeListener
 
Methods inherited from interface inetsoft.uql.XTable
getBoolean, getByte, getColType, getDouble, getFloat, getInt, getLong, getShort, getTrailerColCount, isNull, isPrimitive, setColumnIdentifier
 

Constructor Detail

SummaryFilter

public SummaryFilter(SortedTable table,
                     int sum,
                     Formula calc,
                     Formula grand)
Create a SummaryFilter. The sorting columns in the sorted table are used for grouping.

Parameters:
table - sorted table.
sum - summary column.
calc - summary formula.
grand - grand total formula.

SummaryFilter

public SummaryFilter(SortedTable table,
                     int[] sums,
                     Formula calc,
                     Formula grand)
Create a SummaryFilter. The sorting columns in the sorted table are used for summarying.

Parameters:
table - sorted table.
sums - summary columns.
calc - summary formula.
grand - grand total formula.

SummaryFilter

public SummaryFilter(TableLens table,
                     int[] groupcols,
                     int[] sums,
                     Formula calc,
                     Formula grand)
Create a SummaryFilter. The sorting columns in the sorted table are used for summarying.

Parameters:
table - base table.
sums - summary columns.
calc - summary formula.
grand - grand total formula.

SummaryFilter

public SummaryFilter(TableLens table,
                     int[] groupcols,
                     int[] sums,
                     Formula[] calcs,
                     Formula[] grand)
Create a SummaryFilter. The sorting columns in the sorted table are used for summarying.

Parameters:
table - base table.
sums - summary columns.
calcs - summary formula.
grand - grand total formula.

SummaryFilter

public SummaryFilter(TableLens table,
                     int[] groupcols,
                     int[] sums,
                     Formula[] calcs,
                     Formula[] grand,
                     boolean hierarchy)
Create a SummaryFilter. The sorting columns in the sorted table are used for summarying.

Parameters:
table - base table.
sums - summary columns.
calcs - summary formula.
grand - grand total formula.
hierarchy - true if keep the group hierarchy, default is false.

SummaryFilter

public SummaryFilter(TableLens table,
                     int[] groupcols,
                     int[] sums,
                     Formula[] calcs,
                     Formula[] grand,
                     boolean hierarchy,
                     int pglvl)
Create a SummaryFilter. The sorting columns in the sorted table are used for summarying.

Parameters:
table - base table.
sums - summary columns.
calcs - summary formula.
grand - grand total formula.
hierarchy - true if keep the group hierarchy, default is false.
pglvl - percent by group level.

SummaryFilter

public SummaryFilter(SortedTable table,
                     int[] sums,
                     Formula[] calcs,
                     Formula[] grand,
                     String[] headers)
Create a SummaryFilter. The sorting columns in the sorted table are used for grouping.

Parameters:
table - sorted table.
sums - summary columns.
calcs - summary formulas.
grand - grand total formulas.
headers - the column headers for the summary columns. If not specified, the column header of the summarized column is used.

SummaryFilter

public SummaryFilter(SortedTable table,
                     int[] sums,
                     Formula[] calcs,
                     Formula[] grand)
Create a SummaryFilter. The sorting columns in the sorted table are used for grouping.

Parameters:
table - sorted table.
sums - summary columns.
calcs - summary formulas.
grand - grand total formulas.
Method Detail

getGroupColCount

public int getGroupColCount()
Return the number of grouping columns. Multiple column group is counted as one group column.

Specified by:
getGroupColCount in interface GroupedTable
Specified by:
getGroupColCount in class AbstractGroupedTable

isGroupHeaderRow

public boolean isGroupHeaderRow(int r)
Check if a row is displaying group header.

Specified by:
isGroupHeaderRow in interface GroupedTable
Specified by:
isGroupHeaderRow in class AbstractGroupedTable
Parameters:
r - row number.

isGroupHeaderCell

public boolean isGroupHeaderCell(int r,
                                 int c)
Check if a cell is a group header cell. This is more accurate than the isGroupHeaderRow() because it takes into consideration of the in-place header rows (where it's partially a header and body).

Specified by:
isGroupHeaderCell in interface GroupedTable
Specified by:
isGroupHeaderCell in interface RegionTable
Specified by:
isGroupHeaderCell in class AbstractGroupedTable
Parameters:
r - row number.
c - column number.
Returns:
true if the cell is a group header cell.

getGroupColumns

public int getGroupColumns(int level)
Get the number of columns used in the specified grouping level. This is normally 1 unless multiple columns are combined into one group.

Specified by:
getGroupColumns in interface GroupedTable
Specified by:
getGroupColumns in class AbstractGroupedTable

getGroupLevel

public int getGroupLevel(int r)
Get the grouping level of this group header. The row number must refer to a header row.

Specified by:
getGroupLevel in interface GroupedTable
Specified by:
getGroupLevel in interface RegionTable
Specified by:
getGroupLevel in class AbstractGroupedTable
Returns:
grouping level. The top-most group is level 0. Returns -1 if the row is not a header row.

isShowGroupColumns

public boolean isShowGroupColumns()
Check if the group column contents are shown. This is true by default. If it's false, the group columns are hidden.

Specified by:
isShowGroupColumns in interface GroupedTable
Specified by:
isShowGroupColumns in class AbstractGroupedTable
Returns:
true if group columns are shown.

setShowGroupColumns

public void setShowGroupColumns(boolean grp)
Set the show group column contents option. If it's turned off, the grouped columns will have empty contents. If the ShowGroupColumns is set to false, the AddGroupHeader is automatically turned on.

Specified by:
setShowGroupColumns in interface GroupedTable
Specified by:
setShowGroupColumns in class AbstractGroupedTable
Parameters:
grp - show group column contents.

isAddGroupHeader

public boolean isAddGroupHeader()
Check if group header is to be added to the grouped data.

Specified by:
isAddGroupHeader in interface GroupedTable
Specified by:
isAddGroupHeader in class AbstractGroupedTable
Returns:
true if group header is added. Default to false.

setAddGroupHeader

public void setAddGroupHeader(boolean h)
Set whether group headers are added to the table. Group headers are separate rows containing only the group column value for the section.

Specified by:
setAddGroupHeader in interface GroupedTable
Specified by:
setAddGroupHeader in class AbstractGroupedTable

getGroupHeaderStyle

public int getGroupHeaderStyle()
Get the group header style.

Specified by:
getGroupHeaderStyle in interface GroupedTable
Specified by:
getGroupHeaderStyle in class AbstractGroupedTable
Returns:
group header style.

setGroupHeaderStyle

public void setGroupHeaderStyle(int headerS)
Set the group header style. This must be called before the refresh() is called.

Specified by:
setGroupHeaderStyle in interface GroupedTable
Specified by:
setGroupHeaderStyle in class AbstractGroupedTable
Parameters:
headerS - one of GROUP_HEADER_IN_PLACE, GROUP_HEADER_ROWS (default).

isSummaryRow

public boolean isSummaryRow(int row)
Check if a row is a summary row.

Specified by:
isSummaryRow in interface GroupedTable
Specified by:
isSummaryRow in interface RegionTable
Specified by:
isSummaryRow in class AbstractGroupedTable
Parameters:
row - the row number.
Returns:
true if the row is a summary row.

isSummaryCol

public boolean isSummaryCol(int col)
Check if a column is a summary column.

Specified by:
isSummaryCol in interface GroupedTable
Specified by:
isSummaryCol in class AbstractGroupedTable
Parameters:
col - the column number.
Returns:
true if the column is a summary column.

getSummaryLevel

public int getSummaryLevel(int row)
Get summary level of a row.

Specified by:
getSummaryLevel in interface GroupedTable
Specified by:
getSummaryLevel in interface RegionTable
Specified by:
getSummaryLevel in class AbstractGroupedTable
Parameters:
row - the specified row.
Returns:
summary level of the specified row.

hasGrandSummary

public boolean hasGrandSummary()
Check if this table contains grand summary row.

Specified by:
hasGrandSummary in interface GroupedTable
Specified by:
hasGrandSummary in class AbstractGroupedTable
Returns:
true if grand summary row exists.

getGroupFormula

public Formula getGroupFormula(int col)
Get the group formula of the column.

Specified by:
getGroupFormula in interface GroupedTable
Specified by:
getGroupFormula in class AbstractGroupedTable
Parameters:
col - column index in the grouped table.
Returns:
the group formula of column

getGrandFormula

public Formula getGrandFormula(int col)
Get the grand total formula of the column.

Specified by:
getGrandFormula in interface GroupedTable
Specified by:
getGrandFormula in class AbstractGroupedTable
Parameters:
col - column index in the grouped table.
Returns:
the grand total formula of column

getSortCols

public int[] getSortCols()
Get the columns that the table is sorted on.

Specified by:
getSortCols in interface SortedTable
Returns:
sort columns.

getOrders

public boolean[] getOrders()
Get the sorting order of the sorting columns.

Specified by:
getOrders in interface SortedTable

setComparer

public void setComparer(int col,
                        Comparer comp)
Set the comparer for a sorting column.

Specified by:
setComparer in interface SortedTable
Parameters:
col - table column index.
comp - comparer.

getComparer

public Comparer getComparer(int col)
Get the comparer for a sorting column.

Specified by:
getComparer in interface SortedTable
Parameters:
col - the specified table column index.

invalidate

public void invalidate()
Invalidate the table filter forcely, and the table filter will perform filtering calculation to validate itself.

Specified by:
invalidate in interface TableFilter

setDefaultResult

public void setDefaultResult(boolean def)
Set the default result option of this filter.

Parameters:
def - true to use the default value of a formula if no result, false to just return null.

isDefaultResult

public boolean isDefaultResult()
Get the default result option of this filter.

Returns:
true to use the default value of a formula if no result, false to just return null.

setMeasureNames

public void setMeasureNames(String[] names)
Set the measure names to table.

Specified by:
setMeasureNames in interface CalcFilter

getGrandFormulae

public Formula[] getGrandFormulae()
Get grand formulae.

Returns:
grand formulae

resetOrder

protected void resetOrder(List nodes0,
                          List nodes1,
                          int gidx)
Restore to original order if necessary.


evaluate

protected boolean evaluate(SummaryFilter.GroupNode node)
Evaluate the detail node.

Returns:
true if satisfies condition, false otherwise.

setGrandLabel

public void setGrandLabel(String label)
Set the grand total label. It is displayed in the first column on the grand total row. By default there is no label.

Parameters:
label - grand total label.

getGrandLabel

public String getGrandLabel()
Get the grand total row label.

Returns:
grand total label.

setSummaryLabel

public void setSummaryLabel(String fmt)
Set the summary row label. This label can be specified as a message format conforming to java.text.MessageFormat specification. The group column values are passed to the format as arguments that can be replaced in the format. For example, a label can be 'Total Sales for {0}', where {0} will be replaced by the group column value for the group.


getSummaryLabel

public String getSummaryLabel()
Get summary row label format.


setAggregateTopN

public void setAggregateTopN(boolean aggTopN)
Set the option if only aggregate topN rows.

Parameters:
aggTopN - true to aggregate only topN rows.

isAggregateTopN

public boolean isAggregateTopN()
Check if only aggregate topN rows.


setGroupOrder

public void setGroupOrder(int col,
                          SortOrder order)
Set the specific group order information.

Parameters:
col - group columns.
order - group order.

getGroupOrder

public SortOrder getGroupOrder(int col)
Get the specific group order information.

Parameters:
col - group columns.

setTopN

public void setTopN(int col,
                    int scol,
                    int topn,
                    boolean reverse)
Set topn info.

Parameters:
col - group col
scol - summary col
topn - topn value
reverse - true if should reverse

setTopN

public void setTopN(int col,
                    int scol,
                    int topn,
                    boolean reverse,
                    boolean kept,
                    boolean others)
Set topn info.

Parameters:
col - group col
scol - summary col
topn - topn value
reverse - true if should reverse
kept - true if keep the equal rows, false to discard them

setSortByValInfo

public void setSortByValInfo(int col,
                             int scol,
                             boolean reverse)
Set sort by value column info.

Parameters:
col - the index of column in the "cols" variable.
scol - the index of summary column in "sums" variable.
reverse - true if should reverse

setTopNAggregateInfo

public void setTopNAggregateInfo(int dcol,
                                 int n,
                                 boolean topn)
Set the global topN. The topN defined through this method is applied across all cells at table level (instead of within each group).

Parameters:
dcol - the aggregate column to compare values.
n - the top N.
topn - true to get top and false to get bottom values.

removeTopN

public void removeTopN(int col)
Remove topn info.

Parameters:
col - the specified group col

containsTopN

public boolean containsTopN(int col)
Check if contains topn info.

Parameters:
col - the group column, or -1 to check if any topN is defined.
Returns:
true if contains, false otherwise

removeSortByVal

public void removeSortByVal(int col)
Remove sort by column value info.

Parameters:
col - the specified group col

clearSortByVal

public void clearSortByVal()

getTable

public TableLens getTable()
Get the original table of this filter.

Specified by:
getTable in interface TableFilter

setTable

public void setTable(TableLens table)
Set the base table of this filter. The base table must be a sorted table.

Specified by:
setTable in interface TableFilter

getDescriptor

public TableDataDescriptor getDescriptor()
Get internal table data descriptor which contains table structural infos.

Specified by:
getDescriptor in interface TableLens
Specified by:
getDescriptor in interface XTable
Overrides:
getDescriptor in class AbstractTableLens
Returns:
table data descriptor.

getTrailerRowCount

public int getTrailerRowCount()
Return the number of rows on the bottom of the table to be treated as trailer rows.

Specified by:
getTrailerRowCount in interface XTable
Overrides:
getTrailerRowCount in class AbstractTableLens
Returns:
number of header rows.

getBaseRowIndex

public int getBaseRowIndex(int row)
Get the base table row index corresponding to the filtered table. If the row does not exist in the base table, it returns -1.

Specified by:
getBaseRowIndex in interface GroupedTable
Specified by:
getBaseRowIndex in interface TableFilter
Specified by:
getBaseRowIndex in class AbstractGroupedTable
Parameters:
row - row index in the filtered table.
Returns:
corresponding row index in the base table.

getBaseColIndex

public int getBaseColIndex(int col)
Get the base table column index corresponding to the filtered table. If the column does not exist in the base table, it returns -1.

Specified by:
getBaseColIndex in interface TableFilter
Parameters:
col - column index in the filtered table.
Returns:
corresponding column index in the bast table.

moreRows

public boolean moreRows(int row)
Check if there are more rows. The row index is the row that will be accessed. This method must block until the row is available, or return false if the row does not exist in the table. This method is used to iterate through the table, and allow partial table to be accessed in report processing.

Specified by:
moreRows in interface XTable
Overrides:
moreRows in class AbstractTableLens
Parameters:
row - row number.
Returns:
true if the row exists, or false if no more rows.

getRowCount

public int getRowCount()
Return the number of rows in the table. The number of rows includes the header rows.

Specified by:
getRowCount in interface XTable
Returns:
number of rows in table.

getColCount

public int getColCount()
Return the number of columns in the table. The number of columns includes the header columns.

Specified by:
getColCount in interface XTable
Returns:
number of columns in table.

getHeaderRowCount

public int getHeaderRowCount()
Return the number of rows on the top of the table to be treated as header rows.

Specified by:
getHeaderRowCount in interface XTable
Overrides:
getHeaderRowCount in class AbstractTableLens
Returns:
number of header rows.

getHeaderColCount

public int getHeaderColCount()
Return the number of columns on the left of the table to be treated as header columns.

Specified by:
getHeaderColCount in interface XTable
Overrides:
getHeaderColCount in class AbstractTableLens

getAlignment

public int getAlignment(int r,
                        int c)
Return the per cell alignment.

Specified by:
getAlignment in interface TableLens
Overrides:
getAlignment in class AbstractTableLens
Parameters:
r - row number.
c - column number.
Returns:
cell alignment.

getFont

public Font getFont(int r,
                    int c)
Return the per cell font. Return null to use default font.

Specified by:
getFont in interface TableLens
Overrides:
getFont in class AbstractTableLens
Parameters:
r - row number.
c - column number.
Returns:
font for the specified cell.

getObject

public Object getObject(int r,
                        int c)
Return the value at the specified cell.

Specified by:
getObject in interface XTable
Parameters:
r - row number.
c - column number.
Returns:
the value at the location.

setObject

public void setObject(int r,
                      int c,
                      Object v)
Set the cell value.

Specified by:
setObject in interface XTable
Overrides:
setObject in class AbstractTableLens
Parameters:
r - row number.
c - column number.
v - cell value.

isKeepHierarchy

public boolean isKeepHierarchy()
Check whether to keep group hierarchy.


dispose

public void dispose()
Dispose the table to clear up temporary resources.

Specified by:
dispose in interface XTable
Overrides:
dispose in class AbstractTableLens

getColumnIdentifier

public String getColumnIdentifier(int col)
Get the column identifier of a column.

Specified by:
getColumnIdentifier in interface XTable
Overrides:
getColumnIdentifier in class AbstractGroupedTable
Parameters:
col - the specified column index.
Returns:
the column indentifier of the column. The identifier might be different from the column name, for it may contain more locating information than the column name.

Copyright © 1996-2014 InetSoft Technology Corp. All Rights Reserved.