Concevoir un modèle de formulaire basé sur une base de données Microsoft Access

S’applique à
InfoPath 2010 InfoPath 2013

Vous pouvez concevoir un modèle de formulaire Microsoft Office InfoPath qui fonctionne avec une base de données Microsoft Office Access pour interroger des données ou interroger et envoyer des données. Vous pouvez concevoir ce modèle de formulaire en fonction d’une base de données Microsoft Office Access 2007 (format .accdb) ou d’une base de données Access enregistrée dans une version antérieure (format .mdb).

Contenu de cet article

Présentation

Un formulaire peut avoir une connexion de données primaire, appelée connexion de données principale, et cette connexion peut éventuellement avoir une ou plusieurs connexions de données secondaires. Vous pouvez utiliser la connexion de données principale pour interroger ou envoyer des données de formulaire à une base de données Access. Vous pouvez également utiliser des connexions de données secondaires pour interroger et envoyer des données à des sources de données externes, à quelques exceptions près. Par exemple, vous pouvez utiliser une connexion de données secondaire à une base de données Access afin qu’elle interroge uniquement la base de données. Vous ne pouvez pas ajouter une connexion de données secondaire à un formulaire qui envoie le répertoire de données de formulaire à une base de données Access.

Lorsque vous concevez un modèle de formulaire basé sur une base de données Access, InfoPath crée une source de données principale avec des groupes qui contiennent des champs de requête et des champs de données, et crée également une connexion de données de requête en tant que connexion de données principale pour le modèle de formulaire. Ces champs et groupes correspondent à la façon dont les données sont stockées dans les tables de la base de données.

Les champs de requête contiennent les données entrées dans le formulaire par un utilisateur pour limiter les résultats de la requête aux enregistrements qui correspondent aux données des champs de requête. Lorsqu’un formulaire basé sur ce modèle de formulaire utilise la connexion de données principale, InfoPath crée une requête à l’aide des données contenues dans les champs de requête. InfoPath envoie ensuite la requête via la connexion de données. La base de données retourne les résultats de la requête au formulaire via la connexion de données. Les résultats de la requête sont placés dans des champs de données, qui peuvent être modifiés via des contrôles du formulaire qui sont liés à ces champs de données.

Étant donné que la structure des données de la requête et les champs de données doivent correspondre à la façon dont les données sont stockées dans la base de données, vous ne pouvez pas modifier ces champs ou groupes dans la source de données principale. Vous pouvez uniquement ajouter des champs ou des groupes au groupe racine dans la source de données principale. Vous trouverez des liens vers plus d’informations sur les sources de données dans la section Voir aussi .

Un formulaire peut envoyer des données à une base de données via la connexion de données principale du formulaire si le modèle de formulaire sur lequel le formulaire est basé et que la base de données répond aux exigences suivantes :

  • Le modèle de formulaire n’est pas un modèle de formulaire compatible avec le navigateur InfoPath ne crée pas de connexion d’envoi de données dans la connexion de données principale si vous concevez un modèle de formulaire compatible avec le navigateur. Pour permettre aux utilisateurs d’envoyer des données dans un formulaire basé sur un modèle de formulaire compatible avec le navigateur, utilisez un service Web qui fonctionne avec la base de données.
  • La table de gauche de chaque paire de tables associées dans la source de données principale contient une clé primaire Au moins une des relations pour chaque paire de tables associées doit inclure une clé primaire de la table de gauche.
  • Aucun des champs de données de la source de données principale du formulaire ne stocke un type de données binaire volumineux InfoPath désactive la connexion d’envoi de données si la requête inclut des champs qui peuvent stocker un type de données binaire volumineux, comme des images, des images, des objets OLE, des pièces jointes de fichiers, le type de données mémo Office Access ou le type de données TEXTE SQL.

Quand InfoPath active une connexion d’envoi de données, les utilisateurs sont autorisés à envoyer à la base de données les données stockées dans les champs de données de la source de données principale. Vous pouvez personnaliser les options d’envoi pour les formulaires basés sur ce modèle de formulaire.

Haut de la page

Considérations en matière de compatibilité

Vous ne pouvez pas concevoir un modèle de formulaire compatible avec le navigateur basé sur une base de données Access.

Haut de la page

Avant de commencer

