InfoPath 2003 - Enregistrer un formulaire dans deux types d'emplacements différents - InfoPath Dev
in

InfoPath Dev

Use our Google Custom Search for best site search results.

InfoPath 2003 - Enregistrer un formulaire dans deux types d'emplacements différents

Last post 10-26-2007 03:05 AM by battosaino. 2 replies.
Page 1 of 1 (3 items)
Sort Posts: Previous Next
  • 10-25-2007 03:37 AM

    InfoPath 2003 - Enregistrer un formulaire dans deux types d'emplacements différents

     Bonjour à toutes et à tous.

    J'ai une problématique que je ne parviens pas à résoudre depuis bien trois mois, j'espère que vous pourrez m'aider à la résoudre.

    La situation

    Ce que j'ai fait

     J'ai créée un formulaire avec Infopath 2003, avec deux boutons (Envoyer et Annuler).

     Ce que je voudrai

    Lorsque je clique sur le bouton "Envoyer" j'aimerai qu'il s'enregistre:

    • d'une part dans une bibliothèque SharePoint 
    • D'autre part dans un répertoire réseau spécifique

    Ce que j'ai tenté de faire pour y parvenir: 

    La première requête , est proposée nativement par InfoPath, la seconde semble nécessité du code (aptitude que je n'ai pas...).

    J'ai tenté de comprendre le mode de fonctionnement du VBS et ai sorti le code suivant:

     

    XDocument.DOM.setProperty "SelectionNamespaces", "xmlns:my=""http://schemas.microsoft.com/office/infopath/2003/myXSD/2007-09-13T12:12:25""" ' '======= ' Le gestionnaire de fonctions suivant a été créé par Microsoft Office InfoPath. ' Ne modifiez ni le nom de la fonction ni le nom et le nombre d'arguments. '=======

    Sub CTRL50_5_OnClick(eventObj)

        'Tapez votre code ici

        XDocument.UI.Alert("This is a test.")

        Path = "E:\Test\"

        'String Nom = "FichierTest"

        Nom = "FichierTest_241207"

        'Test permettant de vérifier que le document a été ou non modifié

                If(XDocument.IsDirty)Then

                    XDocument.UI.Alert("Doc changé")

                    'Enregistrement du document

                    eventObj.PerformSaveOperation(XDocument.SaveAs(Path + Nom))

                Else

                    XDocument.UI.Alert("Doc non modifié")

                End If

    End Sub


    Il s'agit d'une simplification, le répertoire d'enregistrement ce situera sur un répertoire réseau, et le nom du fichier devra être une concaténation entre un nom prédéfini et une timestamp.

    Quelles sont mes erreurs et comment puis-je atteindre mon but SVP?

     Merci d'avance de vos réponse.
     

  • 10-26-2007 02:16 AM In reply to

    Re: InfoPath 2003 - Enregistrer un formulaire dans deux types d'emplacements différents

    Salut et bienvenue,

     Pour pouvoir faire un enregistrement sur un disque il faut que ton formulaire soit en mode controle totale (Full Trust) et qu'il soit signé numériquement.

     Outils->Option de formulaire menu sécurité et approbations.

     Si tu veux une signature pour tester je veux bien t'en fournir une... Mais après faudra soit en faire une chez Verisign,... ou te créer une authorité de certification, mais attention pour le dernier choix tu devras faire reconnaitre ton authorité de certification sur tout les postes.

    Infopath 2007, Langage: C#2.0 (Modèle Objet 2003)
    merci de lire ceci
  • 10-26-2007 03:05 AM In reply to

    Re: InfoPath 2003 - Enregistrer un formulaire dans deux types d'emplacements différents

    Bonjour, merci pour ton accueil et  ta réponse.

    J'ai omis de l'écrire hier. Mon formulaire est bien en mode "Full Trust" et je dispose bien d'une signature numérique.

    En continuant mes différents essais, j'ai dans la hierarchie des erreur ^_^! 

    J'ai désormais l'erreur suivante:

    "InfoPath ne peut enregistrer le formulaire sous le nom suivant: E:\Test\FichierTest_261007.xml 

    La fonction OnSaveRequest a renvoyé une valeur indiquant l'échec de l'enregistrement

    InfoPath ne peut enregistrer le formulaire sous le nom suivant: E:\Test\FichierTest_261007.xml

    Contexte de l'appel de modèle  objet non valide"

     

    .... what does it mean please? 

     

    Je joins le code qui a un tout petit peu changé:

    /Code 

    Path = "E:\Test\"

    Nom = "FichierTest_261007"

     

    Sub CTRL50_5_OnClick(eventObj)

            XDocument.UI.Alert("This is a test.")

            If(XDocument.IsDirty)Then

                    XDocument.UI.Alert("Doc changé")

                    eventObj.PerformSaveOperation(XDocument.SaveAs(Path + Nom + ".xml"))

             Else

                    XDocument.UI.Alert("Doc non modifié")

            End If

    End Sub

     

    Sub XDocument_OnSaveRequest(eventObj) 

             eventObj.IsCancelled = eventObj.PerformSaveOperation(XDocument.SaveAs(Path + Nom + ".xml"))

    End Sub

     

    Fin Code/ 

     

    Merci d'avance 

Page 1 of 1 (3 items)
Copyright © 2003-2019 Qdabra Software. All rights reserved.
View our Terms of Use.