Process Plan Classes
The following classes create the GetProcessPlan RPC output:
BasicESIRenderer
This is the abstract class implementing the interface ESIRenderer and is extended by all the process plan renderer classes provided by ESI services. See BasicESIRenderer for more information on BasicESIRenderer.
* 
Each of the process plan renderer classes described below is an extension of the abstract class BasicESIRenderer, unless explicitly stated otherwise.
ESIProcessPlanRenderer
This class extends the abstract base class BasicESIRenderer, thereby inheriting the capabilities of that class. The ESIProcessPlanRenderer 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.
* 
The ESIProcessPlanRenderer class is instantiated and used (i) upon releasing a process plan in object-centric mode (ii) by an ESIWTChangeOrder2Renderer instance when the Change Notice being rendered has a process plan associated to it (iii) by an ESIPromotionRequestRenderer instance when the promotion request being rendered holds a process plan as a promotable or (iv) by any of the following renderer instances for rendering the standard procedures associated with a process plan, sequence or an operation respectively – ESIProcessPlanRenderer, ESISequenceRenderer, ESIOperationRenderer.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIProcessPlanHeaderRenderer
It extends the abstract base class BasicESIRenderer, thereby inheriting the capabilities of that class. The ESIProcessPlanHeaderRenderer 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.
* 
The ESIProcessPlanHeaderRenderer class is instantiated and used by an ESIProcessPlanRenderer instance, for rendering the header of the process plan.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIPartToProcessPlanLinkRenderer
It extends the abstract class BasicESIRenderer and is instantiated and used by an ESIProcessPlanRenderer instance, for rendering the MPMPartToProcessPlanLink objects that link a process plan to its parts. Besides fetching the MPMPartToProcessPlanLink attributes and mapping them to the output as required, this renderer stores the associated parts in a collection. The ESIProcessPlanRenderer instance looks up this collection and renders the parts in the collection using an appropriate renderer. Windchill release 11.0 onwards this renderer will also render a MPMPartToProcessPlanLink that associated ProcessPlan with Resource structure as well.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIStandardProcedureLinkRenderer
It extends BasicESIRenderer, and is instantiated and used by an ESIProcessPlanRenderer instance, for rendering the MPMStandardProcedureLink objects that link a process plan to its standard procedures. Besides fetching the MPMStandardProcedureLink attributes and mapping them to the output as required, this renderer stores the associated standard procedures in a collection. The ESIProcessPlanRenderer instance looks up this collection and renders the standard procedures in the collection using an appropriate renderer.
* 
A standard procedure is actually an MPMProcessPlan instance, and is thus rendered using an instance of ESIProcessPlanRenderer. Also, two other renderers make use of the ESIStandardProcedureLinkRenderer – ESISequenceRenderer and ESIOperationRenderer, for rendering the MPMStandardProcedureLink objects that link a sequence or an operation to its standard procedures respectively.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESISequenceUsageLinkRenderer
This class is instantiated and used by an ESIProcessPlanRenderer instance for rendering the MPMSequenceUsageLink objects that link a process plan to its sequences. Besides fetching the MPMSequenceUsageLink attributes and mapping them to the output as required, it stores the associated sequences in a collection. The ESIProcessPlanRenderer instance looks up the sequences in this collection and renders them using an appropriate renderer.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIOperationUsageLinkRenderer
This class is instantiated and used by an ESIProcessPlanRenderer instance, for rendering the MPMOperationUsageLink objects associated with the process plan being rendered. Besides fetching the MPMOperationUsageLink attributes and mapping them to the output as required, it stores the associated operations in a collection. The ESIProcessPlanRenderer instance looks up the operations in this collection and renders them using an appropriate renderer.
* 
This renderer may also be used by an ESIOperationRenderer instance, for rendering the MPMOperationUsageLink objects associated with the operation being rendered. In such a case, the sub-operations associated with the operation are stored in a certain collection, which is then processed by an appropriate renderer as part of the downstream processing.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIOperationRenderer
This class is instantiated and used by an ESIProcessPlanRenderer instance for rendering the operations associated with a process plan. The ESIOperationRenderer instance in turn uses several other renderers for rendering the various links and objects associated to the operation being rendered, which are described in subsequent sections.
* 
The operations that are rendered by this renderer are typically the ones that are fetched and stored in the HashSet named operations by the ESIOperationUsageLinkRenderer instance.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESISequenceRenderer
This class is instantiated and used by an ESIProcessPlanRenderer instance for rendering the sequences associated with a process plan. The ESISequenceRenderer instance in turn uses several other renderers for rendering the various links and objects associated to the sequence being rendered, which are described in subsequent sections.
* 
The sequences that are rendered by this renderer are typically the ones that are fetched and stored in the HashSet named sequences by the ESISequenceUsageLinkRenderer instance.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIWorkInstructionRenderer
It is instantiated and used by an ESIOperationRenderer instance for rendering the work instructions associated with the operation being rendered.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIOperatedOnPartLinkRenderer
This class is instantiated and used by an ESIOperationRenderer instance for rendering the MPMOperationToOperatedPartLink objects associated to the operation being rendered. Besides fetching the MPMOperationToOperatedPartLink attributes and mapping them to the output as required, it stores the associated part master objects in a collection. The ESIProcessPlanRenderer instance looks up the objects in this collection, fetches the corresponding part iterations and renders them using an appropriate renderer.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIOperationConsumableResourceRenderer
It is instantiated and used by an ESIOperationRenderer instance for rendering the MPMOperationToConsumableLink objects associated to the operation being rendered. Besides fetching the MPMOperationToConsumableLink attributes and mapping them to the output as required, it stores the associated consumable resources in a collection. The ESIOperationRenderer instance looks up the objects in this collection, and renders them using an appropriate renderer.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIOperationWorkCenterRenderer
It is instantiated and used by an ESIOperationRenderer instance for rendering the MPMOperationToWorkCenterLink objects associated to the operation being rendered.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIAlternateUnitOfMeasureRenderer
This class is instantiated and used by certain renderers for rendering the Alternate Unit of Measure information associated with each of the following types of objects – WTPartMaster, MPMProcessPlanMaster, MPMSequenceMaster, MPMOperationMaster, MPMToolingMaster, MPMProcessMaterialMaster and MPMSkillMaster. The renderers that use this class are ESIWTPartRenderer, ESIProcessPlanHeaderRenderer, ESISequenceUsageLinkRenderer, ESIOperationUsageLinkRenderer, ESIToolingRenderer, ESIProcessMaterialRenderer and ESISkillRenderer respectively. See the Publishing Resources section for more information on the ESIToolingRenderer, ESIProcessMaterialRenderer and ESISkillRenderer.
The type of master object that holds the Alternate Unit of Measure information. The values that this attribute will be set to for various object types are as follows:
com.ptc.windchill.esi.Part – WTPartMaster
com.ptc.windchill.esi.mpml.ProcessPlan – MPMProcessPlanMaster
com.ptc.windchill.esi.mpml.Sequence – MPMSequenceMaster
com.ptc.windchill.esi.mpml.Operation – MPMOperationMaster
com.ptc.windchill.esi.mpml.Tooling – MPMToolingMaster
com.ptc.windchill.esi.mpml.ProcessMaterial – MPMProcessMaterialMaster
com.ptc.windchill.esi.mpml.Skill – MPMSkillMaster
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
ESIDocumentsRenderer
This class is instantiated and used by each of the following renderers for rendering the documents associated with a process plan, a sequence, an operation, a tooling, a process material or a skill respectively – ESIProcessPlanRenderer, ESISequenceRenderer, ESIOperationRenderer, ESIToolingRenderer, ESIProcessMaterialRenderer and ESISkillRenderer. See the Publishing Documents section for more information on the class ESIDocumentsRenderer and other related information.
ESIControlCharacteristicRenderer
This class is instantiated and used by the part, process plan and operation renderers for rendering the control characteristics (and their model items) associated to a part, to a process plan or to an operation respectively. The class extends BasicESIRenderer and resides in the package com.ptc.windchill.esi.mpml.pmi.
Refer to the Windchill release specific Java Documentation for more details on available attributes and methods in the class.
* 
ESI services make use of an ESIControlCharacteristicRenderer instance for rendering both control characteristics and the corresponding model items. In other words, there is no separate renderer for rendering model items.
ESIQualityLinkRenderer
This class extends BasicESIRenderer and resides in the package com.ptc.windchill.esi.mpml.pmi It is instantiated and used by the control characteristic renderer for rendering the quality links that associate a part, a process plan or an operation to the control characteristics being rendered.
Refer to the Windchill release specific Java documentation for more details on available attributes and methods in the class.
* 
ESI Services make use of an ESIStandardCCLinkRenderer instance for processing standard control characteristic links that associate a process plan or an operation to a standard control characteristic.
MPMLUtility
This class resides in the package com.ptc.windchill.esi.mpml and provides a number of utility (or helper) APIs for rendering manufacturing objects. For example, it provides compareXXX() APIs that compare any two given iterations of business objects (such as parts, process plans, operations or sequences) and return the result (consisting of difference information pertaining to links and their attributes) in a HashMap.
This class is not meant to be extended by customizers. For more information on the compareXXX() (and various other) APIs of this class and their descriptions, refer to the Javadoc.
ESIMPMLDifferenceManagementDelegate
This interface resides in the package com.ptc.windchill.esi.mpml.delegate and provides a number of utility (or helper) APIs for rendering manufacturing objects. For example, it provides compareXXX() APIs that compare any two given iterations of business objects (such as parts, process plans, operations or sequences) and return the result (consisting of difference information pertaining to links and their attributes) in a HashMap.
For more information on the compareXXX() (and various other) APIs of this class and their descriptions, refer to the Javadoc.
ESIMPMLDifferenceManagementDelegateImpl
This class resides in the package com.ptc.windchill.esi.mpml.delegate and is the default implementation of ESIMPMLDifferenceManagementDelegate. It provides a number of utility (or helper) APIs for rendering manufacturing objects. For example, it provides compareXXX() APIs that compare any two given iterations of business objects (such as parts, process plans, operations or sequences) and return the result (consisting of difference information pertaining to links and their attributes) in a HashMap.
ESIOperationToPartLinkNewRenderer
The ESIOperationToPartLinkRenderer class and its methods are deprecated. By default, the new renderer class ESIOperationToPartLinkNewRenderer should be used to render MPMOperationToPartLink objects associated with the operation being rendered. For more details on the available methods in this class, refer to the Java documentation specific to your Windchill release.
Refer to the Windchill release specific Java documentation for more details on available methods in the class.
Deprecated APIs:
The following APIs are now deprecated and will be removed in a future release:
protected Collection<ESITargetAssociation> getTargetAssociations()
protected Collection<MPMOperationToPartLink>[] getComponents()
protected MPMOperation getRoot()
protected MPMOperationHolder getRootObj()
protected String getWcAdapter()
protected HashSet<WTPart> getPartSet()
public void buildGroups() throws ESIRendererException
public void setData(MPMOperation root, Collection<MPMOperationToPartLink>[] operationToPartLinks, HashSet<WTPart> partSet, Set<WTPart> dissociatedParts, boolean lineNumbers, Collection<ESITargetAssociation> tgtAssociations, String auth, String wcAdapter) throws WTException
public void setData(MPMProcessPlan root, Collection<MPMOperationToPartLink>[] operationToPartLinks, HashSet<WTPart> partSet, Set<WTPart> dissociatedParts, boolean lineNumbers, Collection<ESITargetAssociation> tgtAssociations, String auth, String wcAdapter) throws WTException
public void setData(MPMOperationHolder rootObj, MPMOperation currOpr, Collection<MPMOperationToPartLink>[] operationToPartLinks, HashSet<WTPart> partSet, Set<WTPart> dissociatedParts, boolean lineNumbers, Collection<ESITargetAssociation> tgtAssociations, String auth, String wcAdapter) throws WTException
public void setData(MPMProcessPlan processPlan, MPMProcessPlan prevExportedProcessPlanIteration) throws WTException
protected void validate() throws ESIRendererException
protected Element adjustElement(Element elem, String group, MPMOperationToPartLink operationToPartLink, WTPartMaster part, Collection<ESITarget> targets) throws ESIRendererException
Performance Impact:
Performance improvements have been observed in the following use cases when publishing the process plan using theESIOperationToPartLinkNewRenderer:
Use Case 1: Assembly with 2000 components, process plan with 500 operations, each having 4 component allocations.
Use Case 2: Assembly with 1000 components at level 10, process plan with 500 operations, each having 2 component allocations.
Use Case 3: Assembly with 2000 components, process plan with a single operation having all component allocations.
Migrate to the New Renderer:
To utilize the new renderer for MPMOperationToPartLink objects, you must migrate your code to use the new extendable APIs. The following APIs are available for customization:
buildGroups
validate
setData
adjustElement
Refer to the Java documentation specific to your Windchill release for more details on the available methods in this class.
Reverting to the Old Renderer:
Although it is not recommended, it is possible to revert to the old behavior for compatibility with customizations. All supported APIs have been marked as deprecated. Reverting to the old renderer can be achieved by setting the property com.ptc.windchill.esi.switchToOldOperationToPartLinkRender to true. By default, this property is set to false.
The new functionality and performance improvements will not be available when using the old behavior. Additionally, newer features and functionalities introduced in future releases will not be compatible with the old OperationToPartLink render. Therefore, it is recommended to migrate to the new APIs for long-term compatibility and optimal performance.
* 
The old OperationToPartLink renderer is deprecated and will be removed in a Windchill 14.X release. Plan your migration accordingly to avoid any disruptions.
¿Fue esto útil?