Comment utiliser un script ou un champ de source de données secondaire pour la mise en forme conditionnelle dans InfoPath

Traductions disponibles Traductions disponibles
Numéro d'article: 827008 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

Cet article explique comment utiliser un script pour une expression mise en forme conditionnelle et comment utiliser un champ dans une source de données secondaire pour une expression mise en forme conditionnelle. Vous utilisez soit le script ou le champ dans la source de données secondaire dans un formulaire Microsoft Office InfoPath 2007 ou dans un formulaire Microsoft Office InfoPath 2003.

Pour utiliser soit une fonction de script avec la mise en forme conditionnelle ou un champ de source de données secondaire avec la mise en forme conditionnelle, vous sélectionnez l'expression pour le type de condition.

Une expression qui fait référence à un champ dans une source de données secondaire contient syntaxe qui est semblable à la suivante :

docRootNode1Node2 = my:myField1

Dans cette syntaxe, les espaces réservés sont les suivantes :
  • DataSourceName fait référence le nom qui vous donnent à la source de données secondaire.
  • docRoot est la racine document XML.
  • Node1 et Node2 sont des n?uds qui sont contenus dans le code XML. Node2 est un enfant de Node1.
  • my:myField1 Désigne un champ dans la source de données principale de votre formulaire.
Dans cet exemple particulier, l'instruction de mise en forme conditionnelle vérifie la valeur texte de Node2 dans la source de données secondaire par rapport à my:myField1 dans la source de données principale, puis appliquer le format que vous sélectionné si les deux valeurs correspondent.

De même, pour appeler une fonction de script de l'expression de mise en forme conditionnelle, vous pouvez utiliser le préfixe xdExtension qui est lié à l'espace de noms http://schemas.microsoft.com/office/infopath/2003/xslt/extension.

Créer un nouveau formulaire

Cet exemple explique comment créer un format conditionnel utilise deux types d'expression.

Pour InfoPath 2003

  1. Démarrez InfoPath 2003. Créer un formulaire nouveau et vierge.
  2. Sélectionner la source de données le volet Office. Pour ajouter des champs à votre formulaire, procédez comme suit :
    1. Dans le volet Office Source de données, cliquez avec le bouton droit sur myFields , puis cliquez sur Ajouter .
    2. Dans la boîte de dialogue Ajouter un champ ou un groupe , tapez myExpenses . Dans la liste déroulante Type , sélectionnez groupe . Sélectionnez l'option extensible , puis cliquez sur OK .
    3. Dans le volet Office Source de données, cliquez avec le bouton droit sur myExpenses , puis cliquez sur Ajouter .
    4. Dans la boîte de dialogue Ajouter un champ ou un groupe , tapez ExpenseName et puis cliquez sur OK .
    5. Dans le volet Office Source de données, cliquez avec le bouton droit sur myExpenses , puis cliquez sur Ajouter .
    6. Dans la boîte de dialogue Ajouter un champ ou un groupe , tapez ExpenseValue . Dans la liste des types de données, sélectionnez Décimal (double) , puis cliquez sur OK .
  3. Déplacer le groupe myExpenses dans le volet Office Source de données à votre formulaire, puis cliquez sur tableau extensible .

Pour InfoPath 2007

  1. Démarrez InfoPath 2007.
  2. Dans le volet gauche de la boîte de dialogue Mise en route , cliquez sur Créer un modèle de formulaire .
  3. Dans le champ Créer une fenêtre de modèle de formulaire, cliquez sur vide et puis cliquez sur OK .
  4. Dans le volet Office Tâches de création, cliquez sur la source de données , puis ajouter des champs au formulaire. Pour ajouter des champs à l'écran, procédez comme suit :
    1. Dans le volet Office Source de données, cliquez avec le bouton droit sur myFields , puis cliquez sur Ajouter .
    2. Dans la boîte de dialogue Ajouter un champ ou un groupe , tapez myExpenses .
    3. Dans le champ Type , cliquez sur groupe .
    4. Cliquez sur répétition , puis cliquez sur OK .
    5. Dans le volet Office Source de données, cliquez avec le bouton droit sur myExpenses , puis cliquez sur Ajouter .
    6. Dans la boîte de dialogue Ajouter un champ ou un groupe , tapez ExpenseName et puis cliquez sur OK .
    7. Dans le volet Office Source de données, cliquez avec le bouton droit sur myExpenses , puis cliquez sur Ajouter .
    8. Dans la boîte de dialogue Ajouter un champ ou un groupe , tapez ExpenseValue .
    9. Dans la liste des types de données, cliquez sur Décimal (double) , puis cliquez sur OK .

