BOM Classes
The following classes create the GetBOM RPC output:
BasicESIRenderer
This is the abstract class implementing the interface ESIRenderer and is extended by all the BOM renderer classes provided by ESI services. See Classes for more information on BasicESIRenderer.
ESIAbstractStructureRenderer
Has a common set of APIs that are needed for rendering a Part Structure.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIBOMRenderer
This class extends the abstract base class ESIAbstractStructureRenderer, thereby inheriting the capabilities of that class. The ESIBOMRenderer class is intended to be extended by customizers. It has several attributes that are accessible to subclasses in read-only mode. The attributes have protected getter methods. Because the renderer state is expected to be established by the setData() method, the attributes do not have setter methods.
Refer to the Windchill release specific Java Documentation for more details on available attributes and methods in the class.
ESIBOMHeaderRenderer
This class extends the abstract base class BasicESIRenderer, thereby inheriting the capabilities of that class. The ESIBOMHeaderRenderer class is intended to be extended by customizers. It has several attributes that are accessible to subclasses in read-only mode. The attributes have protected getter methods. Because the renderer state is expected to be established by the setData() method, the attributes do not have setter methods.
Refer to the Windchill release specific Java Documentation for more details on available attributes and methods in the class.
ESIBOMSubordinateRenderer
The class must be extended to be used. It extends BasicESIRenderer and inherits the capabilities of that class. The ESIBOMSubordinateRenderer class is intended to be extended by customizers. It has several attributes that are accessible to subclasses in read-write mode.
Refer to the Windchill release specific Java Documentation for more details on available attributes and methods in the class.
* 
The class ESIBOMSubordinateRenderer is extended by ESIBOMComponentRenderer, ESISubstituteRenderer and ESIReferenceDesignatorRenderer classes. These are meant for building the renderer output for BOM components, substitutes, and reference designator information respectively.
ESIBOMComponentRenderer
This is the default extension of ESIBOMSubordinateRenderer, and is meant for building the renderer output for BOM components. The class is intended to be extended by customizers.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESISubstituteRenderer
This is the default extension of ESIBOMSubordinateRenderer, and is meant for building the renderer output for substitutes associated with BOM components. The class is intended to be extended by customizers.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIReferenceDesignatorRenderer
This is the default extension of ESIBOMSubordinateRenderer, and is meant for building the renderer output for reference designator information. The class is intended to be extended by customizers.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIRendererFactory
This class serves as a common factory for instantiating ESI renderers.
getRenderer(ufid : String, selector : String) : ESIRenderer
Following is a list of renderers (that are used when publishing a BOM) that may be fetched using this method, along with the value that needs to be passed for the argument selector, in order to fetch a renderer instance of the given type:
ESIBOMRenderer – a value of "BOM" is passed for selector. ESIBOMHeaderRenderer – a value of "BOMHEADER" is passed for selector.
ESIBOMComponentRenderer – a value of "BOMCOMPONENT" is passed for selector. ESISubstituteRenderer – a value of "SUBSTITUTE" is passed for selector.
ESIReferenceDesignatorRenderer – a value of "REFERENCEDESIGNATOR" is passed for selector.
In all of the above cases, the UFID of the part representing the BOM is passed for the argument ufid. See section Obtaining the renderer implementation from a factory for details on the ESIRendererFactory class.
com.ptc.windchill.esi.treenavigation.TreeNavigatorImpl instead for navigating a multilevel assembly. See section BOM Classes for a description of the class TreeNavigatorImpl.
BOMUtility
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
TreeNavigatorImpl
This is the default implementation of the TreeNavigator interface for a part structure. It resides in the package com.ptc.windchill.esi.treenavigation and extends the abstract class com.ptc.windchill.esi.treenavigation.AbstractTreeNavigatorImpl. A customizer may extend this class to override the APIs defined by this and by the abstract class. See section Publishing Documents for a description of the abstract implementation of the TreeNavigator interface.
Note: This class replaces the deprecated class BOMTreeNavigatorImpl.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
BOMTreeNavigationReqBuilder
It is the default implementation of the interface com.ptc.windchill.esi.treenavigation.TreeNavigationRequestBuilder for a part structure and resides in the package com.ptc.windchill.esi.bom. It provides methods for building a TreeNavigationRequest object, which in turn is used by the TreeNavigator instance for navigating a part structure.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIBOMDifferenceMangementDelegate
It is a public interface in com.ptc.windchill.esi.delegate package. It provides methods for customizing the difference calculation of BOM.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIBOMDifferenceMangementDelegateImpl
It is the default implementation of the interface com.ptc.windchill.esi.delegate.ESIBOMDifferenceMangementDelegate for a part structure and resides in the package com.ptc.windchill.esi.delegate. It provides methods for customizing the difference calculation of BOM. This class is intended to be extended by the customizers.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIPartRelationshipDelegate
This is a default implementation of a delegate for collecting part related object for production BOM BusinessRules execution.This is a class intended to handle wt.part.WTPart as a primary business object. The delegate will attempt to return a set of enterprise data objects based on the object type above. If the primary business object is not a valid type, then an error will be logged, and an empty set will be returned. The class is intended to be extended by customizers.
Was this helpful?