Funciones de gestión de datos > Gestión de estructuras de artículos > Funciones de opciones y variantes de Windchill > Filtrado de una estructura de producto configurable con el filtro de opciones > Filtro de opciones estándar y alternativo > Personalización de comportamientos de filtrado para el delegado de filtro de opciones > Configuración de los comportamientos estándar y alternativo > Ejemplo de fichero de configuración de filtrado personalizado
  
Ejemplo de fichero de configuración de filtrado personalizado
En este escenario, un usuario ha definido los subtipos de un WTPart (ABCPart, CBSPart y NBCPart) y un subtipo FOXPartUsageLink de WTPartUsageLink, y ha creado el siguiente fichero de configuración.
<?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>
En el fichero de configuración se define el algoritmo de filtrado con expresiones básicas y avanzadas, tal como se muestra a continuación. Para expresiones básicas, las elecciones se recopilan y coinciden con la elección del filtro solo para el artículo hijo de soporte del vínculo de uso, si son de los tipos ABCPart o NBCPart. Las elecciones de vínculos de uso y artículos hijo de otros tipos se desestiman. Hay cuatro directivas para las expresiones avanzadas. En el orden de aparición en el fichero, significan lo siguiente:
Si los artículos padre e hijo del vínculo de uso son de tipo ABCPart, se filtra el vínculo de uso si la expresión se evalúa como FALSO o SIN DEFINIR.
Si los artículos padre e hijo del vínculo de uso son de los tipos CBSPart y NBCPart, respectivamente, se filtra el vínculo de uso si la expresión se evalúa como FALSO o SIN DEFINIR.
Si el artículo (hijo) del elemento es de tipo ABCPart, se filtra el vínculo de uso si la expresión se evalúa como FALSO.
Si el vínculo de uso es de tipo FOXPartUsageLink, se filtra el vínculo de uso si ni el vínculo de uso ni su artículo hijo tienen una expresión básica o avanzada asignada.
Si una aparición de un vínculo de uso entre los artículos de los tipos CBSPart y NBCPart no tiene una expresión asignada, se filtra la aparición.