Class ReportTable

java.lang.Object
quadbase.reportdesigner.ReportElements.ReportElement
quadbase.reportdesigner.ReportElements.ReportTableElement
quadbase.reportdesigner.ReportElements.ReportTable
All Implemented Interfaces:
Serializable

public class ReportTable extends quadbase.reportdesigner.ReportElements.ReportTableElement implements Serializable
This class can be used to manipulate the look invalid input: '&' feel, as well as the content of a Report Table.
See Also:
  • Field Details

    • indexArray

      public int[] indexArray
    • rowsWithMissingChart

      public boolean[][] rowsWithMissingChart
    • aggrResult

      public Hashtable<String,Object> aggrResult
    • masterSection

      protected ReportSection masterSection
    • XMLTAG

      public static final String XMLTAG
      See Also:
    • reportSectionFactory

      protected quadbase.reportdesigner.report.AbstractReportSectionFactory reportSectionFactory
  • Constructor Details

    • ReportTable

      public ReportTable()
      Constructs a default ReportTable.
    • ReportTable

      public ReportTable(Locale locale, TimeZone timeZone)
      Constructs a ReportTable with specified locale and time zone.
    • ReportTable

      public ReportTable(ReportTable _tbl)
      Constructs a ReportTable from another ReportTable.
  • Method Details

    • getReportSectionFactory

      public quadbase.reportdesigner.report.AbstractReportSectionFactory getReportSectionFactory()
    • getReportSectionFactory

      public quadbase.reportdesigner.report.AbstractReportSectionFactory getReportSectionFactory(int version, boolean pack, quadbase.common.util.internal.FileInMemTable subFilesTable, String domainPath)
    • copy

      public void copy(ReportTable _tbl)
      For internal use only. Copies data invalid input: '&' properties from another ReportTable.
    • loadTable

      public void loadTable(ReportTable _tbl)
      For internal use only. This method is called when opening a report.
    • loadTable

      public void loadTable(ReportTable _tbl, int separatingIndex)
      For internal use only. This method is called when opening a report.
    • loadTable

      public void loadTable(ReportTable _tbl, boolean applyFormula)
      For internal use only. This method is called when opening a report.
    • loadTable

      public void loadTable(ReportTable _tbl, boolean applyFormula, boolean copyRpt)
      For internal use only. This method is called when opening a report.
    • loadTable

      public void loadTable(ReportTable _tbl, boolean applyFormula, int separatingIndex, boolean generateCrossTabGrandTotalColumn)
      For internal use only. This method is called when opening a report.
    • loadTable

      public void loadTable(ReportTable _tbl, boolean applyFormula, int separatingIndex, boolean generateCrossTabGrandTotalColumn, boolean copyRpt)
      For internal use only. This method is called when opening a report.
    • loadTable

      public void loadTable(ReportTable _tbl, boolean applyFormula, int separatingIndex, boolean generateCrossTabGrandTotalColumn, boolean copyRpt, boolean copyVisible)
      For internal use only. This method is called when opening a report.
    • loadTable

      public void loadTable(ReportTable _tbl, boolean applyFormula, int separatingIndex, boolean generateCrossTabGrandTotalColumn, boolean copyRpt, boolean copyVisible, ReportCell[] globalFormatTemplates, int reportType)
      For internal use only. This method is called when opening a report.
    • getFormatColumnIndex

      public int getFormatColumnIndex(quadbase.reportdesigner.report.MultiDimData mData, int index)
    • setAggregationTable

      public void setAggregationTable(boolean b)
      Sets whether the table is used for aggregation
    • isAggregationTable

      public boolean isAggregationTable()
      ReturnsSets whether the table is used for aggregation
    • getFirstColumnBreakColumn

      public quadbase.reportdesigner.ReportElements.ColumnBreakColumn getFirstColumnBreakColumn(int colBkValIdx)
      Looks through the columns of this table object and returns the index of the first column break column.
      Returns:
      the first column break
    • getFixedFieldColumnBreakColumnCount

      public int getFixedFieldColumnBreakColumnCount()
      Looks through the columns of this table object and returns the number of column break columns in the table.
      Returns:
      the number of column break columns
    • getFirstCBAggrColumn

      public quadbase.reportdesigner.ReportElements.CBAggrColumn getFirstCBAggrColumn(int level, int colBkValIdx)
      Looks through the columns of this table object and returns the first column break aggregation column.
      Returns:
      the first column break aggregation column
    • copyTemplate

      public void copyTemplate(ReportTable _tbl)
      For internal use only.
    • copyTemplate

      public void copyTemplate(ReportTable _tbl, boolean applyFormula)
      For internal use only. This method is called when applying a template.
    • copyTemplate

      public void copyTemplate(ReportTable _tbl, boolean applyFormula, boolean copyEmptySection)
      For internal use only. This method is called when applying a template.
    • copyTemplate

      public void copyTemplate(ReportTable _tbl, boolean applyFormula, boolean copyEmptySection, boolean copyGuideLine)
      internal use only
    • copyTemplate

      public void copyTemplate(ReportTable _tbl, boolean applyFormula, boolean copyEmptySection, boolean copyGuideLine, boolean isApplyTemplateForDHTMLViewer)
    • applyStyleForFixedFieldTable

      public void applyStyleForFixedFieldTable(ReportTable _tbl, boolean copyScripts)
    • getColumnsIgnoreRepeatColumn

      public Vector<ReportColumn> getColumnsIgnoreRepeatColumn()
      Looks through the columns of this table object and returns the number of columns in the table, ignoring column break and column break aggregation columns.
      Returns:
      the number of columns
    • deepCopy

      public void deepCopy(ReportTable _tbl)
      For internal use only.
    • positionCopy

      public void positionCopy(ReportTable _tbl)
      For internal use only. For resize to fit content
    • copyGuideLineElts

      public void copyGuideLineElts(quadbase.reportdesigner.report.Report _report)
      internal use only
    • copyAllGuideLineElts

      public void copyAllGuideLineElts(quadbase.reportdesigner.report.Report report, quadbase.reportdesigner.report.Report _report, ReportTable _tbl)
      internal use only
    • applyTemplate

      public void applyTemplate(ReportTable _tbl)
      For internal use only. This method is called when applying a template. Applies the look and feel from another ReportTable.
    • applySecurity

      public void applySecurity(ReportTable _tbl)
      For internal use only.
    • formatColumn

      public void formatColumn()
      For internal use only. Updates the columns to be of the new text, and dimensions.
    • formatColumn

      public void formatColumn(boolean isFixedFieldCrossTab)
      For internal use only. Updates the columns to be of the new text, and dimensions.
    • setID

      public void setID(String newID)
      internal use only
      Overrides:
      setID in class ReportElement
      Parameters:
      newID - the value of new id
    • customIDExists

      public boolean customIDExists(String id)
      For internal use only.
    • containsZIndex

      public boolean containsZIndex()
      For internal use only.
    • formulaReferenced

      public boolean formulaReferenced(Formula formula)
      internal use only
    • scriptReferenced

      public boolean scriptReferenced(Script script)
      internal use only
      Overrides:
      scriptReferenced in class ReportElement
    • scriptReferenced

      public boolean scriptReferenced(Script script, boolean checkTableOnly)
      internal use only
    • securityScriptReferenced

      public boolean securityScriptReferenced(Script script)
      internal use only
      Overrides:
      securityScriptReferenced in class ReportElement
    • securityScriptReferenced

      public boolean securityScriptReferenced(Script script, boolean checkTableOnly)
      internal use only
    • removeScriptReferenced

      public void removeScriptReferenced(Script script)
      internal use only
      Overrides:
      removeScriptReferenced in class ReportElement
    • removeScriptReferenced

      public void removeScriptReferenced(Script script, boolean checkTableOnly)
      internal use only
    • createFormulaObject

      public void createFormulaObject(quadbase.reportdesigner.report.Report report)
      internal use only
    • createFormulaObjectFromName

      public void createFormulaObjectFromName(quadbase.reportdesigner.report.Report report)
      internal use only
    • createScriptObject

      public void createScriptObject(Vector<Script> scripts)
      internal use only
      Overrides:
      createScriptObject in class ReportElement
    • createScriptObjectFromName

      public void createScriptObjectFromName(Vector<Script> scripts)
      For internal use only.
      Overrides:
      createScriptObjectFromName in class quadbase.reportdesigner.ReportElements.ReportTableElement
    • getColumnByID

      public ReportColumn getColumnByID(String id)
      For internal use only.
    • getData

      public ReportElement getData(String id)
      Gets a specific ReportElement in this ReportTable
      Parameters:
      id - reportElement id, or custom id
      Returns:
      ReportElement with id
    • getSecurityLevels

      public String[] getSecurityLevels()
      Gets all security level names in this table.
      Overrides:
      getSecurityLevels in class ReportElement
    • getSecuredScripts

      public String[] getSecuredScripts()
      For internal use only.
      Overrides:
      getSecuredScripts in class ReportElement
    • setSecurityLevelProperties

      public void setSecurityLevelProperties(String levelName, ReportElement level)
      For internal use only.
      Overrides:
      setSecurityLevelProperties in class ReportElement
    • setReportObjectForSubReports

      public void setReportObjectForSubReports(String filename, ISubReport rptobject)
      For internal use only. This method is used only with the API. This method performs overhead updating when the user calls getSubReport() from a SubReportObject.
    • updateSubReportFileName

      public void updateSubReportFileName(String oldfilename, String newfilename)
      For internal use only. This method is used only with the API. This method performs overhead updating when the user exports a QbReport with subreports to RPT or XML.
    • setHTMLParameters

      public void setHTMLParameters(String dirLocation, String url, String fileName)
      changing all the chart path location for ReportChartObject.
      Parameters:
      dirLocation - The physical directory of this object
      url - The URL path for this object
      fileName - The filename of this object
    • setChartPath

      public void setChartPath(String path)
      changing all the chart path location for ReportChartObject.
    • setSubReportPath

      public void setSubReportPath(String path)
      changing all the image path location for ReportImage.
    • setImagePath

      public void setImagePath(String path)
      changing all the image path location for ReportImage.
    • getMinWidth

      public double getMinWidth()
      Gets the minimum width this table must span.
    • getBodyMinWidth

      public double getBodyMinWidth()
      Gets the minimum width of the table only, excluding header and footer
    • getMinHeight

      public double getMinHeight()
      Gets the minimum height that this table must span
    • resize

      public void resize(double xratio, double yratio)
      Resizes the table by the specified ratio
      Overrides:
      resize in class ReportElement
    • setGridLineLink

      public void setGridLineLink(IReport report)
      internal use only
    • setWidth

      public void setWidth(double width)
      Sets the table width.
      Overrides:
      setWidth in class ReportElement
      Parameters:
      width - width of this element
    • findReportColumnIndex

      public int[] findReportColumnIndex(double cx, double cy, int row)
      Returns the column index containing the coordinate point (cx, cy) along a given row.
    • getFormattedRows

      public Hashtable<quadbase.reportdesigner.ReportElements.FormattedRowKey,quadbase.reportdesigner.ReportElements.FormattedRow> getFormattedRows()
      internal use only. Gets the formattedRows hashtable object used by this ReportTable.
    • setFormattedRows

      public void setFormattedRows(Hashtable<quadbase.reportdesigner.ReportElements.FormattedRowKey,quadbase.reportdesigner.ReportElements.FormattedRow> formattedRows)
      internal use only Sets the formattedRows hashtable object used by this ReportTable.
    • getFormattedRowsCount

      public int getFormattedRowsCount()
      internal use only Gets the length of the formattedRows hashtable object used.
    • addFormattedRow

      public void addFormattedRow(int rowIndex, quadbase.reportdesigner.ReportElements.FormattedRow formattedRow)
      internal use only Allow to add new FormattedRow object to formattedRows hashtable Columnar Report only
    • setFormattedRow

      public void setFormattedRow(int rowIndex, quadbase.reportdesigner.ReportElements.FormattedRow formattedRow)
      internal use only Replaces the formattedCell at the specified rowIndex with this new formattedCell. Columnar report only
    • addFormattedRow

      public void addFormattedRow(int row, Vector<Integer> tree, quadbase.reportdesigner.ReportElements.FormattedRow formattedRow)
      internal use only Allow to add new FormattedRow object to formattedRows hashtable Columnar Report only
    • addFormattedRow

      public void addFormattedRow(quadbase.reportdesigner.ReportElements.FormattedRowKey rowKey, quadbase.reportdesigner.ReportElements.FormattedRow formattedRow)
      internal use only Allow to add new FormattedRow object to formattedRows hashtable
    • setFormattedRow

      public void setFormattedRow(quadbase.reportdesigner.ReportElements.FormattedRowKey rowKey, quadbase.reportdesigner.ReportElements.FormattedRow formattedRow)
      internal use only Adds a formattedRow at the specified row index in the table tree.
      Parameters:
      formattedRow - the FormattedRow Object to be added.
      row - the index to the row to be inserted
      tree - a vector of integers specifying the Element on the table. A table can be thought of as a tree and the nodes are the elements in the table.
    • getFormattedRow

      public quadbase.reportdesigner.ReportElements.FormattedRow getFormattedRow(int rowIndex, Vector<Integer> tree)
      internal use only
    • getFormattedRow

      public quadbase.reportdesigner.ReportElements.FormattedRow getFormattedRow(quadbase.reportdesigner.ReportElements.FormattedRowKey key)
      internal use only Give the rowIndex, get the formattedRow object with this specified FormattedRowKey For All report types
    • isFormattedRow

      public boolean isFormattedRow(int rowIndex)
      internal use only Give the rowIndex, check whether this row is a formatted row For Columnar type report only @ return true if it is a formatted row, false otherwise
    • isFormattedRow

      public boolean isFormattedRow(quadbase.reportdesigner.ReportElements.FormattedRowKey key)
      internal use only Give the FormattedRowKey, check whether it is a formatted row
      Returns:
      true if it is a formatted row, false otherwise
    • removeFormattedRow

      public void removeFormattedRow(int rowIndex)
      internal use only Remove this formattedRow For Columnar type of report only
    • removeFormattedRow

      public void removeFormattedRow(quadbase.reportdesigner.ReportElements.FormattedRowKey key)
      internal use only Remove this row
    • removeAllFormattedRows

      public void removeAllFormattedRows()
      internal use only removes all FormattedRow Objects in this table
    • findRowElementIndex

      public int[] findRowElementIndex(double cx, double cy, int rowIndex)
      internal use only Returns the index of the specified FormattedRow with rowIndex.
    • getRowElement

      public ReportElement getRowElement(int rowIndex, int elementIndex)
      internal use only Returns the sub-report at the specific index
    • findRowElementIndex

      public int[] findRowElementIndex(double cx, double cy, quadbase.reportdesigner.ReportElements.FormattedRowKey key)
      internal use only Returns the index of the specified SubReportObject.
    • getRowElement

      public ReportElement getRowElement(quadbase.reportdesigner.ReportElements.FormattedRowKey key, int elementIndex)
      internal use only Returns the ReportElement of this FormattedRow with key at the specific index with
    • addReportCellToRow

      @Deprecated public void addReportCellToRow(int rowIndex, ReportCell cell)
      Deprecated.
      internal use only Adds a ReportCell into this FormattedRow with specified key index For columnar type report only.
    • addReportCellToRow

      public void addReportCellToRow(int rowIndex, Vector<Integer> tree, ReportCell cell)
      internal use only Adds a ReportCell into this FormattedRow with specified key index For All type of reports.
      Parameters:
      rowIndex - the index to the row to be inserted
      tree - a vector of integers specifying the Element on the table. A table can be thought of as a tree and the nodes are the elements in the table.
      cell - the ReportCell Object to be added.
    • addReportCellToRow

      public void addReportCellToRow(int rowIndex, int[] tree, ReportCell cell)
      internal use only Adds a ReportCell into this FormattedRow with specified key index For All type of reports.
      Parameters:
      rowIndex - the index to the row to be inserted
      tree - an array of integers specifying the Element on the table. A table can be thought of as a tree and the nodes are the elements in the table.
      cell - the ReportCell Object to be added.
    • setHeightOfRow

      public void setHeightOfRow(int rowIndex, double height)
      internal use only Set the height of this FormattedRow with specified key index For Columnar type report only
    • setHeightOfRow

      public void setHeightOfRow(int rowIndex, Vector<Integer> tree, double height)
      internal use only Set the height of this FormattedRow with specified key index For All type of reports
      Parameters:
      rowIndex - the index of the row
      tree - a vector of integers specifying the Element on the table. A table can be thought of as a tree and the nodes are the elements in the table.
      height - the new height
    • setHeightOfRow

      public void setHeightOfRow(int rowIndex, int[] tree, double height)
      internal use only Sets the height of this FormattedRow with specified key index For All type of reports.
      Parameters:
      rowIndex - the index of the row
      tree - an array of integers specifying the Element on the table. A table can be thought of as a tree and the nodes are the elements in the table.
      height - the new height
    • setHeightOfRow

      public void setHeightOfRow(quadbase.reportdesigner.ReportElements.FormattedRowKey key, double height)
      internal use only Sets the height of this FormattedRow with specified key index For All type of reports.
      Parameters:
      key - the key to the FormattedRow Object
      height - the new height
    • getAllReportImages

      public ReportImage[] getAllReportImages()
      Returns an array of all the ReportImage objects in this table For Internal Use Only
    • getSectionReportImages

      protected ReportImage[] getSectionReportImages()
      Returns an array of all the ReportImage objects in this table all sections including group header/footer. For Internal Use Only
    • getAllReportChartObjects

      public ReportChartObject[] getAllReportChartObjects()
      Returns an array of all the ReportChartObject objects in this table For Internal Use Only
    • getSectionReportChartObjects

      public ReportChartObject[] getSectionReportChartObjects()
      Returns an array of all the ReportChartObject objects in this table's header and footer For Internal Use Only
    • getReportChartObjects

      public ReportChartObject[] getReportChartObjects()
      Returns the ReportChartObject object array within this ReportTable.
    • getImageCount

      public int getImageCount()
      Returns the total number ReportImage objects present in this ReportTable.
    • getImage

      public ReportImage getImage(int idx)
      Returns the ReportImage object at the specified index, within this ReportTable.
    • getImage

      public ReportImage[] getImage()
      Returns the ReportImage object array within this ReportTable.
    • addImage

      public void addImage(ReportImage cht)
      Adds a ReportImage into this ReportTable.
    • addImage

      public void addImage(int idx, ReportImage cht)
      Adds a ReportImage into this ReportTable, at the specified index.
    • removeImage

      public void removeImage(int idx)
      Removes ReportImage at the specified index from this ReportTable.
    • indexOf

      public int indexOf(ReportImage cht)
      Returns the first instance of a chart within this ReportTable.
      Returns:
      The index of the chart. -1 if the chart is not present.
    • update

      public int update(ReportImage cht)
      For internal use only
    • removeImage

      public void removeImage(ReportImage cht)
      Removes the specified ReportImage from this ReportTable.
    • removeColumnWrap

      public void removeColumnWrap(ColumnWrap col)
      Removes the specified column wrapping from this report table.
    • findImageIndex

      public int[] findImageIndex(double cx, double cy)
      internal use only Returns the index of the specified ReportImage.
    • getSortedImages

      public ReportImage[] getSortedImages()
      Returns sorted array of reportImages by their x position
    • addSubReport

      public void addSubReport(SubReportObject sreport)
      Adds a sub-report into this ReportTable.
    • getSortedSubReports

      public SubReportObject[] getSortedSubReports()
      Returns an array of sorted sub-reports by their x position.
    • removeAllSubReports

      public void removeAllSubReports()
      Remove all sub-reports in this ReportTable
    • removeSubReportsReference

      public void removeSubReportsReference()
      internal use only
    • findSubReportIndex

      public int[] findSubReportIndex(double cx, double cy)
      Returns the index of the specified SubReportObject.
    • removeSubReport

      public void removeSubReport(SubReportObject cht)
      Removes the specified SubReportObject from this ReportTable.
    • removeSubReportWithFileName

      public void removeSubReportWithFileName(String filename)
      For internal use only. Remove any sub-reports with the specific file name.
    • removeSubReport

      public void removeSubReport(int index)
      Remove a sub-report from this ReportTable at the specific index
    • getSubReport

      public SubReportObject getSubReport(int index)
      Returns the sub-report at the specific index
    • getSubReportCount

      public int getSubReportCount()
      Gets the number of sub-reports stored in this table.
    • getAllSubReports

      public SubReportObject[] getAllSubReports()
      Returns an array of all the SubReport objects in this table For Internal Use Only
    • getSectionSubReports

      protected SubReportObject[] getSectionSubReports()
      Returns an array of all the SubReport objects in this table all sections including group header/footer. For Intenal Use Only
    • renameSubReportFileNames

      public void renameSubReportFileNames(String[] oldFileNames, String[] newFileNames)
      Update filenames of all SubReportObject objects. This is likely the result of a 'Save As' operation.
    • setSubReportParameterMap

      public void setSubReportParameterMap(String filename, String[] paramMap)
      For internal use only. Set sub-reports parameter map with the specific file name.
    • setChartParameterMap

      public void setChartParameterMap(String filename, String[] paramMap)
      For internal use only. Set charts parameter map with the specific file name.
    • setMasterSection

      public void setMasterSection(ReportSection mSection)
      Set the master section for a side-by-side master-details report
    • getMasterSection

      public ReportSection getMasterSection()
      Gets the master section
    • findMasterSection

      public ReportSection findMasterSection(double x, double y)
      internal use only
    • getColumns

      public Vector<ReportColumn> getColumns()
      Returns a vector containing ReportColumn objects in this table.
    • getColumnCount

      public int getColumnCount()
      Gets the number of columns in this table.
    • isValid

      public boolean isValid()
    • getColumn

      public ReportColumn getColumn(int idx)
      Returns the ReportColumn object at the specified index of this table. Index starts at 0.
    • hasColumn

      public boolean hasColumn(ReportElement elt)
      Returns whether this element has a column in this Table.
    • getColumnIndex

      public int getColumnIndex(ReportElement elt)
      Gets the column index of this element in the table
    • getColumn

      public ReportColumn[] getColumn()
      Returns the ReportColumn array of this table.
    • addColumn

      public void addColumn(ReportColumn col)
      For internal use only. Adds a ReportColumn to this table.
    • addColumn

      public void addColumn(int idx, ReportColumn col)
      For internal use only. Adds a ReportColumn to this table, at the specified index.
    • removeColumn

      public void removeColumn(int idx)
      For internal use only. Removes a ReportColumn from this table.
    • getVisibleColumns

      public boolean[] getVisibleColumns()
      Returns a boolean array which shows the status of individual column display.
    • getVisibleColumnCount

      public int getVisibleColumnCount()
      Returns the number of visible columns in this table.
    • getInvisibleColumnList

      public ReportColumn[] getInvisibleColumnList()
      Returns an array of ReportColumn Objects that are invisible in this table.
    • getVisibleColumnList

      public ReportColumn[] getVisibleColumnList()
      Returns an array of ReportColumn Objects that are visible in this table.
    • getSortedVisibleColumns

      public ReportColumn[] getSortedVisibleColumns()
      Returns an array of visible ReportColumn objects sorted by the individual x positions.
    • getXSortedVisibleElements

      public ReportElement[] getXSortedVisibleElements()
      Returns an array of visible ReportElement objects sorted by the individual x positions. This method sorts columns as well as images.
    • getYSortedVisibleElements

      public ReportElement[] getYSortedVisibleElements()
      Returns an array of visible ReportElement objects sorted by the individual y positions. This method sorts columns as well as images.
    • getZSortedVisibleElements

      public ReportElement[] getZSortedVisibleElements()
      Returns an array of visible ReportElement objects sorted by the individual z positions. This method sorts columns as well as images.
    • getAllColors

      public Vector<Color> getAllColors(Vector<Color> colors)
      internal use only
      Overrides:
      getAllColors in class ReportElement
    • getTableElementsNoGL

      public ReportElement[] getTableElementsNoGL()
      internal use only
    • getTableElementsNoGLWithSecuredMode

      public ReportElement[] getTableElementsNoGLWithSecuredMode()
      internal use only
    • getAllTableElements

      public ReportElement[] getAllTableElements()
      Gets all elements in the table, including charts and other non-report elements.
    • getTableElements

      public ReportElement[] getTableElements()
      Gets all the report elements(columns and images) in the table
    • getTableElements

      public ReportElement[] getTableElements(boolean applyToVisibleColOnly)
    • getTableElements

      public ReportElement[] getTableElements(boolean applyToVisibleColOnly, boolean sortColumns)
    • getTableElements

      public ReportElement[] getTableElements(int rowId)
      Gets the report elements if it is a formatted row
    • getTableElements

      public ReportElement[] getTableElements(quadbase.reportdesigner.ReportElements.FormattedRowKey key)
      internal use only
    • hasVisibleElements

      public boolean hasVisibleElements()
      returns whether this table has any visible elements
    • setDrillDownData

      public void setDrillDownData(int columnIndex, Object data)
      Sets the Drill Down data associated with this column index to be the specified data When user clicks on the column at columnIndex, it brings them to a report of the data.
    • shift

      public void shift(ReportElement elt, boolean isHorizontal, double change)
      shift after resizing one report element
      Parameters:
      elt - the element to be shifted
      isHorizontal - is this a horizontal shift or not
      change - the shift amount, positive means to the right (horizontal==true) or bottom (horizontal==false).
    • shiftOnMove

      public void shiftOnMove(ReportElement elt, boolean isHorizontal, double change)
      Shifts the element by the CHANGE amount and moves other surrounding elements if needed
      Parameters:
      elt - the element to be shifted
      isHorizontal - is this a horizontal shift or not
      change - the shift amount, positive means to the right (horizontal==true) or bottom (horizontal==false).
    • resizeForCrossTabFixedField

      public void resizeForCrossTabFixedField(Vector<ReportElement> resizeItems, double ratioW, double ratioH, double startXD, double startYD)
      Shifts a group of elements by the CHANGE amount and moves other surrounding elements if needed in a cross tab fixed field
      Parameters:
      resizeItems - the element to be shifted
      ratioW - The ratio toshift the width
      ratioH - The ratio toshift the height
      startXD - The starting X dimension
      startYD - The starting Y dimension
    • shiftObjectsOnMove

      public void shiftObjectsOnMove(ReportElement elt, boolean isHorizontal, double change)
      internal use only
    • getColumnsForHTML

      public Vector<ReportElement[]> getColumnsForHTML()
      internal use only
    • getRowCount

      public int getRowCount()
      Gets the number of rows in the ReportTable.
    • getHeader

      public ReportSection getHeader()
      Returns the table header.
    • setHeader

      public void setHeader(ReportSection header)
      Sets the table header.
    • getFooter

      public ReportSection getFooter()
      Returns the table footer.
    • setFooter

      public void setFooter(ReportSection cells)
      Sets the table footer.
    • countRowBreakHeader

      public int countRowBreakHeader()
      For Summary-Break, CrossTab invalid input: '&' Master-Details Tables. Returns the number of levels for the table headers.
    • getRowBreakHeader

      public ReportSection getRowBreakHeader(int breakLevel)
      For Summary-Break, CrossTab invalid input: '&' Master-Details Tables. Returns the table header at the specified level.
    • countRowBreakFooter

      public int countRowBreakFooter()
      For Summary-Break, CrossTab invalid input: '&' Master-Details Tables. Returns the number of levels for the table footers.
    • getRowBreakFooter

      public ReportSection getRowBreakFooter(int breakLevel)
      For Summary-Break, CrossTab invalid input: '&' Master-Details Tables. Returns the table footer at the specified level.
    • getStartOfColumnBreakColumn

      public int getStartOfColumnBreakColumn()
      For CrossTab Tables only. Returns the column index of the first column within the column break.
    • getEndOfColumnBreakColumn

      public int getEndOfColumnBreakColumn()
      For CrossTab Tables only. Returns the column index of the last column within the column break.
    • getColumnBreakColumnCount

      public int getColumnBreakColumnCount()
      For CrossTab Tables only. Returns the number of columns within the column break.
    • setBorderThickness

      public void setBorderThickness(int border)
      Sets the border thickness in pixels.
      Overrides:
      setBorderThickness in class ReportElement
    • setBorder

      @Deprecated public void setBorder(int border)
      Deprecated.
      Overrides:
      setBorder in class ReportElement
    • setBorderColor

      public void setBorderColor(Color color)
      Sets the border color.
      Overrides:
      setBorderColor in class ReportElement
      Parameters:
      color - new border color of this element
    • formatTable

      public void formatTable() throws Exception
      For internal use only.
      Throws:
      Exception
    • getValue

      public Object getValue(ReportCell cell, int page, int section, int totalPages, int totalSections, quadbase.reportdesigner.report.Report r)
      For internal use only.
    • getValue

      public Object getValue(ReportCell cell, int page, int section, int totalPages, int totalSections, quadbase.reportdesigner.report.Report r, Vector preAggCol, Vector resultCol)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportCell cell, quadbase.reportdesigner.report.Report r)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportCell cell, quadbase.reportdesigner.report.Report r, boolean designMode)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportCell cell, int page, int section, int totalPages, int totalSections, quadbase.reportdesigner.report.Report r)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportCell cell, int page, int section, int totalPages, int totalSections, quadbase.reportdesigner.report.Report r, boolean designMode)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportCell cell, int index, int page, int section, int totalPages, int totalSections, quadbase.reportdesigner.report.Report r, boolean designMode)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportCell cell, int index, int page, int section, int totalPages, int totalSections, quadbase.reportdesigner.report.Report r, boolean designMode, Vector preAggCol, Vector resultCol)
      For internal use only.
      Parameters:
      index - : rowindex of this cell, added for scripting on image url.
    • formatCell

      public ReportCell formatCell(ReportColumn col, int idx, quadbase.reportdesigner.report.Report r)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportColumn col, int idx, quadbase.reportdesigner.report.Report r, boolean designMode)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportColumn col, int dataidx, int displayidx, quadbase.reportdesigner.report.Report r)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportColumn col, int dataidx, int displayidx, quadbase.reportdesigner.report.Report r, boolean designMode)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportColumn col, int dataidx, int page, int section, int totalPages, int totalSections, quadbase.reportdesigner.report.Report r)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportColumn col, int dataidx, int page, int section, int totalPages, int totalSections, quadbase.reportdesigner.report.Report r, boolean designMode)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportColumn col, int dataidx, int page, int section, int totalPages, int totalSections, int displayidx, quadbase.reportdesigner.report.Report r)
      For internal use only.
    • formatCell

      public ReportCell formatCell(ReportColumn col, int dataidx, int page, int section, int totalPages, int totalSections, int displayidx, quadbase.reportdesigner.report.Report r, boolean designMode)
      For internal use only.
    • write

      public void write(DataOutput out) throws IOException
      For internal use only.
      Overrides:
      write in class quadbase.reportdesigner.ReportElements.ReportTableElement
      Throws:
      IOException
    • write

      public void write(DataOutput out, boolean pack) throws IOException
      For internal use only.
      Throws:
      IOException
    • writeXML

      public void writeXML(Writer out, boolean writeElementTag) throws IOException
      For internal use only.
      Overrides:
      writeXML in class quadbase.reportdesigner.ReportElements.ReportTableElement
      Throws:
      IOException
    • createTable

      public static ReportTable createTable(Node node, int version) throws Exception
      For internal use only.
      Throws:
      Exception
    • readXML

      public void readXML(Node node, int version) throws Exception
      For internal use only.
      Overrides:
      readXML in class quadbase.reportdesigner.ReportElements.ReportTableElement
      Throws:
      Exception
    • createTable

      public static ReportTable createTable(DataInput in, int version) throws Exception
      For internal use only.
      Throws:
      Exception
    • createTable

      public static ReportTable createTable(DataInput in, int version, boolean pack, boolean fromReportDesigner, quadbase.common.util.internal.FileInMemTable subFilesTable, String domainPath) throws Exception
      For internal use only.
      Throws:
      Exception
    • read

      public void read(DataInput in, int version) throws Exception
      For internal use only.
      Overrides:
      read in class quadbase.reportdesigner.ReportElements.ReportTableElement
      Throws:
      Exception
    • read

      public void read(DataInput in, int version, boolean pack, boolean fromReportDesigner, quadbase.common.util.internal.FileInMemTable subFilesTable, String domainPath) throws Exception
      For internal use only.
      Throws:
      Exception
    • createHeaderAndFooter

      protected void createHeaderAndFooter(DataInput in, int version, boolean pack, boolean fromReportDesigner, quadbase.common.util.internal.FileInMemTable subFilesTable, String domainPath) throws Exception
      Throws:
      Exception
    • writeSTL

      public void writeSTL(DataOutput out) throws Exception
      Exports the style information to a DataOutput object to be written to a .STL stylesheet
      Throws:
      Exception
    • readSTL

      public void readSTL(DataInput in, int version) throws Exception
      Inports style information from a DataOutput object made from a .STL stylesheet
      Throws:
      Exception
    • findElementstoRight

      public static ReportElement[] findElementstoRight(ReportElement r, ReportTable elt)
      internal use only
    • findElementstoLeft

      public static ReportElement[] findElementstoLeft(ReportElement r, ReportTable elt)
      internal use only
    • findElementsAbove

      public static ReportElement[] findElementsAbove(ReportElement r, ReportTable elt)
      internal use only
    • resizeVerticallyAndShift

      public static void resizeVerticallyAndShift(ReportElement r, ReportTable elt, double heightChange)
      Resizes the ReportElement objects in this elt ReportTable by making the height Change. Shifts the table if necessary.
    • createIndexArray

      public void createIndexArray(int colIndex, boolean isAsc, quadbase.reportdesigner.report.Report report, int level)
      internal use only
    • createIndexArray

      public void createIndexArray(int[] colIndex, int idx, boolean[] isAsc, quadbase.reportdesigner.report.Report report, int level)
      internal use only multi column sorting int[] colIndex must be in the same order as colInfo
    • buildIndexTree

      public void buildIndexTree(int[] colIndex, int idx, boolean[] isAsc, quadbase.reportdesigner.report.Report report, quadbase.reportdesigner.report.IndexNode indexNode)
      For internal use only.
    • buildIndexArrayFromIndexTree

      public void buildIndexArrayFromIndexTree(quadbase.reportdesigner.report.IndexNode indexNode)
      For internal use only.
    • copySortingInfo

      public void copySortingInfo(ReportTable _tbl, int level, boolean isMasterDetails, quadbase.reportdesigner.report.Report report)
      internal use only
    • addRTFObject

      public void addRTFObject(ReportRTFObject rObj)
      Adds an RTF object to this ReportTable
    • getSortedRTFObjects

      public ReportRTFObject[] getSortedRTFObjects()
      Returns an array of sorted RTF objects by their x position.
    • removeRTFObject

      public void removeRTFObject(ReportRTFObject cht)
      Removes the specified SubReportObject from this ReportTable.
    • removeRTFObject

      public void removeRTFObject(int index)
      Remove a sub-report from this ReportTable at the specific index
    • getRTFObject

      public ReportRTFObject getRTFObject(int index)
      Returns the sub-report at the specific index
    • getRTFObjectCount

      public int getRTFObjectCount()
      Gets the number of RTF Objects in this table.
    • findRTFObjectIndex

      public int[] findRTFObjectIndex(double cx, double cy)
      Returns the index of the specified SubReportObject.
    • setTableNumber

      public void setTableNumber(int number)
      internal use only
    • getTableNumber

      public int getTableNumber()
      internal use only
    • setSectionStyle

      public void setSectionStyle(ReportColumn column)
      internal use only
    • getSectionStyle

      public ReportColumn getSectionStyle()
      internal use only
    • hasSectionStyle

      public boolean hasSectionStyle()
      internal use only
    • isSectionStyle

      public boolean isSectionStyle(ReportColumn column)
      Returns whether the sectionStyle of this ReportTable matches the specified column
    • recalculateFormulaColumnValue

      public void recalculateFormulaColumnValue(quadbase.reportdesigner.report.Report report)
      internal use only
    • adjustColumnXPos

      public void adjustColumnXPos(ReportTable _tbl, int separatingIndex, quadbase.reportdesigner.report.Report report)
      After apply global format, the cells' width may change, adjust cells' x position according to the width.
    • applyGlobalFormatToColumns

      public void applyGlobalFormatToColumns(ReportColumn[] formats)
      internal use only
    • deleteChart

      public void deleteChart(int rowIndex, ReportElement chart)
      internal use only
    • drawChart

      public boolean drawChart(int rowIndex, int chartIndex)
      internal use only
    • setSnapToGrid

      public void setSnapToGrid(boolean snapToGrid, double stepSize, double cmStepSize)
      internal use only
      Overrides:
      setSnapToGrid in class ReportElement
    • setSnapToGrid

      public void setSnapToGrid(boolean snapToGrid, boolean metric, double stepSize)
      internal use only
      Overrides:
      setSnapToGrid in class ReportElement
    • getAggrValue

      public Object getAggrValue(String key)
      internal use only
    • addAggrValue

      public void addAggrValue(String key, Object object)
      internal use only
    • hasSubTable

      public boolean hasSubTable(ReportTable table)
      Returns whether this table has a sub-table
    • getParentTableWithCell

      public ReportTable getParentTableWithCell(String id, ReportTable table)
      internal use only
    • getParentTable

      public ReportTable getParentTable(ReportTable table)
      internal use only
    • getColumnIndex

      public int getColumnIndex(ReportColumn rpc)
      internal use only
    • getSubReportForHTML

      public Vector<ReportElement[]> getSubReportForHTML()
      For internal use only.
    • renameSecurityLevel

      public void renameSecurityLevel(String oldName, String newName)
      For internal use only.
      Overrides:
      renameSecurityLevel in class ReportElement
    • getChartsNoGuideLine

      public Vector getChartsNoGuideLine()
      For internal use only.
    • hasResizeToFitElement

      public boolean hasResizeToFitElement()
      Returns:
      true iff at least one cell within this table has resize to fit content turned on.
    • hasDualColorOnColumnChange

      public boolean hasDualColorOnColumnChange()
      internal use only
    • setLocale

      public void setLocale(Locale l)
      For internal use only
    • getFirstColumnValue

      public Object getFirstColumnValue(int index)
      Returns an object containing the first value in the specified column.
    • getFirstColumnScriptedValue

      public Object getFirstColumnScriptedValue(int index)
      Returns an object containing the first value in the specified column.
    • setPackedSubReportByteArray

      public void setPackedSubReportByteArray(quadbase.common.util.internal.FileInMemTable subFilesTable, Vector vec)
    • getColumnWidths

      public double getColumnWidths()
    • loadStyle

      public void loadStyle(quadbase.reportdesigner.report.Report report, ReportTable table)
    • applyStyle

      public void applyStyle(ReportTable table)
    • applyStyle

      public void applyStyle(Vector setting, ReportTable table)
    • contains

      public boolean contains(ReportElement e)
    • deleteSubReportColData

      public void deleteSubReportColData()
    • setPrintOnNewPageRowCount

      public void setPrintOnNewPageRowCount(int i)
      Specifies number of table data rows to be printed on each page For this to take affect, must setPrintOnNewPage to true first
    • getPrintOnNewPageRowCount

      public int getPrintOnNewPageRowCount()
    • isPrintOnNewPage

      public boolean isPrintOnNewPage(int rowCount)
    • cleanup

      public void cleanup()
    • finalize

      protected void finalize() throws Throwable
      Overrides:
      finalize in class Object
      Throws:
      Throwable
    • releaseDiskBuffer

      public void releaseDiskBuffer()
    • equals

      public boolean equals(ReportTable reportTable)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object