Class MPMLReportDelegate

java.lang.Object
com.ptc.windchill.mpml.reports.MPMLReportDelegate

public abstract class MPMLReportDelegate extends Object
Abstract Delegate class. This will add basic information into the report.

Supported API: true

Extendable: true
  • Method Details

    • start

      protected void start(ReportParams params) throws WTException
      Called at the start on execution. Used for initial setup. Supported API: true
      Parameters:
      params -
      Throws:
      WTException
    • end

      protected void end(ReportParams params) throws WTException
      Called at the end of execution. Used for clean up. Supported API: true
      Parameters:
      params -
      Throws:
      WTException
    • getRoot

      protected abstract MPMLReportDelegate.RowData getRoot(Persistable seed, ReportParams params) throws WTException
      Method to get the row data for the root as need special handling for root since there is no parent data etc. Supported API: true
      Parameters:
      seed -
      params -
      Returns:
      Throws:
      WTException
    • getChildren

      protected abstract List<MPMLReportDelegate.RowData> getChildren(List<MPMLReportDelegate.RowData> parents, ReportParams params) throws WTException
      Method to get the data for children. This method is called recursively to collect data for whole structure. Usually this is the method where you will want to populate all the information needed to export for performance reasons as you have access to all the children for a given level. Supported API: true
      Parameters:
      parents -
      params -
      Returns:
      Throws:
      WTException
    • getRowData

      protected abstract List<MPMLReportDelegate.RowData> getRowData(NavigationUnit navUnit, MPMLReportDelegate.RowData parentData, ReportParams params) throws WTException
      Allows hook to interpret the navigation unit and build all the row data you wish should be exported. Like for occurrences it will return separate rowdata or single row data, you can decide. For example OOTB for Associative BOM reports we build separate rows for each usage/occurrence in the navigation unit. Supported API: true
      Parameters:
      navUnit - - current navigation unit
      parentData - - parent information, helpful in deciding data for rows
      params - - general params to access all the context parameters
      Returns:
      Throws:
      WTException
    • getRowToWrite

      protected abstract List<String> getRowToWrite(MPMLReportDelegate.RowData rowData, ReportParams params) throws WTException
      Method to allow fetching data from RowData and formatting it how to write to export output Supported API: true
      Parameters:
      rowData -
      params -
      Returns:
      Throws:
      WTException