Avant de pouvoir concevoir un modèle de formulaire basé sur une base de données Access, vous avez besoin des informations suivantes sur la base de données Access :

  • Nom et emplacement de la base de données.

    Remarque

    Vérifiez que votre base de données se trouve dans un emplacement réseau accessible à vos utilisateurs.

  • Nom de la table qui recevra les données envoyées, si votre modèle de formulaire permet aux utilisateurs d’envoyer des formulaires à une base de données. Vous utiliserez cette table comme table principale lorsque vous configurez la connexion d’envoi de données.

  • Nom de la table qui fournit les résultats de la requête envoyée à la base de données, si votre modèle de formulaire interroge uniquement la base de données. Vous utiliserez cette table comme table principale lorsque vous configurez la connexion de données de requête.

  • Les noms des autres tables dont la table principale peut nécessiter des données. Dans la plupart des cas, les relations de table sont déjà établies dans la base de données. Si vous devez établir manuellement les relations entre la table primaire et une autre table, vous aurez besoin des noms de champs associés des deux tables.

Haut de la page

Concevoir le modèle de formulaire

Pour concevoir un modèle de formulaire avec une connexion de données de requête, vous devez d’abord créer le modèle de formulaire. Lorsque vous créez un modèle de formulaire basé sur une base de données, InfoPath crée une connexion de données de requête en tant que connexion de données principale entre le modèle de formulaire et la base de données. Ce processus crée automatiquement la source de données principale du modèle de formulaire.

Après avoir créé le modèle de formulaire, vous devez ajouter un contrôle au modèle de formulaire, puis lier ce contrôle à un champ dans la source de données principale. Cela permet à vos utilisateurs de voir les résultats de la requête dans le formulaire.

Étape 1 : Créer le modèle de formulaire

  1. Dans le menu Fichier , cliquez sur Concevoir un modèle de formulaire.

  2. Dans la boîte de dialogue Concevoir un modèle de formulaire , sous Concevoir un nouveau, cliquez sur Modèle de formulaire.

  3. Dans la liste Basé sur , cliquez sur Base de données, puis sur OK.
    L’Assistant Connexion de données démarre

  4. Dans la première page de l’Assistant Connexion de données, cliquez sur Sélectionner une base de données.

  5. Dans la boîte de dialogue Sélectionner une source de données , accédez à l’emplacement de votre base de données.

    Remarque

    Si votre base de données est stockée dans un emplacement réseau, accédez au chemin d’accès UNC (Universal Naming Convention) de cet emplacement. N’accédez pas à l’emplacement réseau via un lecteur réseau mappé. Si vous utilisez un lecteur réseau mappé, les utilisateurs qui créent des formulaires basés sur ce modèle de formulaire recherchent la base de données à partir d’un lecteur réseau mappé. Si l’utilisateur n’a pas de lecteur réseau mappé, le formulaire ne trouve pas la base de données.

  6. Cliquez sur le nom de votre base de données, puis sur Ouvrir.

  7. Dans la boîte de dialogue Sélectionner une table , cliquez sur la table ou la requête principale que vous souhaitez utiliser, puis cliquez sur OK.

  8. Dans la page suivante de l’Assistant, sélectionnez la zone Afficher les colonnes de la table case activée.

  9. Par défaut, tous les champs de la table sont ajoutés à la source de données principale du modèle de formulaire. Désactivez les zones case activée pour les champs que vous ne souhaitez pas inclure dans la source de données principale.
    Ajoutez toutes les tables ou requêtes supplémentaires que vous souhaitez utiliser dans la connexion de données de requête.
    Comment?

    1. Cliquez sur Ajouter une table.
    2. Dans la boîte de dialogue Ajouter une table ou une requête , cliquez sur le nom de la table enfant, puis sur Suivant. InfoPath tente de définir les relations en faisant correspondre des noms de champs dans les deux tables. Si vous ne souhaitez pas utiliser la relation suggérée, sélectionnez la relation, puis cliquez sur Supprimer la relation. Pour ajouter une relation, cliquez sur Ajouter une relation. Dans la boîte de dialogue Ajouter une relation , cliquez sur le nom de chaque champ associé dans la colonne correspondante, puis cliquez sur OK.
    3. Cliquez sur Terminer.
    4. Pour ajouter des tables enfants supplémentaires, répétez ces étapes.
  10. Cliquez sur Suivant.

  11. Dans la dernière page de l’Assistant, tapez un nom pour la connexion de données principale. Ce nom apparaît dans la liste Source de données du volet Office Source de données .

  12. Si votre modèle de formulaire répond aux exigences de la section Vue d’ensemble , la section Résumé de cette page de l’Assistant indique qu’InfoPath a activé la connexion d’envoi de données dans la connexion de données principale.

  13. Pour modifier le nom de la connexion de données d’envoi, tapez un nouveau nom dans la zone appropriée.

  14. Pour permettre à vos utilisateurs d’envoyer leurs données de formulaire par le biais d’une autre connexion d’envoi de données que vous ajouterez ultérieurement au modèle de formulaire, désactivez la case à cocher Activer l’envoi pour cette connexion case activée.

    Remarque

    Si votre modèle de formulaire ne répond pas aux exigences de la section Vue d’ensemble, InfoPath désactive la connexion d’envoi de données, et la zone Entrer un nom pour l’envoi de la connexion et la zone Activer l’envoi pour cette connexion case activée ne sont pas disponibles. Si InfoPath désactive la connexion d’envoi de données, la connexion de données principale pour votre modèle de formulaire contient uniquement une connexion de données de requête.

