Package wt.part

Class WTPart

All Implemented Interfaces:
Externalizable, Serializable, wt.access._AccessControlled, wt.access._AccessControlList, wt.access._AdHocControlled, wt.access._IdentityAccessControlled, wt.access._PolicyAccessControlled, wt.access._SecurityLabeled, AccessControlled, wt.access.AccessControlList, AdHocControlled, wt.access.IdentityAccessControlled, wt.access.PolicyAccessControlled, SecurityLabeled, wt.admin._DomainAdministered, DomainAdministered, wt.analytics._AnalyticsManageable, wt.analytics.AnalyticsManageable, wt.analytics.compliance._ComplianceManageable, wt.analytics.compliance.ComplianceManageable, wt.analytics.cost._CostManageable, wt.analytics.cost.CostManageable, wt.annotation._AnnotationTarget, AnnotationTarget, Associative, wt.build._BuildTarget, BuildTarget, wt.change2._Changeable2, wt.change2._ChangeableIfc, Changeable2, ChangeableIfc, wt.configuration._ConfigurationManageable, wt.configuration._ConfiguredVersion, ConfigurationManageable, ConfiguredVersion, wt.content._ContentHolder, ContentHolder, wt.eff._EffManagedVersion, wt.eff._EffRecordable, EffManagedVersion, EffRecordable, wt.effectivity._EffectivityHolder, wt.effectivity._EffectivityManageable, EffectivityHolder, wt.effectivity.EffectivityManageable, wt.epm.interfaces._Trackable, wt.epm.interfaces._WorkspaceTrackable, wt.epm.interfaces.Trackable, wt.epm.interfaces.WorkspaceTrackable, wt.esi._Datable, wt.esi._EnterpriseDatable, wt.esi._Releasable, Datable, EnterpriseDatable, Releasable, wt.facade.persistedcollection._PersistedCollectable, PersistedCollectable, wt.fc._NetFactor, wt.fc._ObjectMappable, wt.fc._Persistable, wt.fc.adminlock._AdministrativelyLockable, AdministrativelyLockable, wt.fc.archive._Archiveable, wt.fc.archive._ArchiveablePrimary, wt.fc.archive.Archiveable, wt.fc.archive.ArchiveablePrimary, wt.fc.BusinessInformation, wt.fc.importer._ImportTrackable, wt.fc.importer.ImportTrackable, NetFactor, ObjectMappable, Persistable, wt.federation._FederatedLinkHolder, wt.federation._RemotelyLinkable, wt.federation._RepositoryInteroperable, wt.federation.FederatedLinkHolder, wt.federation.RemotelyLinkable, wt.federation.RepositoryInteroperable, wt.filter._NavigationCriteriaOwner, wt.filter.NavigationCriteriaOwner, wt.folder._CabinetBased, wt.folder._Foldered, wt.folder._FolderEntry, wt.folder._FolderServiceManaged, wt.folder._IteratedFoldered, CabinetBased, Foldered, FolderEntry, wt.folder.FolderServiceManaged, wt.folder.history.Movable, IteratedFoldered, _Genericizable, wt.generic._OVTemplate, wt.generic._Variant, Genericizable, wt.generic.OVTemplate, wt.generic.Variant, wt.iba.value._IBAHolder, wt.iba.value.IBAHolder, DisplayIdentification, wt.index._Indexable, Indexable, wt.inf.container._WTContained, WTContained, wt.lifecycle._IteratedLifeCycleManaged, _LifeCycleManaged, IteratedLifeCycleManaged, LifeCycleManaged, wt.locks._Lockable, Lockable, wt.maturity._Promotable, Promotable, wt.meeting.actionitem._IteratedSubjectOfActionItem, wt.meeting.actionitem._SubjectOfActionItem, wt.meeting.actionitem.IteratedSubjectOfActionItem, wt.meeting.actionitem.SubjectOfActionItem, wt.mpm._ConsumableResource, ConsumableResource, wt.note._NoteHolder, wt.note.NoteHolder, wt.notify._Notifiable, Notifiable, wt.occurrence._PathOccurrenceContext, wt.occurrence._UsesOccurrenceContext, PathOccurrenceContext, PathOwner, UsesOccurrenceContext, wt.option._ChoiceMappable, wt.option._Expressionable, wt.option._ExpressionAssignable, wt.option._IndependentExpressionAssignable, wt.option._ModuleVariantInformationContext, ChoiceMappable, Expressionable, ExpressionAssignable, wt.option.IndependentExpressionAssignable, ModuleVariantInformationContext, _OrganizationOwned, wt.org._OrganizationOwnedVersion, wt.org.electronicIdentity._ElectronicallySignable, wt.org.electronicIdentity.ElectronicallySignable, OrganizationOwned, OrganizationOwnedVersion, wt.ownership._Ownable, wt.ownership.Ownable, wt.part._Part, wt.part._PartVersion, wt.part._WTPartTypeInterface, wt.part.Part, wt.part.PartVersion, wt.part.WTPartTypeInterface, wt.projmgmt.deliverable._SubjectOfDeliverable, wt.projmgmt.deliverable._VersionedSubjectOfDeliverable, wt.projmgmt.deliverable.SubjectOfDeliverable, wt.projmgmt.deliverable.VersionedSubjectOfDeliverable, wt.recent.RecentlyVisited, wt.representation._Representable, wt.representation._RepresentablesAndMasters, wt.representation._RepresentationContributor, Representable, wt.representation.RepresentablesAndMasters, wt.representation.RepresentationContributor, wt.sandbox._Interoperable, wt.sandbox.Interoperable, _TeamManaged, TeamManaged, wt.trace._IteratedTraceable, wt.trace._Traceable, IteratedTraceable, Traceable, wt.translate._IteratedTranslatable, wt.translate.IteratedTranslatable, wt.type._Typed, wt.type._TypeManaged, wt.type.FlexTyped, wt.type.Typed, wt.type.TypeManaged, wt.ufid._Federatable, wt.ufid.Federatable, _Iterated, wt.vc._OneOffVersioned, wt.vc._Versionable, wt.vc._Versioned, wt.vc.baseline._Baselineable, Baselineable, wt.vc.branch._AdhocVersionSupportable, wt.vc.branch.AdhocVersionSupportable, Iterated, OneOffVersioned, Versionable, Versioned, _ViewManageable, ViewManageable, wt.vc.wip._Workable, Workable, wt.viewmarkup._Viewable, wt.viewmarkup.Viewable, wt.workflow.forum._IteratedSubjectOfForum, wt.workflow.forum._SubjectOfForum, wt.workflow.forum.IteratedSubjectOfForum, SubjectOfForum, wt.workflow.notebook._IteratedSubjectOfNotebook, wt.workflow.notebook._SubjectOfNotebook, wt.workflow.notebook.IteratedSubjectOfNotebook, wt.workflow.notebook.SubjectOfNotebook, wt.workflow.requirement._RequirementsManageable, wt.workflow.requirement.RequirementsManageable
Direct Known Subclasses:
_MPMResource, com.ptc.windchill.suma.part._SupplierPart

