Comment faire : Envoyer un formulaire InfoPath à une bibliothèque de documents SharePoint Team Services par programmation

Traductions disponibles Traductions disponibles
Numéro d'article: 826993 - Voir les produits auxquels s'applique cet article
Cet article peut contenir des liens vers des informations en langue anglaise (pas encore traduites).
Agrandir tout | Réduire tout

Sommaire

Résumé

Cet article décrit étape par étape comment créer un modèle de formulaire utilisant un script pour envoyer des données de formulaire à une bibliothèque de documents Microsoft SharePoint Team Services.

Création de la source de données et de la présentation d'un formulaire

  1. Démarrez Microsoft Office InfoPath. Créez un formulaire vierge.
  2. Dans le volet Office Source de données, ajoutez une source de données à votre formulaire. Pour cela, procédez comme suit :
    1. Cliquez avec le bouton droit sur mesChamps, puis cliquez sur Ajouter.

      La boîte de dialogue Ajouter un champ ou un groupe s'affiche.
    2. Pour le nom du champ, tapez Prénom, puis cliquez sur OK.
    3. Répétez l'étape a. Pour le nom du champ, tapez InitialeDeuxièmePrénom, puis cliquez sur OK.
    4. Répétez l'étape a. Pour le nom du champ, tapez Nom, puis cliquez sur OK.
  3. Faites glisser mesChamps sur votre formulaire.
  4. Cliquez sur Section avec contrôles.

Ajout d'un script pour l'envoi de données de formulaire vers une bibliothèque de documents SharePoint

  1. Dans le menu Outils, cliquez sur Envoi de formulaires.

    La boîte de dialogue Envoi de formulaires apparaît.
  2. Dans la boîte de dialogue Envoi de formulaires, cliquez sur Autoriser l'envoi.
  3. Dans la liste déroulante Envoyer, cliquez sur Envoyer au moyen d'un script personnalisé.
  4. Cliquez sur Ouvrir Microsoft Script Editor, puis sur OK.

    Microsoft Script Editor s'ouvre.
  5. Modifiez l'événement OnSubmitRequest comme suit :

    Remarque Vous devez remplacer la valeur de la variable strURL dans le code par une URL valide. L'URL dans le code ci-dessous fait référence à un serveur appelé ServerName, un site SharePoint appelé SiteName et une bibliothèque de documents intitulée DocumentLibraryName.
    function XDocument::OnSubmitRequest(eventObj)
    {
        // If the submit operation is successful, set
        // eventObj.ReturnStatus = true
        var fSuccessful = false;
     
        // Set the URL of the file that you want to submit here.
        var strUrl = "http://ServerName/SiteName/DocumentLibraryName/testform.xml";
     
        try 
        { 
            // Create an xmlhttp object.
            var oXmlHttp = new ActiveXObject("MSXML2.XMLHTTP");
     
            // Check whether the document with the same name already exists on SharePoint Team Services (STS).
            oXmlHttp.Open("HEAD", strUrl, false); 
            oXmlHttp.Send(); 
     
            //  No document with the URL has been found. Continue to submit.
            // If you must replace the original file, you must call
            // oXmlHttp.Open("DELETE", strUrl, false) to delete the document 
            // on STS first.
            if (oXmlHttp.Status == 404) 
            {
                // Put the document on STS. 
                oXmlHttp.Open("PUT", strUrl, false); 
                oXmlHttp.Send(XDocument.DOM.xml);
     
                //  A 200 status code or a 201 status code indicates that the form has been submitted successfully.
                if (oXmlHttp.Status == 200 || oXmlHttp.Status == 201)
                {
                    fSuccessful = true;
                }
            }
        } 
        catch (ex){} 
        
        if (fSuccessful)
        {
            XDocument.UI.Alert("Document submitted successfully!"); 
            eventObj.ReturnStatus = true;
        }
        else
        {
            eventObj.ReturnStatus = false;
        }
    }
    
  6. Enregistrez le script, puis fermez Microsoft Script Editor.
  7. Enregistrez votre modèle de formulaire sous le nom EnvoyerSTS.xsn.

Test du formulaire

  1. Dans le menu Fichier, cliquez sur Remplir un formulaire.
  2. Dans le volet Office Remplir un formulaire, cliquez sur EnvoyerSTS.
  3. Remplissez le formulaire.
  4. Dans le menu Fichier, cliquez sur Envoyer.

    Si l'envoi du formulaire a réussi, un message vous l'indiquant s'affiche.
  5. Fermez InfoPath. Si vous êtes invité à enregistrer les modifications apportées à un formulaire, cliquez sur Non.
  6. Démarrez Microsoft Internet Explorer, puis consultez votre bibliothèque de formulaires de documents. Par exemple, consultez http://nom_serveur/nom_site/nom_bibliothèque_documents.

    Un nouvel élément intitulé testform se trouve dans la bibliothèque de documents.
  7. Cliquez sur l'élément testform.

    Le formulaire que vous avez envoyé s'ouvre dans InfoPath.

Références

Pour plus d'informations sur la façon d'utiliser un script avec les formulaires InfoPath, cliquez sur les numéros ci-dessous pour afficher les articles correspondants dans la Base de connaissances Microsoft :
828853 Comment faire : Modifier le langage de script pour un formulaire InfoPath
827002 COMMENT FAIRE : Déboguer un script pour un formulaire Microsoft Office InfoPath 2003

Propriétés

Numéro d'article: 826993 - Dernière mise à jour: mercredi 5 janvier 2011 - Version: 2.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Office InfoPath 2003
  • Microsoft Windows SharePoint Services
Mots-clés : 
kbxml kbscript kbforms KB826993
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