Étape 2 : Lier un contrôle au champ

  1. Si le volet Office Contrôles n’est pas visible, cliquez sur Autres contrôles dans le menu Insertion, ou appuyez sur Alt+I, C.
  2. Faites glisser un contrôle sur votre modèle de formulaire.
  3. Dans la boîte de dialogue Liaison de contrôle, sélectionnez le champ auquel vous souhaitez lier le contrôle.

Haut de la page

Configurer les options d’envoi

Si votre modèle de formulaire et les tables que vous avez sélectionnées dans l’Assistant Connexion de données répondent aux exigences de la section Vue d’ensemble , InfoPath configure votre modèle de formulaire pour envoyer des données à l’aide de sa connexion de données principale.

Si vous choisissez d’utiliser cette connexion d’envoi de données, InfoPath configure le modèle de formulaire afin que les utilisateurs puissent envoyer leurs données de formulaire à la base de données, et ajoute également un bouton Envoyer à la barre d’outils Standard et une commande Envoyer au menu Fichier du formulaire. InfoPath configure également le modèle de formulaire de sorte que lorsque les utilisateurs envoient leurs formulaires, le formulaire reste ouvert et qu’un message s’affiche pour indiquer si le formulaire a été envoyé avec succès. Vous pouvez modifier le texte qui s’affiche sur le bouton Envoyer et également modifier le comportement d’un formulaire après qu’un utilisateur l’a envoyé.

  1. Dans le menu Outils , cliquez sur Options d’envoi.

    1. Pour modifier le nom du bouton Envoyer qui apparaît dans la barre d’outils Standard et la commande Envoyer qui apparaît dans le menu Fichier lorsque les utilisateurs remplissent le formulaire, tapez le nouveau nom dans la zone Légende de la boîte de dialogue Options d’envoi.

      Conseil

      Si vous souhaitez affecter un raccourci clavier à ce bouton et à cette commande, tapez une esperluette (&) devant le caractère que vous souhaitez utiliser comme raccourci clavier. Par exemple, pour affecter ALT+B comme raccourci clavier pour le bouton et la commande Envoyer , tapez Su&bmit.

  2. Si vous ne souhaitez pas que les utilisateurs utilisent une commande Envoyer ou le bouton Envoyer dans la barre d’outils Standard lorsqu’ils remplissent votre formulaire, décochez la zone afficher l’élément de menu Envoyer et le bouton de barre d’outils Envoyer case activée.

    1. Par défaut, une fois que les utilisateurs ont envoyé un formulaire, InfoPath conserve le formulaire ouvert et affiche un message pour indiquer si le formulaire a été envoyé avec succès. Pour modifier ce comportement par défaut, cliquez sur Avancé, puis effectuez l’une des opérations suivantes :

      • Pour fermer le formulaire ou créer un formulaire vide une fois que l’utilisateur a envoyé un formulaire rempli, cliquez sur l’option souhaitée dans la liste Après l’envoi .

      • Pour créer un message personnalisé afin d’indiquer si le formulaire a été envoyé avec succès, sélectionnez la zone Utiliser les messages personnalisés case activée, puis tapez vos messages dans les zones En cas de réussite et En cas d’échec.

        Conseil

        Utilisez un message dans la zone En cas d’échec pour indiquer aux utilisateurs ce qu’ils doivent faire s’ils ne peuvent pas envoyer leur formulaire. Par exemple, vous pouvez suggérer aux utilisateurs d’enregistrer leur formulaire et de contacter une personne pour obtenir des instructions supplémentaires.

      • Si vous ne souhaitez pas afficher de message une fois que l’utilisateur a envoyé un formulaire, désactivez la zone Afficher les messages de réussite et d’échec case activée.

Haut de la page