Partager via


Création d'une contrainte d'expression pour un composant de produit

Mise à jour : June 19, 2013

S'applique à: Microsoft Dynamics AX 2012 R3, Microsoft Dynamics AX 2012 R2, Microsoft Dynamics AX 2012 Feature Pack

Cette rubrique décrit comment créer les contraintes d'expression pour les composants d'un modèle de configuration de produit dans Microsoft Dynamics AX. Les contraintes contrôlent les valeurs d'attribut disponibles pour les composants lorsque vous configurez un produit pour un devis de vente, une commande fournisseur ou un ordre de fabrication. Vous pouvez utiliser les types de contraintes suivants :

  • Contraintes d'expression

  • Contraintes de table

Les contraintes de table et les contraintes d'expression diffèrent dans leur construction. Toutefois, le type de contrainte utilisée n'a aucun impact sur la manière dont vous configurez réellement un produit. Pour plus d'informations sur la différence entre les types de contraintes, voir la rubrique Contraintes d'expression et contraintes de table.

Pour plus d'informations sur la création de contraintes de table, voir la rubrique Créez une contrainte de table.

Création d'un contrainte d'expression

Les contraintes d'expression sont caractérisées par une expression utilisant l'arithmétique, les opérateurs booléens et les fonctions. Une contrainte d'expression est entrée pour un composant spécifique dans un modèle de configuration de produit. Elle ne peut pas être réutilisée par ou partagée avec un autre composant. Toutefois, les contraintes d'expression pour un composant peuvent référencer des attributs des sous-composants du composant. Vous utilisez des contraintes pour contrôler les valeurs d'attribut que vous pouvez utiliser lorsque vous configurez des produits pour une commande client, un devis de vente, une commande fournisseur ou un ordre de fabrication.

Vous pouvez utiliser l'éditeur d'expression pour créer des contraintes d'expression ou vous pouvez simplement les saisir en utilisant la syntaxe OML des attributs. Utilisez Microsoft Solver Foundation pour résoudre les contraintes. Vous devez utiliser la syntaxe du langage de modélisation d'optimisation (OML) lorsque vous entrez les contraintes. Pour plus d'informations, voir Microsoft Solver Foundation.

Procédez comme suit pour créer une contrainte d'expression à l'aide de l'éditeur d'expression :

  1. Cliquez sur Gestion d'informations sur les produits > Courant > Modèles de configuration de produit.

  2. Dans l'arborescence de composants, sélectionnez le composant pour lequel entrer une contrainte d'expression.

  3. Sélectionnez un modèle de configuration de produit, puis cliquez sur Modifier.

  4. Dans l'écran Détails du modèle de configuration de produits basée sur les contraintes, dans l'organisateur Contraintes, cliquez sur Ajouter pour ajouter une nouvelle contrainte.

  5. Dans le champ Type de contrainte, sélectionnez Contrainte d'expression, puis cliquez sur Créer.

  6. Dans le champ Expression, cliquez sur la flèche déroulante ou appuyez sur Alt et la flèche vers le bas.

  7. Dans l'écran Éditeur de contrainte d'expression, sous l'onglet Tous les symboles, double-cliquez sur un symbole ou appuyez sur Entrer pour entrer le symbole dans le champ Expression.

  8. Utilisez la même méthode pour ajouter des attributs, des opérateurs et des valeurs à l'expression. Pour plus d'informations sur l'utilisation des attributs, des opérateurs et des valeurs, voir la rubrique Contraintes d'expression et contraintes de table.

  9. Cliquez sur Contrôler la saisie pour valider la contrainte, puis cliquez sur OK pour fermer l'écran Éditeur de contrainte d'expression.

Procédez comme suit pour créer une contrainte d'expression sans l'aide de l'éditeur d'expression :

  1. Cliquez sur Gestion d'informations sur les produits > Courant > Modèles de configuration de produit.

  2. Dans l'arborescence de composants, sélectionnez le composant pour lequel entrer une contrainte d'expression.

  3. Sélectionnez un modèle de configuration de produit, puis cliquez sur Modifier.

  4. Dans l'écran Détails du modèle de configuration de produits basée sur les contraintes, dans l'organisateur Contraintes, cliquez sur Ajouter pour ajouter une nouvelle contrainte.

  5. Dans le champ Type de contrainte, sélectionnez Contrainte d'expression, puis cliquez sur Créer.

  6. Dans le champ Expression, entrez l'expression. Vérifiez que les attributs que vous entrez sont conformes à la syntaxe OML définie pour les types d'attributs. Reportez-vous à la table dans la section suivante pour un exemple d'écriture des attributs à l'aide de la syntaxe OML.

  7. Cliquez sur Contrôler la saisie pour contrôler la contrainte.

Exemple de contrainte d'expression

Cet exemple décrit comment vous pouvez limiter la configuration d'une télévision à des tailles et types spécifiques pour une offre saisonnière.

Une télévision à projection doit avoir une taille d'écran supérieure ou égale à 50 pouces, deux ou quatre ports USB et un cadre noir. Les types d'attributs suivants sont créés dans le modèle de configuration de produit. Le nom de solveur est le nom du type d'attribut entré à l'aide de la syntaxe OML.

Nom

Nom de solveur

Tapez

Type d'écran

screenType

Entier avec une plage

Ports USB

usbPorts

Texte avec une liste fixe

Couleur du cadre

frameColor

Texte avec une liste fixe

L'expression ressemble à cela :

screenType == “Projection” -: (screenSize >= 50

(& usbPorts == “two” | usbPorts == “four”)

& frameColor == “black”)

Cette contrainte d'expression utilise l'opérateur Implies, -:, et comporte les deux parties suivantes :

  • La partie à gauche de l'opérateur d'implication accède à l'attribut screenType et prend la valeur « True » si le type d'écran prend la valeur « Projection ».

  • La partie à droite de l'opérateur d'implication est une conjonction d'expressions booléennes, qui vérifie les opérations suivantes :

    • L'attribut screenSize est supérieur ou égal à 50 pouces.

    • Le nombre de ports USB est deux ou quatre.

    • La couleur est noire.

Cette conjonction est évaluée sur « True » si toutes les expressions intérieures sont satisfaites. Si nous considérons l'expression entière, une implication telle que « A -: B » est satisfaite si :

  • A est évalué sur « True ». Alors B doit avoir la valeur « True ».

  • A est évalué sur « False ». Alors B doit avoir la valeur « True » ou « False ».

Puisqu'il s'agit d'une contrainte et non d'une règle, le moteur de solveur n'attend aucune modification à gauche de l'expression avant de l'évaluer. Au lieu de cela, le moteur de solveur s'assure que l'expression est toujours satisfaite. Dans cet exemple, si les attributs de la télévision ne satisfont pas l'expression booléenne, il ne peut pas s'agir d'une télévision à projection.

Tâches connexes

Créez une contrainte de table

Informations destinées aux administrateurs système

Si vous n'avez pas accès aux pages qui vous permettent d'effectuer cette tâche, contactez votre administrateur système et fournissez les informations répertoriées dans le tableau suivant.

Catégorie

Logiciel requis

Clés de configuration

Aucune clé de configuration n'est requise pour cette tâche.

Rôles de sécurité

Pour utiliser l'éditeur d'expressions, vous devez être membre du rôle de sécurité Concepteur de produits (BOMProductDesigner).

Voir aussi

À propos des modèles de configuration de produit

À propos des contraintes de table définies par l'utilisateur et par le système.

Contraintes d'expression et contraintes de table