Ordering State Machine, exemple

Download sample

L'exemple de commande via un ordinateur d'état est une application qui implémente une solution de traitement des commandes en utilisant des workflows d'ordinateur d'état.

Dans ce type d'application, une commande peut passer par plusieurs états avant d'être traitée. Pour cet exemple, il existe quatre états définis :

  • WaitingForOrderState

  • OrderOpenState

  • OrderProcessedState

  • OrderCompletedState

Dans ce système de saisie des commandes, il existe également des règles qui spécifient quels événements peuvent avoir lieu pour une commande en fonction de son état actuel. Par exemple, une commande qui est en cours peut être mise à jour, traitée, annulée ou expédiée. Toutefois, une commande qui est traitée ne peut être que mise à jour ou expédiée, mais pas annulée. Lorsqu'un événement se produit, le workflow d'ordinateur d'état peut facultativement faire passer une commande vers un nouvel état. Par exemple, lorsqu'une commande est en cours et que l'événement OrderShipped se produit, le workflow d'ordinateur d'état définit l'état terminé pour la commande.

Pour générer l'exemple

  1. Téléchargez l'exemple en cliquant sur Télécharger l'exemple dans cette rubrique.

    L'exemple de projet est alors extrait sur votre disque dur local.

  2. Cliquez sur Démarrer, pointez sur Programmes, puis sur Microsoft Windows SDK et cliquez sur Environnement de commande.

  3. Accédez au répertoire source de l'exemple.

  4. À l'invite de commandes, tapez MSBUILD <Nom du fichier solution>.

Pour exécuter l'exemple

  1. Dans la fenêtre Invite de commandes du Kit de développement SDK, exécutez le fichier .exe dans le dossier OrderApplication\bin\debug (ou le dossier OrderApplication\bin pour la version VB de l'exemple), situé sous le dossier principal de l'exemple.

  2. Entrez une valeur pour le champ OrderId, puis cliquez sur Order Created pour créer une nouvelle instance du workflow et déclencher un événement OrderCreated.

    Vous pouvez répéter ce processus pour créer plusieurs instances du workflow de commande via un ordinateur d'état.

  3. À mesure que vous créez les commandes, vous constatez que la valeur Order State de chaque enregistrement passe rapidement de l'état WaitingForOrderState à l'état OrderOpenState.

  4. Lorsque vous sélectionnez un enregistrement, vous remarquez que seuls les boutons Order Updated et Order Processed sont activés.

  5. Cliquez sur Order Processed pour déclencher un événement OrderProcessed dans le workflow.

  6. Après plusieurs secondes, vous remarquerez que la valeur Order State est devenue OrderProcessedState ; lorsque l'enregistrement est sélectionné, seuls les boutons Order Updated, Order Canceled et Order Shipped sont activés.

Voir aussi

Autres ressources

Tutorial: Create a State Machine Workflow
State Machine Workflows
Exemples de Windows Workflow Foundation

Footer image

Copyright ©2007 par Microsoft Corporation. Tous droits réservés.