Style Intelligence v12.0

inetsoft.report.lens
Class JoinTableLens

java.lang.Object
  extended by inetsoft.report.lens.AbstractTableLens
      extended by inetsoft.report.lens.JoinTableLens
All Implemented Interfaces:
BinaryTableFilter, inetsoft.report.internal.table.CancellableTableLens, StyleConstants, TableLens, XConstants, XTable, Serializable, Cloneable

public class JoinTableLens
extends AbstractTableLens
implements inetsoft.report.internal.table.CancellableTableLens, BinaryTableFilter

A JoinTableLens provides the results of a join between two other TableLens objects.

See Also:
Serialized Form

Field Summary
static int FULL_OUTER_JOIN
          Constant specifying that a full outer join should be used.
static int INNER_JOIN
          Constant specifying that an inner join should be used.
static int LEFT_OUTER_JOIN
          Constant specifying that a left outer join should be used.
static int RIGHT_OUTER_JOIN
          Constant specifying that a right outer join should be used.
 
Fields inherited from class inetsoft.report.lens.AbstractTableLens
descriptor, isLeftAlign
 
Fields inherited from interface inetsoft.report.TableLens
BREAK_BORDER
 
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, 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
 
Constructor Summary
JoinTableLens(TableLens leftTable, TableLens rightTable, int[] leftCols, int[] rightCols)
          Creates a new instance of JoinTableLens using an inner join.
JoinTableLens(TableLens leftTable, TableLens rightTable, int[] leftCols, int[] rightCols, int joinType)
          Creates a new instance of JoinTableLens.
JoinTableLens(TableLens leftTable, TableLens rightTable, int[] leftCols, int[] rightCols, int joinType, boolean includeRightJoinCols)
          Creates a new instance of JoinTableLens.
 
Method Summary
 void cancel()
          Cancel the lens and running queries if supported.
 void dispose()
          Dispose the join table lens.
 boolean getBoolean(int r, int c)
          Get the boolean value in one row.
 byte getByte(int r, int c)
          Get the byte value in one row.
 int getColCount()
          Return the number of rows in the table.
 TableDataDescriptor getDescriptor()
          Get internal table data descriptor which contains table structural infos.
 double getDouble(int r, int c)
          Get the double value in one row.
 float getFloat(int r, int c)
          Get the float value in one row.
 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.
 int getInt(int r, int c)
          Get the int value in one row.
 TableLens getLeftTable()
          Get the left base table lens.
 long getLong(int r, int c)
          Get the long value in one row.
 Object getObject(int r, int c)
          Return the value at the specified cell.
 TableLens getRightTable()
          Get the right base table lens.
 int getRowCount()
          Return the number of columns in the table.
 short getShort(int r, int c)
          Get the short value in one row.
 int getTrailerColCount()
          Return the number of columns on the right of the table to be treated as trailer columns.
 int getTrailerRowCount()
          Return the number of rows on the bottom of the table to be treated as trailer rows.
 void invalidate()
          Invalidate the table filter forcely, and the table filter will perform filtering calculation to validate itself.
 boolean isCancelled()
          Check the TableLens to see if it is cancelled.
 boolean isNull(int r, int c)
          Check if the value at one cell is null.
 boolean isPrimitive(int col)
          Check if is primitive.
 boolean moreRows(int row)
          Check if there are more rows.
 void setObject(int r, int c, Object v)
          Set the cell value.
 
Methods inherited from class inetsoft.report.lens.AbstractTableLens
addChangeListener, clone, containsDrill, containsFormat, findColumnByIdentifier, fireChangeEvent, getAlignment, getBackground, getColBorder, getColBorderColor, getColType, getColumnIdentifier, getColWidth, getDefaultFormat, getFont, getForeground, getInsets, getRowBorder, getRowBorderColor, getRowHeight, getSpan, getXDrillInfo, isLineWrap, 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, getAlignment, getBackground, getColBorder, getColBorderColor, getColWidth, getDefaultFormat, getFont, getForeground, getInsets, getRowBorder, getRowBorderColor, getRowHeight, getSpan, getXDrillInfo, isLineWrap, removeChangeListener
 
Methods inherited from interface inetsoft.uql.XTable
getColType, getColumnIdentifier, setColumnIdentifier
 

Field Detail

INNER_JOIN

public static final int INNER_JOIN
Constant specifying that an inner join should be used.

See Also:
Constant Field Values

LEFT_OUTER_JOIN

public static final int LEFT_OUTER_JOIN
Constant specifying that a left outer join should be used. In this case, all rows from the left-hand table will be included and only those rows from the right-hand table that have matching join columns will be included.

See Also:
Constant Field Values

RIGHT_OUTER_JOIN

public static final int RIGHT_OUTER_JOIN
Constant specifying that a right outer join should be used. In this case, all rows from the right-hand table will be included and only those rows from the left-hand table that have matching join columns will be included.

See Also:
Constant Field Values

FULL_OUTER_JOIN

public static final int FULL_OUTER_JOIN
Constant specifying that a full outer join should be used. In this case, all rows from the left-hand and right-hand table will be included even no matching join columns.

See Also:
Constant Field Values
Constructor Detail

JoinTableLens