Utiliser un script pour la mise en forme conditionnelle

Pour InfoPath 2003

  1. Dans le menu Outils , pointez sur script , puis cliquez sur Microsoft Script Editor .
  2. Ajoutez la fonction suivante dans la fenêtre de code :
    function CheckItem()
    {
        return "Airfare";
    }
  3. Enregistrez le script, puis fermez l'éditeur de script.
  4. Sur votre formulaire, cliquez avec le bouton droit sur la zone de texte pour le champ ExpenseName , puis cliquez sur Propriétés-Zone de texte .
  5. Dans la boîte de dialogue Propriétés-Zone de texte , cliquez sur l'onglet Affichage , puis cliquez sur Mise en forme conditionnelle .

    La boîte de dialogue Mise en forme conditionnelle s'affiche.
  6. Cliquez sur Ajouter .

    La boîte de dialogue Mise en forme conditionnelle s'affiche.
  7. Dans la boîte de dialogue Mise en forme conditionnelle , sélectionnez l'expression dans la liste déroulante, puis puis tapez la condition suivante dans la zone de texte :

    Mon : ExpenseName = xdExtension:CheckItem()

    Cliquez sur gras , puis cliquez sur OK .
  8. Cliquez sur OK pour fermer la boîte de dialogue Mise en forme conditionnelle .
  9. Cliquez sur OK pour fermer la boîte de dialogue Propriétés-Zone de texte .
  10. Cliquez sur Aperçu du formulaire . Pour tester le formulaire, procédez comme suit :
    1. Entrez le nom dépenses logement . Entrez le montant de 250 .
    2. Appuyez sur CTRL + ENTRÉE pour ajouter une nouvelle ligne.
    3. Entrez le nom dépenses prix d'un billet d'avion . Saisissez le montant 700 .

      note Seul le nom dépenses sur la deuxième ligne est en gras parce que le nom dépenses est égal à prix d'un billet d'avion et prix d'un billet d'avion est la valeur de texte qui est renvoyée à partir de la fonction CheckItem .

Pour InfoPath 2007

  1. Dans le menu Outils , pointez sur programmation , puis cliquez sur Microsoft Script Editor .
  2. Ajoutez la fonction suivante à la fenêtre. code
    function CheckItem()
    {
        return "Airfare";
    }
  3. Dans le menu Fichier , cliquez sur Enregistrer .
  4. Dans le menu Fichier , cliquez sur Quitter .
  5. Dans l'écran, cliquez avec le bouton droit sur la zone de texte pour le champ ExpenseName , puis cliquez sur Propriétés-Zone de texte .
  6. Dans la boîte de dialogue Propriétés-Zone de texte , cliquez sur l'onglet Affichage , puis cliquez sur Mise en forme conditionnelle .

    La boîte de dialogue Mise en forme conditionnelle s'affiche.
  7. Cliquez sur Ajouter .

    La boîte de dialogue Mise en forme conditionnelle s'affiche.
  8. Dans la boîte de dialogue Mise en forme conditionnelle , cliquez sur l'expression dans la liste, puis puis tapez la condition suivante dans la zone :
    Mon : ExpenseName = xdExtension:CheckItem()
  9. Cliquez sur gras , puis cliquez sur OK .
  10. Pour fermer la boîte de dialogue Mise en forme conditionnelle , cliquez sur OK .
  11. Pour fermer la boîte de dialogue Propriétés-Zone de texte , cliquez sur OK .
  12. Dans le menu Fichier , cliquez sur Aperçu , puis cliquez sur le formulaire .
  13. Pour tester le formulaire, procédez comme suit :
    1. Entrez le nom dépenses logement .
    2. Entrez le montant de 250 .
    3. Pour ajouter une nouvelle ligne, appuyez sur CTRL + ENTRÉE.
    4. Entrez le nom dépenses prix d'un billet d'avion .
    5. Saisissez le montant 700 .

      note Seul le nom dépenses sur la deuxième ligne est en gras parce que le nom dépenses est égal à prix d'un billet d'avion et prix d'un billet d'avion est la valeur de texte qui est renvoyée à partir de la fonction CheckItem .