@GenAsPersistable(superClass=RevisionControlled.class,interfaces={wt.translate.IteratedTranslatable.class,wt.part.PartVersion.class,ContentHolder.class,wt.effectivity.EffectivityManageable.class,ViewManageable.class,Baselineable.class,BuildTarget.class,wt.iba.value.IBAHolder.class,wt.workflow.forum.IteratedSubjectOfForum.class,wt.workflow.requirement.RequirementsManageable.class,wt.ufid.Federatable.class,Representable.class,wt.type.Typed.class,wt.org.electronicIdentity.ElectronicallySignable.class,UsesOccurrenceContext.class,AnnotationTarget.class,ConfigurationManageable.class,WTContained.class,wt.viewmarkup.Viewable.class,OrganizationOwnedVersion.class,Releasable.class,wt.epm.interfaces.WorkspaceTrackable.class,PathOccurrenceContext.class,PathOwner.class,ConfiguredVersion.class,Genericizable.class,wt.fc.importer.ImportTrackable.class,wt.access.IdentityAccessControlled.class,wt.generic.OVTemplate.class,wt.generic.Variant.class,wt.fc.archive.ArchiveablePrimary.class,wt.note.NoteHolder.class,wt.sandbox.Interoperable.class,wt.federation.RepositoryInteroperable.class,PersistedCollectable.class,wt.analytics.AnalyticsManageable.class,wt.folder.history.Movable.class,wt.part.WTPartTypeInterface.class,wt.filter.NavigationCriteriaOwner.class,Associative.class,EnterpriseDatable.class,wt.option.IndependentExpressionAssignable.class,wt.projmgmt.deliverable.VersionedSubjectOfDeliverable.class,ModuleVariantInformationContext.class,IteratedTraceable.class,ConsumableResource.class,wt.vc.branch.AdhocVersionSupportable.class},extendable=true,versions={5938256617789424362L,-6360524394632718960L,1969555972987043112L},properties={@GeneratedProperty(name="jobAuthorizationNumber",type=java.lang.String.class,supportedAPI=PUBLIC,javaDoc="Attribute specific to the Windchill A&D module",constraints=@PropertyConstraints(upperLimit=32)),@GeneratedProperty(name="contractNumber",type=java.lang.String.class,supportedAPI=PUBLIC,javaDoc="Attribute specific to the Windchill A&D module",constraints=@PropertyConstraints(upperLimit=32)),@GeneratedProperty(name="phase",type=java.lang.String.class,supportedAPI=PUBLIC,javaDoc="Attribute specific to the Windchill A&D module",constraints=@PropertyConstraints(upperLimit=32)),@GeneratedProperty(name="partType",type=PartType.class,initialValue="PartType.getPartTypeDefault()",supportedAPI=PUBLIC,accessors=@PropertyAccessors(setExceptions={}),constraints=@PropertyConstraints(upperLimit=30,required=true)),@GeneratedProperty(name="source",type=Source.class,initialValue="Source.getSourceDefault()",supportedAPI=PUBLIC,accessors=@PropertyAccessors(setExceptions={}),constraints=@PropertyConstraints(upperLimit=30,required=true)),@GeneratedProperty(name="validateUsage",type=boolean.class,initialValue="false",supportedAPI=PRIVATE,javaDoc="Attribute when set to true will validate Usage",columnProperties=@ColumnProperties(defaultValue="0"))},foreignKeys=@GeneratedForeignKey(foreignKeyRole=@ForeignKeyRole(name="master",type=WTPartMaster.class,supportedAPI=PUBLIC,cascade=false,constraints=@PropertyConstraints(required=true)),myRole=@MyRole(name="iteration",supportedAPI=PUBLIC,cascade=false)),derivedProperties={@DerivedProperty(name="number",derivedFrom="master>number",supportedAPI=PUBLIC),@DerivedProperty(name="name",derivedFrom="master>name",supportedAPI=PUBLIC),@DerivedProperty(name="defaultUnit",derivedFrom="master>defaultUnit",supportedAPI=PUBLIC),@DerivedProperty(name="endItem",derivedFrom="master>endItem",supportedAPI=PUBLIC),@DerivedProperty(name="defaultTraceCode",derivedFrom="master>defaultTraceCode",supportedAPI=PUBLIC),@DerivedProperty(name="phantom",derivedFrom="master>phantom",supportedAPI=PUBLIC),@DerivedProperty(name="hidePartInStructure",derivedFrom="master>hidePartInStructure",supportedAPI=PUBLIC),@DerivedProperty(name="servicekit",derivedFrom="master>servicekit",supportedAPI=PUBLIC),@DerivedProperty(name="serviceable",derivedFrom="master>serviceable",supportedAPI=PUBLIC)},tableProperties=@TableProperties(compositeIndex2="+ partType + state.state",compositeIndex3="+ partType + state.state",compositeIndex4="+ UPPER(versionIdA2versionInfo) + UPPER(iterationIdA2iterationInfo)",compositeUnique1="+view.key.id+variation1+variation2+oneOffVersionInfo.identifier.oneOffVersionId",oracleTableSize=HUGE),iconProperties=@IconProperties(standardIcon="wtcore/images/part.gif",openIcon="wtcore/images/part.gif")) public class WTPart extends _WTPart
This reference implementation of a PartVersion represents a snapshot of the changeable aspects of a part, is managed by WTPartService and has an associated WTPartMaster which represents the unchanging aspects of this part. Many of the significant associations of parts happen at the WTPartMaster level.

