Overview
Windchill ESI services provide:
1. A GetBOM Info*Engine task, to support the RPC request for creating Bill of Material (BOM) information from Windchill product structure data.
2. Java classes that extract the Windchill data and format the RPC response.
3. access to the major features of the GetBOM RPC support classes via the Windchill Adapter.
* 
ESI services do not use the Info*Engine task in GetBOM.xml out-of-the-box, but use the getBOM() API of StandardESIService for generating the ESI response.
The Windchill ESI services BOM functionality is available to the Change Notice (CN) support in Windchill ESI services.
The Java classes are usable, and in many cases, extendable by customizers. The Windchill Information Modeler supports the publicly available methods and attributes of the classes. Javadoc descriptions of the supported classes are provided.
A BOM is a composite structure comprising the following elements:
One BOM Header
One or more BOM components — this may include part usage links and raw material links
* 
Some target enterprise systems allow BOMs that have all components removed. However, most major target enterprise systems do not allow you to create a BOM with no components.
One or more Co-produce parts.
Zero or more substitutes for each component on the BOM
Zero or more reference designators for the components on the BOM
Windchill ESI services make use of certain renderers for rendering BOMs, all of which extend the abstract base class BasicESIRenderer. In turn, this class implements the only renderer interface provided by ESI services, viz., ESIRenderer. Additionally, since ERP Connector is required to navigate multilevel BOM structures, Windchill ESI services declare an interface, TreeNavigator. The interface defines the methods necessary to obtain the assembly, leaf and associated nodes in a multilevel BOM structure. These methods are described in detail in the BOM Classes section of this document.
Was this helpful?