Utiliser un champ dans une source de données secondaire pour la mise en forme conditionnelle

  1. Utiliser un éditeur XML ou un éditeur de texte tel que le Bloc-notes pour créer un fichier XML avec la valeur suivante :
    <?xml version="1.0"?>
    <ExpenseRequirements>
    	<RequiresReceipt>75.00</RequiresReceipt>
    </ExpenseRequirements>
    Nommez le fichier ExpenseRequirements.xml .
  2. Pour ajouter ExpenseRequirements.xml comme une source de données secondaire pour votre formulaire, procédez comme suit :
    1. Dans le menu Outils , cliquez sur Convertir la source de données principale .

      L'Assistant source de données s'affiche.
    2. Cliquez sur Parcourir .

      La boîte de dialogue Ouvrir s'affiche.
    3. Atteindre ExpenseRequirements.xml, puis cliquez sur Ouvrir .
    4. Cliquez sur suivant , puis cliquez sur Terminer pour terminer l'Assistant Configuration de la source de données.
  3. Cliquez avec le bouton droit sur le tableau extensible sur votre formulaire, puis cliquez sur Propriétés du tableau extensible .
  4. Dans la boîte de dialogue Propriétés du tableau extensible , sélectionnez l'onglet Affichage , puis cliquez sur Mise en forme conditionnelle .

    La boîte de dialogue Mise en forme conditionnelle s'affiche.
  5. Cliquez sur Ajouter .

    La boîte de dialogue Mise en forme conditionnelle s'affiche.
  6. Dans la boîte de dialogue Mise en forme conditionnelle , sélectionnez l'expression dans la liste déroulante. Tapez la condition suivante dans la zone de texte :

    Mon : ExpenseValue > XdXDocument:GetDOM("ExpenseRequirements")/ExpenseRequirements/RequiresReceipt

    Dans la liste déroulante Couleur d'arrière-plan , sélectionnez la couleur rouge, puis cliquez sur OK .
  7. Cliquez sur OK pour fermer la boîte de dialogue Mise en forme conditionnelle .
  8. Cliquez sur OK pour fermer la boîte de dialogue Propriétés du tableau extensible .
  9. Cliquez sur Aperçu du formulaire .
  10. Pour tester le formulaire, procédez comme suit :
    1. Entrez le nom dépenses service . Saisissez la quantité 25 .
    2. Appuyez sur CTRL + ENTRÉE pour ajouter une nouvelle ligne.
    3. Entrez le nom dépenses dîner . Entrez le montant 80 .

      note Uniquement la ligne deuxième est mise en forme avec un arrière-plan rouge parce que la valeur dépenses dépasse 75.

Propriétés

Numéro d'article: 827008 - Dernière mise à jour: mardi 30 janvier 2007 - Version: 2.2
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Office InfoPath 2007
  • Microsoft Office InfoPath 2003, Service Pack 1 (SP1)
  • Microsoft Office InfoPath 2003
Mots-clés : 
kbmt kbhowtomaster KB827008 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 827008
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com