Utilizzo dei valori degli attributi di default insieme a un valore generato
Se è stato memorizzato un valore di default per un attributo tramite l'utilità Gestione tipi e attributi, è possibile impostare lo schema di numerazione in modo da includere tale valore. Si supponga ad esempio di aver memorizzato un valore di default per l'attributo Section, dove il nome interno per l'attributo Section è com.mycompany.Section. È quindi possibile utilizzare una regola simile a quella riportata di seguito per utilizzare il valore di default dell'attributo Section nel numero generato per i documenti creati utilizzando il sottotipo com.mycompany.MyDocument.
<AttributeValues objType="com.mycompany.MyDocument">
<AttrValue id="number" algorithm="com.ptc.windchill.enterprise.revisionControlled.server.impl.NumberGenerator">
<Arg>Section-</Arg>
<Value algorithm="wt.rule.algorithm.BooleanBranch">
<Value algorithm="wt.rule.algorithm.IfNullTest">
<Attr id="com.mycompany.Section"/>
</Value>
<Value algorithm="wt.rule.algorithm.GetDefaultContent">
<Arg>com.mycompany.MyDocument</Arg>
<Arg>com.mycompany.Section</Arg>
</Value>
<Attr id="com.mycompany.Section"/>
</Value> <!-- end BooleanBranch -->
<Arg>{GEN:wt.enterprise.SequenceGenerator:WTDOCUMENTID_seq:5:0}</Arg>
</AttrValue>
</AttributeValues>
La regola utilizza l'algoritmo GetDefaulContent per impostare il valore dell'attributo Section nel caso in cui il test per determinare se il valore dell'attributo è nullo restituisca true. Se il valore di default per Section è "ENGINEERING", il numero generato risultante è nel formato seguente:
Section-ENGINEERINGxxxxx
dove xxxxx è il numero generato.
Analogamente, è possibile definire una variabile anziché impostare un attributo number utilizzando il tag VarDef invece del tag AttrValue.
È stato utile?