Exemple de fichier de configuration de filtrage personnalisé
Dans ce scénario, un utilisateur a défini les sous-types d'un article (ABCPart, CBSPart et NBCPart), un sous-type FOXPartUsageLink d'un élément WTPartUsageLink, et a créé le fichier de configuration suivant.
<?xml version="1.0" encoding="UTF-8"?>
<FilterStrategy handler="com.ptc.windchill.option.filter.DefaultFilterStrategyHandler">
<FilterNode type="wt.option.ExpressionAssignable" parentType="wt.part.ABCPart" childType="wt.part.ABCPart">
<ExpressionPolicy advanced="true" mode="STANDARD,UNDEFINED"/>
</FilterNode>
<FilterNode parentType="wt.part.CBSPart" childType="wt.part.NBCPart">
<ExpressionPolicy advanced="true" mode="STANDARD,UNDEFINED "/>
</FilterNode>
<FilterNode type="wt.part.ABCPart">
<ExpressionPolicy advanced="true" mode="STANDARD "/>
</FilterNode>
<FilterMissingExpression type="wt.part.FOXPartUsageLink"/>
<FilterMissingExpression type="wt.part.PartUsesOccurrence" parentType=”wt.part.CBSPart” childType=”wt.part.NBCPart”/>
</FilterStrategy>
Le fichier de configuration définit l'algorithme de filtrage avec des expressions de base et avancées, comme suit. Pour les expressions de base, les choix sont collectés et mis en correspondance avec le choix du filtre seulement pour l'article enfant du lien de cas d'emploi, seulement s'ils sont du type ABCPart ou NBCPart. Les choix associés à des liens de cas d'emploi et à des articles enfants d'autres types sont ignorés. Il existe quatre règles dédiées aux expressions avancées. Dans l'ordre d'apparition dans le fichier, elles ont la signification suivante :
• Si l'article parent et l'article enfant du lien de cas d'emploi sont du type ABCPart, le lien de cas d'emploi est filtré si l'expression présente le statut d'évaluation FAUX ou INDEFINI.
• Si les articles parent et enfant du lien de cas d'emploi sont des types CBSPart et NBCPart, le lien de cas d'emploi est filtré si l'expression présente le statut d'évaluation FAUX ou INDEFINI.
• Si l'article d'élément (enfant) est du type ABCPart, le lien de cas d'emploi est filtré si l'expression présente le statut d'évaluation FAUX.
• Si le lien de cas d'emploi est du type FOXPartUsageLink, le lien de cas d'emploi est filtré si aucune expression de base ou avancée n'est affectée au lien de cas d'emploi ou à son article enfant.
• Si aucune expression n'est affectée à une occurrence d'un lien de cas d'emploi entre les articles des types CBSPart et NBCPart, l'occurrence est filtrée.