Class PrintData

java.lang.Object
org.compiere.print.PrintData
All Implemented Interfaces:
Serializable

public class PrintData extends Object implements Serializable
Print Data Structure.
Created by DataEngine.
A Structure has rows, which contain elements.
Elements can be end nodes (PrintDataElements) or data structures (PrintData).
The row data is sparse - i.e. null if not existing.
A Structure has optional meta info about content (PrintDataColumn).
Version:
$Id: PrintData.java,v 1.3 2006/07/30 00:53:02 jjanke Exp $
Author:
Jorg Janke
See Also:
  • Field Details

  • Constructor Details

    • PrintData

      public PrintData(Properties ctx, String name)
      Parameters:
      ctx - context
      name - data element name
    • PrintData

      public PrintData(Properties ctx, String name, ArrayList<Serializable> nodes)
      Parameters:
      ctx - context
      name - data element name
      nodes - ArrayList with nodes (content not checked)
  • Method Details

    • getCtx

      public Properties getCtx()
      Get Context
      Returns:
      context
    • getName

      public String getName()
      Get Name
      Returns:
      name
    • setColumnInfo

      public void setColumnInfo(PrintDataColumn[] newInfo)
      Set optional Column Info
      Parameters:
      newInfo - Column Info
    • getColumnInfo

      public PrintDataColumn[] getColumnInfo()
      Get optional Column Info
      Returns:
      Column Info
    • setSQL

      public void setSQL(String sql)
      Set SQL (optional)
      Parameters:
      sql - SQL
    • getSQL

      public String getSQL()
      Get optional SQL
      Returns:
      SQL
    • setTableName

      public void setTableName(String TableName)
      Set TableName (optional)
      Parameters:
      TableName - TableName
    • getTableName

      public String getTableName()
      Get optional TableName
      Returns:
      TableName
    • toString

      public String toString()
      String representation
      Overrides:
      toString in class Object
      Returns:
      info
    • isEmpty

      public boolean isEmpty()
      Is with 0 rows or 0 nodes/columns
      Returns:
      true if 0 rows or 0 nodes/columns
    • getNodeCount

      public int getNodeCount()
      Get Number of nodes/columns in row
      Returns:
      number of nodes/columns in row
    • addRow

      public void addRow(boolean functionRow, int levelNo)
      Add data row
      Parameters:
      functionRow -
      levelNo -
    • addRow

      public void addRow(boolean functionRow, int levelNo, List<Serializable> nodes)
      Add Data Row
      Parameters:
      functionRow - true if function row
      levelNo - Line detail Level Number 0=Normal
    • setRowIndex

      public boolean setRowIndex(int row)
      Set Row Index
      Parameters:
      row - row index
      Returns:
      true if success
    • setRowNext

      public boolean setRowNext()
      Set Row Index to next
      Returns:
      true if success
    • getRowCount

      public int getRowCount()
      Get Row Count
      Returns:
      row count
    • getRowCount

      public int getRowCount(boolean includeFunctionRows)
      Get row count
      Parameters:
      includeFunctionRows -
      Returns:
      row count
    • getRowIndex

      public int getRowIndex()
      Get Current Row Index
      Returns:
      row index
    • isFunctionRow

      public boolean isFunctionRow(int row)
      Is the Row a Function Row
      Parameters:
      row - row no
      Returns:
      true if function row
    • isFunctionRow

      public boolean isFunctionRow()
      Is current Row a Function Row
      Returns:
      true if current row is a function row
    • isPageBreak

      public boolean isPageBreak()
      Is current Row a page break row
      Returns:
      true if current row is a page break row
    • setHasLevelNo

      public void setHasLevelNo(boolean hasLevelNo)
      Set PrintData has Level No
      Parameters:
      hasLevelNo - true if sql includes LevelNo
    • hasLevelNo

      public boolean hasLevelNo()
      Is PrintData has Level No
      Returns:
      true if sql includes LevelNo
    • getLineLevelNo

      public int getLineLevelNo()
      Get Line Level Number for current row
      Returns:
      line level no, 0 = default
    • addNode

      public void addNode(PrintData parent)
      Add parent node to current row
      Parameters:
      parent - parent
    • addNode

      public void addNode(PrintDataElement node)
      Add node to current row
      Parameters:
      node - node
    • getNode

      public Object getNode(int index)
      Get node with index in current row
      Parameters:
      index - index
      Returns:
      PrintData(Element) of index or null
    • getNode

      public Object getNode(String name)
      Get node with name in current row
      Parameters:
      name - node name
      Returns:
      PrintData(Element) with Name or null
    • getNode

      @Deprecated public Object getNode(Integer AD_Column_ID)
      Deprecated.
      Get Node with AD_Column_ID in current row
      Parameters:
      AD_Column_ID - AD_Column_ID
      Returns:
      PrintData(Element) with AD_Column_ID or null
    • getNodeByPrintFormatItem

      public Object getNodeByPrintFormatItem(MPrintFormatItem item)
      Get node with print format item id in current row
      Parameters:
      item -
      Returns:
      PrintData(Element) with AD_PrintFormatItem_ID or null
    • getNodeByPrintFormatItemId

      public Object getNodeByPrintFormatItemId(int AD_PrintFormatItem_ID)
      Get Node with AD_PrintFormatItem_ID in current row
      Parameters:
      AD_PrintFormatItem_ID - AD_PrintFormatItem_ID
      Returns:
      PrintData(Element) with AD_PrintFormatItem_ID or null
    • getPKey

      public PrintDataElement getPKey()
      Get Primary Key node in current row
      Returns:
      PK or null
    • getIndex

      public int getIndex(String columnName)
      Get Index of Node in current row
      Parameters:
      columnName - name
      Returns:
      index or -1
    • getIndex

      @Deprecated public int getIndex(int AD_Column_ID)
      Deprecated.
      Get Index of Node in current row
      Parameters:
      AD_Column_ID - AD_Column_ID
      Returns:
      index or -1
    • getIndexOfPrintFormatItem

      public int getIndexOfPrintFormatItem(int AD_PrintFormatItem_ID)
      Get Index of Node in current row
      Parameters:
      AD_PrintFormatItem_ID - AD_PrintFormatItem_ID
      Returns:
      index or -1
    • dump

      public void dump()
      Dump All Data - header and rows
    • dumpHeader

      public void dumpHeader()
      Dump All Data
    • dumpCurrentRow

      public void dumpCurrentRow()
      Dump All Data
    • getDocument

      public Document getDocument()
      Get XML Document representation
      Returns:
      XML document
    • createXML

      public boolean createXML(StreamResult result)
      Create XML representation to StreamResult
      Parameters:
      result - StreamResult
      Returns:
      true if success
    • createXML

      public boolean createXML(String fileName)
      Create XML representation to File
      Parameters:
      fileName - file name
      Returns:
      true if success
    • parseXML

      public static PrintData parseXML(Properties ctx, File input)
      Create PrintData from XML
      Parameters:
      ctx - context
      input - InputSource
      Returns:
      PrintData
    • getMReportLine

      public MReportLine getMReportLine()
      Get MReportLine for current row
      Returns:
      MReportLine
    • addRow

      public void addRow(boolean functionRow, int levelNo, int reportLineID)
      Add row
      Parameters:
      functionRow -
      levelNo -
      reportLineID -