public JoinTableLens(TableLens leftTable,
                     TableLens rightTable,
                     int[] leftCols,
                     int[] rightCols)
Creates a new instance of JoinTableLens using an inner join. The join columns of the right-hand table will not be included in the joined table.

Parameters:
leftTable - the left-hand table to join.
rightTable - the right-hand table to join.
leftCols - the indices of the join columns in the left-hand table.
rightCols - the indices of the join columns in the right-hand table.

JoinTableLens

public JoinTableLens(TableLens leftTable,
                     TableLens rightTable,
                     int[] leftCols,
                     int[] rightCols,
                     int joinType)
Creates a new instance of JoinTableLens. The join columns of the right-hand table will not be included in the joined table.

Parameters:
leftTable - the left-hand table to join.
rightTable - the right-hand table to join.
leftCols - the indices of the join columns in the left-hand table.
rightCols - the indices of the join columns in the right-hand table.
joinType - the type of join to use.

JoinTableLens

public JoinTableLens(TableLens leftTable,
                     TableLens rightTable,
                     int[] leftCols,
                     int[] rightCols,
                     int joinType,
                     boolean includeRightJoinCols)
Creates a new instance of JoinTableLens.

Parameters:
leftTable - the left-hand table to join.
rightTable - the right-hand table to join.
leftCols - the indices of the join columns in the left-hand table.
rightCols - the indices of the join columns in the right-hand table.
joinType - the type of join to use.
includeRightJoinCols - true if the join columns from the right-hand table should be included in the joined table.
Method Detail

getLeftTable

public TableLens getLeftTable()
Get the left base table lens.

Specified by:
getLeftTable in interface BinaryTableFilter
Returns:
the left base table lens.

getRightTable

public TableLens getRightTable()
Get the right base table lens.

Specified by:
getRightTable in interface BinaryTableFilter
Returns:
the right base table lens.

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.

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 BinaryTableFilter

cancel

public void cancel()
Cancel the lens and running queries if supported.

Specified by:
cancel in interface inetsoft.report.internal.table.CancellableTableLens

isCancelled

public boolean isCancelled()
Check the TableLens to see if it is cancelled.

Specified by:
isCancelled in interface inetsoft.report.internal.table.CancellableTableLens

getColCount

public int getColCount()
Return the number of rows in the table. The number of rows includes the header rows. If the table is loading in background and loading is not done, return the negative number of loaded rows minus 1.

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

isNull

public final boolean isNull(int r,
                            int c)
Check if the value at one cell is null.

Specified by:
isNull in interface XTable
Overrides:
isNull in class AbstractTableLens
Parameters:
r - the specified row index.
c - column number.
Returns:
true if null, false otherwise.

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.

getDouble

public final double getDouble(int r,
                              int c)
Get the double value in one row.

Specified by:
getDouble in interface XTable
Overrides:
getDouble in class AbstractTableLens
Parameters:
r - the specified row index.
c - column number.
Returns:
the double value in the specified row.

getFloat

public final float getFloat(int r,
                            int c)
Get the float value in one row.

Specified by:
getFloat in interface XTable
Overrides:
getFloat in class AbstractTableLens
Parameters:
r - the specified row index.
c - column number.
Returns:
the float value in the specified row.

getLong

public final long getLong(int r,
                          int c)
Get the long value in one row.

Specified by:
getLong in interface XTable
Overrides:
getLong in class AbstractTableLens
Parameters:
r - the specified row index.
c - column number.
Returns:
the long value in the specified row.

getInt

public final int getInt(int r,
                        int c)
Get the int value in one row.

Specified by:
getInt in interface XTable
Overrides:
getInt in class AbstractTableLens
Parameters:
r - the specified row index.
c - column number.
Returns:
the int value in the specified row.

getShort

public final short getShort(int r,
                            int c)
Get the short value in one row.

Specified by:
getShort in interface XTable
Overrides:
getShort in class AbstractTableLens
Parameters:
r - the specified row index.
c - column number.
Returns:
the short value in the specified row.

getByte

public final byte getByte(int r,
                          int c)
Get the byte value in one row.

Specified by:
getByte in interface XTable
Overrides:
getByte in class AbstractTableLens
Parameters:
r - the specified row index.
c - column number.
Returns:
the byte value in the specified row.

getBoolean

public final boolean getBoolean(int r,
                                int c)
Get the boolean value in one row.

Specified by:
getBoolean in interface XTable
Overrides:
getBoolean in class AbstractTableLens
Parameters:
r - the specified row index.
c - column number.
Returns:
the boolean value in the specified row.

isPrimitive

public final boolean isPrimitive(int col)
Check if is primitive.

Specified by:
isPrimitive in interface XTable
Overrides:
isPrimitive in class AbstractTableLens
Returns:
true if is primitive, false otherwise.

getRowCount

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

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

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

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. Default is 1.

getTrailerColCount

public int getTrailerColCount()
Return the number of columns on the right of the table to be treated as trailer columns.

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

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.

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. If EOT is passed in, this method should wait until the table is fully loaded.
Returns:
true if the row exists, or false if no more rows.

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.

dispose

public void dispose()
Dispose the join table lens.

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

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