Fonctionnalités supplémentaires de Windchill > Gestion des processus de fabrication > Personnalisation de l'Explorateur de structures produit de fabrication > Désactivation d'actions par type d'objet > Programme de validation isValidTypeValidator
  
Programme de validation isValidTypeValidator
Le programme de validation isValidTypeValidator est implémenté par la classe : com.ptc.windchill.explorer.structureexplorer.validators.IsValidTypeValidator. Pour un ensemble donné de définitions de type, ce programme de validation renverra la valeur "true" si le type de l'article actuellement sélectionné figure dans le groupe susmentionné. Par exemple, si une instance de ce programme de validation est définie avec des définitions de type pour les types A, B et D, le programme de validation renverra la valeur "true" en cas de sélection d'un article de type A, B ou D. Si un article d'un autre type, par exemple de type C, est sélectionné, le programme de validation renverra la valeur "false".
Par exemple, un élément <ValidatorDefinition> devant renvoyer la valeur "true" si le type sélectionné est A, B ou D serait défini comme suit :
<ValidatorDefinition id="com.my.IsEqualToOneOfTypesABDVAL"
validatorClass="com.ptc.windchill.explorer.structureexplorer.vali
dators.IsValidTypeValidator">
<Import id="com.my.MyTypeATD"/>
<Import id="com.my.MyTypeBTD"/>
<Import id="com.my.MyTypeDTD"/>
</ValidatorDefinition>
Inversement, un élément <ValidatorDefinition> renvoyant la valeur "false" si le type sélectionné est A, B ou D serait défini de la façon suivante (notez l'inclusion de l'attribut "inverted") :
<ValidatorDefinition id="com.my.IsNotEqualToTypesABDVAL"
validatorClass="com.ptc.windchill.explorer.structureexplorer.vali
dators.IsValidTypeValidator" inverted="true">
<Import id="com.my.MyTypeATD"/>
<Import id="com.my.MyTypeBTD"/>
<Import id="com.my.MyTypeDTD"/>
</ValidatorDefinition>
Les éléments <Import> font référence aux éléments <TypeDefinition> qui seraient définis comme suit (dans l'hypothèse où chaque type est un enfant direct de WTPart) :
<TypeDefinition id="com.my.MyTypeATD"
typeId="WCTYPE|wt.part.WTPart|org.my.MyTypeA"/>
<TypeDefinition id="com.my.MyTypeBTD"
typeId="WCTYPE|wt.part.WTPart|org.my.MyTypeB"/>
<TypeDefinition id="com.my.MyTypeDTD"
typeId="WCTYPE|wt.part.WTPart|org.my.MyTypeD"/>