Administration spécialisée > Personnalisation des objets métier > Administration des règles d'initialisation d'un objet > Utilisation des règles d'initialisation d'un objet > Algorithmes de règle > Algorithmes de contrainte
  
Algorithmes de contrainte
Utilisez les algorithmes de contrainte pour définir les caractéristiques d'affichage dans un champ de l'interface utilisateur pour l'attribut identifié dans la balise AttrConstraint.
Windchill fournit de manière standard les algorithmes de contrainte suivants (les noms s'affichent sur plusieurs lignes dans le tableau ; entrez le nom de l'algorithme sur une ligne) :
Algorithme
Description
com.ptc.core.rule.server.impl.
GetHiddenConstraint
L'interface utilisateur n'affiche pas de libellé ou de valeur pour l'attribut.
com.ptc.core.rule.server.impl.
GetDiscreteSetConstraint
L'interface utilisateur autorise la sélection de l'attribut dans une liste de valeurs, où le type d'argument correspond au type de l'attribut. Les valeurs sont spécifiées en tant qu'arguments de l'algorithme.
com.ptc.core.foundation.lifecycle.server.impl.
DiscreteLifecycleTemplateSetAlgorithm
L'interface utilisateur autorise la sélection de la valeur de l'attribut lifeCycle.id parmi une liste de valeurs de modèle de cycle de vie. Les valeurs sont spécifiées en tant qu'arguments de l'algorithme.
com.ptc.core.foundation.team.server.impl.
DiscreteTeamTemplateSetAlgorithm
L'interface utilisateur autorise la sélection de la valeur de l'attribut teamTemplace.id parmi une liste de valeurs de modèle d'équipe. Les valeurs sont spécifiées en tant qu'arguments de l'algorithme.
com.ptc.core.rule.server.impl.
GetImmutableConstraint
L'utilisateur ne peut pas modifier la valeur de l'attribut affichée. Si un attribut ayant une autre contrainte n'a pas celle-ci, l'utilisateur est autorisé à entrer manuellement une valeur. Pour plus d'informations, reportez-vous à la section Examples using GetServerAssignedConstraint and GetImmutableConstraint.
com.ptc.core.rule.server.impl.
GetServerAssignedConstraint
L'interface utilisateur n'affiche pas de valeur pour l'attribut ; la valeur est générée lorsque l'utilisateur clique sur OK pour enregistrer l'instance de l'objet. Le texte affiché à la place de la valeur est semblable à (Généré). Pour plus d'informations, reportez-vous à la section Examples using GetServerAssignedConstraint and GetImmutableConstraint.
com.ptc.core.rule.server.impl.
GetServerPreGeneratedValue
L'interface utilisateur affiche une valeur pour l'attribut. La valeur est générée avant que l'interface utilisateur ne s'affiche. La valeur affichée est spécifiée en tant qu'argument de cet algorithme ; si elle n'est pas spécifiée, on l'obtient en exécutant la balise AttrValue correspondante pour l'attribut donné.
* 
Pour les attributs number dont la valeur par défaut est générée de façon séquentielle, cette contrainte permet d'annuler l'utilisation de certains numéros de la séquence. Le fait d'ignorer des numéros se produit lorsqu'un utilisateur accède à l'interface, puis annule l'opération avant de procéder à l'enregistrement. Il est ensuite impossible de récupérer les numéros ignorés.
Pour plus d'informations, reportez-vous à la section Folder Constraints Example using GetServerPreGeneratedValue.
Par exemple, utilisez le code XML suivant pour spécifier l'algorithme de contrainte qui génère une valeur d'attribut affichée dans le champ :
algorithm="com.ptc.core.rule.server.impl.GetServerPreGeneratedValue"
Vous spécifiez les algorithmes de contrainte dans la balise AttrConstraint que vous imbriquez dans les balises Value sous l'algorithme com.ptc.core.rule.server.impl.GatherAttributeConstraints, comme expliqué dans la rubrique Syntaxe de la balise AttrConstraint.
Grâce à l'utilisation d'algorithmes de contrainte fournis, vous pouvez spécifier zéro, un ou plusieurs algorithmes dans les balises Value.