Hi Everyone,
Given that one of the major points of a PLM system is to eliminate duplication, Windchill's in-built attribute synchronizing and manipulation abilities seem limited. Please correct me if anything I say below is incorrect, or if there is a way around it.
Firstly, the main help page on Alias Attribute Mapping is daunting. It only makes sense if you already know what is being talked about. It's obvious when I list them, but these are some crutial missing puzzle pieces:
- All versioned objects have a masterReference link to their Master object.
- uses/usedBy (e.g. WTPart-WTPart structure and CAD-CAD whereused) relationships are from the higher level object to the lower level object's Master. (This is so that the latest version of the lower level object is always updating in the structure)
- describes/describedBy (e.g. content) and built/builtBy (e.g. owner) relationships are from non-master object to non-master object
Problems with Alias Attributes:
- The main problem is when you are traversing a many-to-one relationship. If you have played with Alias attributes you will notice the symptom of this is multiple comma separated values. For example, if you are holding Material on your WTPart, and you want to pull it to the WTPartMaster so that it can then be pulled through a uses/usedBy link to a higher level WTPart (i.e. for a single line BOM, e.g. Machining is made from Casting); because there are many WTParts (i.e. all versions) linked to the WTPartMaster, you will get many comma separated Material values. Ideally there would be some way of only pushing the attribute of the latest version. If there was a versionInfo.latest attribute, then Aliasing a Calculated Attribute based upon the original attribute could theoretically achieve this. (Problem: see [2].)
- A similar problem occurs when pushing attributes back from the WTPart to CAD; there can be multiple WTPart versions linked to the CAD (this refreshes when the CAD is next checked in, as this causes its owner linked WTPart to iterate; however checking in a WTPart does not cause its owner linked CAD to iterate).
- Null Global Attribute values are not pulled through Alias Attribute mapping, however Null Calculated Attribute values are. Thus, even if you did pull a calculated attribute (to exclude non-latest values), you instead get the value, followed by several commas i.e. <value>, , , , , , , , , ,
- They do not show in the WorkGroup Manager.
- Alias attributes based on Alias attributes need to be re-saved if the lower one changes (minor, but be aware).
Problems with Calcualted Attributes
- Cannot function multi-valued/comma-separated attributes (can be overcome if the Alias Attribute problems [1] and [2] are solved)
- No ability to alter the attribute value e.g. search for a character (eg the first comma, underscore, dash, or slash) and drop everything after/before.
- They do not show in the WorkGroup Manager.