Les sections suivantes montrent comment utiliser le formulaire de commandes et comment le programmer. Les noms d’objets sont fournis afin que vous puissiez facilement les examiner dans la base de données Northwind 2.0 Starter Edition.
Les informations suivantes résument les points importants relatifs à l’utilisation du formulaire :
-
Le menu principal (frmMainMenu) contient une liste de commandes, quelques options de filtre et des liens hypertexte pour ouvrir chaque commande.
-
Cliquez sur le bouton Ajouter une commande pour ouvrir une nouvelle commande vide.
-
Dans le formulaire détails de la commande (frmOrderDetails), sélectionnez un client existant dans la liste déroulante. À ce stade, votre nom d’employé et le nouveau status sont sélectionnés. La date de commande est déjà renseignée. Laissez les champs Date d’expédition et Date de paiement vides pour l’instant.
-
Pour ajouter une commande pour un nouveau client, créez l’enregistrement client avant d’ouvrir le formulaire de détails de commande (frmOrderDetails).
-
Pour ajouter des éléments à une commande, sélectionnez un Produit pour cette commande, puis entrez Quantité. Unit Price est renseigné et price est calculé par une expression.
-
Pour avancer l’état de la commande et déplacer la commande dans le flux de travail à partir de Nouveau —> Facturé —> Expédié —> Fermé, utilisez les boutons en haut du formulaire de détails de la commande (frmOrderDetails).
-
Les commandes non commandées peuvent être supprimées à l’aide du bouton Supprimer la commande .
-
Le processus de commande dans Northwind 2.0 Starter Edition est simple par conception. L’hypothèse est qu’il y a toujours des stocks disponibles, qu’il n’est jamais à court et qu’il n’est jamais nécessaire d’acheter. Un processus plus réaliste permettrait de résoudre ces problèmes courants.
Les informations suivantes résument les points importants sur la façon dont le formulaire a été développé.
-
Le formulaire de détails de commande (frmOrderDetails) obtient ses données à partir d’une requête simple (qryOrder) spécifiée dans la propriété RecordSource du formulaire. Il est recommandé de baser un formulaire d’entrée de données sur une seule requête de table. Notez qu’il n’est pas nécessaire d’inclure la table OrderDetails dans cette requête.
-
Les différents champs d’ID obtiennent leurs valeurs à partir de zones de liste déroulante à deux colonnes : une colonne ID masquée et une colonne Description visible. Ces zones de liste déroulante sont liées à des requêtes à deux colonnes spécifiées dans la propriété RowSource .
-
Le sous-formulaire, sfrmOrderDetails, est lié à une seule requête de table. La liste déroulante ProductID fonctionne comme d’autres listes déroulantes d’ID. Les lignes du sous-formulaire sont limitées à l’ordre actuel en définissant les propriétés LinkMasterFields et LinkChildFields du contrôle de sous-formulaire.
-
Ce formulaire comporte également une macro BeforeInsert qui s’exécute lorsqu’un enregistrement est créé, et définit les paramètres Employee et Status. En règle générale, cela se produit lorsque vous sélectionnez un client. TempVars ! UserID contient l’UserID de l’utilisateur connecté capturé à partir du formulaire frmLogin. Notez que ces macros ne se trouvent pas dans la section Macros du volet de navigation, mais dans l’onglet Événements de la fenêtre Propriétés .
-
L’événement AfterInsert de ce formulaire comporte une macro qui s’exécute lorsque le nouvel enregistrement est enregistré. Il met ensuite à jour les décomptes dans le volet de navigation gauche du menu main.