Procédure : vérifier un modèle de formulaire avant son déploiement
Vous pouvez vérifier les modèles de formulaire InfoPath compatibles avec les navigateurs avant leur déploiement sur un serveur exécutant InfoPath Forms Services. Cette vérification garantit la résolution des problèmes de déploiement des modèles de formulaire avant leur déploiement effectif. Similaire à l'utilisation de l'option Vérifier sur le serveur du volet Vérificateur de mise en page de l'interface utilisateur de conception d'InfoPath, la vérification peut être effectuée via le site Web Administration centrale de SharePoint 3.0 ou à l'aide de code avec la méthode VerifyFormTemplate de la classe FormTemplateCollection.
Vérification d'un modèle de formulaire à l'aide du site Web Administration centrale de SharePoint
Préparez un modèle de formulaire nécessitant une approbation de l'administrateur pour la publication à l'aide de l'Assistant Publication. Pour ce faire, suivez la première procédure de la rubrique Procédure : déployer des modèles de formulaire contenant du code de formulaire.
Ouvrez le site Administration centrale de SharePoint 3.0.
Notes
Vous devez être membre du groupe Administrateurs de batterie pour réaliser cette étape, ainsi que les étapes suivantes.
Cliquez sur le lien Gestion des applications.
Sous InfoPath Forms Services, cliquez sur le lien Gérer les modèles de formulaire.
Cliquez sur le lien Télécharger un modèle de formulaire dans la partie supérieure de la page.
Cliquez sur le bouton Parcourir pour ouvrir une boîte de dialogue, puis entrez le chemin d'accès au modèle de formulaire publié.
Cliquez sur le bouton Vérifier pour vérifier que le modèle de formulaire est prêt à être téléchargé sur le serveur.
Vérification d'un modèle de formulaire à l'aide de la méthode VerifyFormTemplate de la classe FormCollection
Préparez un modèle de formulaire nécessitant une approbation de l'administrateur pour la publication à l'aide de l'Assistant Publication. Pour ce faire, suivez la première procédure de la rubrique Procédure : déployer des modèles de formulaire contenant du code de formulaire.
Ouvrez Microsoft Visual Studio 2005.
Notes
Pour réaliser ces étapes, Microsoft Visual Studio 2005 doit être installé sur un ordinateur exécutant InfoPath Forms Services.
Créez une nouvelle Application console en Visual Basic ou C#.
Cliquez sur le projet avec le bouton droit de la souris dans l'Explorateur de solutions, puis cliquez sur Ajouter une référence.
Sous l'onglet .NET, sélectionnez Windows SharePoint Services et cliquez sur OK.
Répétez l'étape 3 et, dans la boîte de dialogue Ajouter une référence, cliquez sur l'onglet Parcourir.
Dans la zone Rechercher dans, naviguez jusqu'au répertoire d'installation de Microsoft Office SharePoint Server 2007 ou de Microsoft Office Forms Server 2007, généralement
C:\Program Files\Microsoft Office Servers\12.0\
, double-cliquez sur le dossierBin
et, à l'intérieur de ce dossier, sélectionnez Microsoft.Office.InfoPath.Server.dll et cliquez sur OK.Copiez l'exemple de code ci-dessous, en fonction du langage choisi à l'étape 2, et collez-le dans la fenêtre de code.
Remplacez la variable SolutionPath par un emplacement où vous avez publié un modèle de formulaire pour approbation par l'administrateur.
Enregistrez le projet et appuyez sur F5 pour déboguer et exécuter le code.
Le nombre de messages du convertisseur, ainsi que leur texte s'il y en a, sont affichés dans une fenêtre de console.
Exemple
Les exemples de code utilisent la méthode VerifyFormTemplate pour afficher les messages du convertisseur (s'il y en a) dans une fenêtre de console. L'emplacement du modèle de formulaire est stocké dans la variable SolutionPath et doit être modifié pour correspondre au chemin d'accès du modèle de formulaire à vérifier.
Imports Microsoft.SharePoint.Administration
Imports Microsoft.Office.InfoPath.Server.Administration
Module Module1
Sub Main()
Dim LocalFormsService As FormsService
Dim LocalFarm As SPFarm
Dim SolutionPath As String = "C:\FormTemplates\FormTemplate.xsn"
Dim VerifyMessages As New ConverterMessageCollection
Dim ConverterMsg As ConverterMessage
Try
LocalFarm = SPFarm.Local
LocalFormsService = LocalFarm.Services.GetValue(Of FormsService)(FormsService.ServiceName)
VerifyMessages = FormTemplateCollection.VerifyFormTemplate(SolutionPath)
Console.WriteLine("# of messages: " + VerifyMessages.Count.ToString())
For Each ConverterMsg In VerifyMessages
Console.WriteLine(ConverterMsg.ShortMessage.ToString() & ": " & ConverterMsg.DetailedMessage.ToString())
Next
Console.Write("Press Enter to Continue")
Console.ReadLine()
Catch ex As Exception
Console.WriteLine("Error: " + ex.Message)
Console.Write("Press Enter to Continue")
Console.ReadLine()
End Try
End Sub
End Module
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SharePoint.Administration;
using Microsoft.Office.InfoPath.Server.Administration;
namespace VerifyFormTemplate
{
class Program
{
static void Main(string[] args)
{
FormsService localFormsService;
SPFarm localFarm = SPFarm.Local;
string solutionPath = "C:\\FormTemplates\\FormTemplate.xsn";
ConverterMessageCollection verifyMessages;
try
{
localFormsService = localFarm.Services.GetValue<FormsService>(FormsService.ServiceName);
verifyMessages = FormTemplateCollection.VerifyFormTemplate(solutionPath);
Console.WriteLine("# of messages: " + verifyMessages.Count.ToString());
foreach (ConverterMessage convMessage in verifyMessages)
{
Console.WriteLine(convMessage.ShortMessage.ToString() + ": " + convMessage.DetailedMessage.ToString());
}
Console.Write("Press Enter to Continue");
Console.ReadLine();
}
catch (Exception ex)
{
Console.WriteLine("Error: " + ex.Message);
Console.Write("Press Enter to Continue");
Console.ReadLine();
}
}
}
}