Associations:

  • WTPartUsageLink links this WTPart to a WTPartMaster that it uses (actually it uses one of the WTParts associated with the WTPartMaster based on a config spec)
  • WTPartSubstituteLink links a WTPartMaster to a WTPartUsageLink making it (actually one of its WTParts based on a config spec) a substitute part for that particular usage
  • WTPartAlternateLink links one WTPartMaster to another that is an alternate part for any usage (alternates are NOT defined at this WTPart level)

By virtue of its being RevisionControlled it can be:

  • checked in and checked out
  • assigned to views
  • baselined
  • assigned to an effectivity
  • hold content
The intention is that this WTPart represents one stage in the development and change of the part. A part may have many versions (and iterations, which are like sub-versions) and a large part of the implementation of parts deals with making new versions (and/or iterations) from existing ones and selecting the correct version(s) or iteration(s) that is (are) relevant in a particular situation by using a WTPartConfigSpec. Much of the version/iteration functionality comes from being RevisionControlled.

Use the newWTPart static factory method(s), not the WTPart constructor, to construct instances of this class. Instances must be constructed using the static factory(s), in order to ensure proper initialization of the instance.



Supported API: true

Extendable: true

See Also:
  • Method Details

    • getNumber

      public String getNumber()
      Gets the value of the attribute: NUMBER. The number attribute represents the number for this part and all of its versions. Conceptually on the WTPart, it is actually implemented on the master.

      Supported API: true
      Overrides:
      getNumber in class _WTPart
      Returns:
      String
      See Also:
    • setNumber

      public void setNumber(String a_Number) throws WTPropertyVetoException
      Sets the value of the attribute: NUMBER. The number attribute represents the number for this part and all of its versions. Conceptually on the WTPart, it is actually implemented on the master. WTPropertyVetoException is thrown when a_Number is empty, null, or exceed 40 characters in length.

      Supported API: true
      Overrides:
      setNumber in class _WTPart
      Parameters:
      a_Number -
      Throws:
      WTPropertyVetoException
      See Also:
    • getName

      public String getName()
      Gets the value of the attribute: NAME. The name attribute represents the name for this part and all of its versions. Conceptually on the WTPart, it is actually implemented on the master. The name a part is commonly refered to by, such as "piston".

      Supported API: true
      Specified by:
      getName in interface CabinetBased
      Specified by:
      getName in interface wt.projmgmt.deliverable.SubjectOfDeliverable
      Overrides:
      getName in class _WTPart
      Returns:
      String
      See Also:
    • setName

      public void setName(String a_Name) throws WTPropertyVetoException
      Sets the value of the attribute: NAME. The name attribute represents the name for this part and all of its versions. Conceptually on the WTPart, it is actually implemented on the master. The name a part is commonly refered to by, such as "piston". WTPropertyVetoException is thrown when a_Name is empty, null, or exceed 60 characters in length.

      Supported API: true
      Overrides:
      setName in class _WTPart
      Parameters:
      a_Name -
      Throws:
      WTPropertyVetoException
      See Also:
    • getDefaultUnit

      public QuantityUnit getDefaultUnit()
      Gets the value of the attribute: DEFAULT_UNIT. The default unit of measurement assigned to the part when it is used in a structure.

      Supported API: true
      Overrides:
      getDefaultUnit in class _WTPart
      Returns:
      QuantityUnit
      See Also:
    • setDefaultUnit

      public void setDefaultUnit(QuantityUnit a_DefaultUnit) throws WTPropertyVetoException
      Sets the value of the attribute: DEFAULT_UNIT. The default unit of measurement assigned to the part when it is used in a structure. WTPropertyVetoException is thrown when a_DefaultUnit is null or exceed 30 characters in length.

      Supported API: true
      Overrides:
      setDefaultUnit in class _WTPart
      Parameters:
      a_DefaultUnit -
      Throws:
      WTPropertyVetoException
      See Also:
    • isEndItem

      public boolean isEndItem()
      Gets the value of the attribute: END_ITEM. Indicates if the part should be treated as an end item.

      Supported API: true
      Overrides:
      isEndItem in class _WTPart
      Returns:
      boolean
      See Also:
    • setEndItem

      public void setEndItem(boolean a_EndItem) throws WTPropertyVetoException
      Sets the value of the attribute: END_ITEM. Indicates if the part should be treated as an end item.

      Supported API: true
      Overrides:
      setEndItem in class _WTPart
      Parameters:
      a_EndItem -
      Throws:
      WTPropertyVetoException
      See Also:
    • getDefaultTraceCode

      public TraceCode getDefaultTraceCode()
      Gets the value of the attribute: DEFAULT_TRACE_CODE. The default unit of measure for the part.

      Supported API: true
      Overrides:
      getDefaultTraceCode in class _WTPart
      Returns:
      TraceCode
      See Also:
    • setDefaultTraceCode

      public void setDefaultTraceCode(TraceCode a_DefaultTraceCode) throws WTPropertyVetoException
      Sets the value of the attribute: DEFAULT_TRACE_CODE. The default unit of measure for the part. WTPropertyVetoException is thrown when a_DefaultTraceCode is null or exceed 1 character in length.

      Supported API: true
      Overrides:
      setDefaultTraceCode in class _WTPart
      Parameters:
      a_DefaultTraceCode -
      Throws:
      WTPropertyVetoException
      See Also:
    • getGenericType

      public GenericType getGenericType()
      Gets the value of the attribute: GENERIC_TYPE. Indicates if this is a Generic Type WTPart.

      Supported API: true
      Specified by:
      getGenericType in interface _Genericizable
      Overrides:
      getGenericType in class _WTPart
      Returns:
      GenericType
      See Also:
    • setGenericType

      public void setGenericType(GenericType a_GenericType) throws WTPropertyVetoException
      Sets the value of the attribute: GENERIC_TYPE. Indicates if this is a Generic Type WTPart. WTPropertyVetoException is thrown when a_DefaultTraceCode is null.

      Supported API: true
      Specified by:
      setGenericType in interface _Genericizable
      Overrides:
      setGenericType in class _WTPart
      Parameters:
      a_GenericType -
      Throws:
      WTPropertyVetoException
      See Also:
    • isPhantom

      public boolean isPhantom()
      Gets the value of the attribute: PHANTOM. A part is said to be a 'phantom' part (for the purposes of MPMLink) when it is an assembly that is never actually assembled--in other words the parts used by a 'phantom' part are placed directly into the assembly that uses the 'phantom' part.

      Supported API: true
      Overrides:
      isPhantom in class _WTPart
      Returns:
      boolean
      See Also:
    • setPhantom

      public void setPhantom(boolean a_Phantom) throws WTPropertyVetoException
      Sets the value of the attribute: PHANTOM. A part is said to be a 'phantom' part (for the purposes of MPMLink) when it is an assembly that is never actually assembled--in other words the parts used by a 'phantom' part are placed directly into the assembly that uses the 'phantom' part.

      Supported API: true
      Overrides:
      setPhantom in class _WTPart
      Parameters:
      a_Phantom -
      Throws:
      WTPropertyVetoException
      See Also:
    • getHidePartInStructure

      public Boolean getHidePartInStructure()
      Gets the value of the attribute: HIDE_PART_IN_STRUCTURE. Flag to determine whether the part should be built when Build from Part action is invoked.

      Supported API: true
      Overrides:
      getHidePartInStructure in class _WTPart
      Returns:
      Boolean
      See Also:
    • setHidePartInStructure

      public void setHidePartInStructure(Boolean a_HidePartInStructure) throws WTPropertyVetoException
      Sets the value of the attribute: HIDE_PART_IN_STRUCTURE. Flag to determine whether the part should be built when Build from Part action is invoked. WTPropertyVetoException is thrown when a_HidePartInStructure is null.

      Supported API: true
      Overrides:
      setHidePartInStructure in class _WTPart
      Parameters:
      a_HidePartInStructure -
      Throws:
      WTPropertyVetoException
      See Also:
    • newWTPart

      public static WTPart newWTPart() throws WTException
      Construct a new WTPart (and its WTPartMaster). This static factory method must be used to construct instances of this class in order to ensure proper initialization of the instance.

      Supported API: true
      Returns:
      WTPart
      Throws:
      WTException
    • newWTPart

      public static WTPart newWTPart(String number, String name) throws WTException
      Constructs a new WTPart and sets the WTPartMaster's name and number to the passed-in values. This static factory method must be used to construct instances of this class in order to ensure proper initialization of the instance.

      Supported API: true
      Parameters:
      number -
      name -
      Returns:
      WTPart
      Throws:
      WTException
    • initialize

      protected void initialize(String number, String name) throws WTException
      Supports initialization, following construction of an instance. Invoked by "new" factory having the same signature.

      Supported API: true
      Parameters:
      number -
      name -
      Throws:
      WTException
    • getIdentity

      public String getIdentity()
      Returns the master identity plus the version identity for this part in the form of " - , ()". For example "100 - engine, A.1 (Engineering)". If the WTPart is view-independent, the parenthesis are not included.

      Supported API: true
      Specified by:
      getIdentity in interface wt.fc.BusinessInformation
      Specified by:
      getIdentity in interface Persistable
      Overrides:
      getIdentity in class RevisionControlled
      Returns:
      String
    • newWTPart

      public static WTPart newWTPart(String number, String name, QuantityUnit defaultUnit) throws WTException
      Constructs a new WTPart and sets the WTPartMaster's name and number to the passed-in values. This static factory method must be used to construct instances of this class in order to ensure proper initialization of the instance.

      Supported API: true
      Parameters:
      number -
      name -
      defaultUnit -
      Returns:
      WTPart
      Throws:
      WTException
    • initialize

      protected void initialize(String number, String name, QuantityUnit defaultUnit) throws WTException
      Supports initialization, following construction of an instance. Invoked by "new" factory having the same signature.

      Supported API: true
      Parameters:
      number -
      name -
      defaultUnit -
      Throws:
      WTException
    • getOrganizationUniqueIdentifier

      public String getOrganizationUniqueIdentifier()
      Gets the value of the attribute: ORGANIZATION_UNIQUE_IDENTIFIER. The getter for this attribute delivers organization unique identifier.

      Supported API: true
      Specified by:
      getOrganizationUniqueIdentifier in interface _OrganizationOwned
      Overrides:
      getOrganizationUniqueIdentifier in class _WTPart
      Returns:
      String
      See Also:
    • getOrganization

      public WTOrganization getOrganization()
      Gets the value of the attribute: ORGANIZATION.

      Supported API: true
      Returns:
      WTOrganization
    • setOrganization

      public void setOrganization(WTOrganization a_Organization) throws WTPropertyVetoException
      Sets the value of the attribute: ORGANIZATION. WTPropertyVetoException is thrown if a_Organization is null.

      Supported API: true
      Parameters:
      a_Organization -
      Throws:
      WTPropertyVetoException
    • getMaster

      public WTPartMaster getMaster()
      Gets master of this part

      Supported API: true
      Specified by:
      getMaster in interface _Iterated
      Overrides:
      getMaster in class _RevisionControlled
      Returns:
      WTPartMaster
      See Also: