Utilisation du mappage XML dans le cadre d’une solution de génération de documents dans Word 2010 (traduction automatique)

Important

Cet article a été traduit automatiquement, voir l’avertissement. Vous pouvez consulter la version en anglais de cet article ici.

Résumé :  Apprenez à utiliser les contrôles de contenu et le mappage XML dans le cadre d’un scénario de génération de documents. Cet article est une révision de l’article publié avec la vidéo de démonstration, Mappage des contrôles de contenu Word 2007 vers du code XML personnalisé à l’aide de l’objet XMLMapping (éventuellement en anglais).

Dernière modification : lundi 11 avril 2011

S’applique à : Office 2007 | Office 2010 | Open XML | Visual Studio Tools for Microsoft Office | Word 2007 | Word 2010

Dans cet article
Présentation des contrôles de contenu et de mappage XML
Scénario de génération de document
Mappage des nœuds XML aux contrôles de contenu
Conclusion
Ressources supplémentaires

**S'applique à:**Microsoft Word 2010 | Microsoft Office Word 2007

Publication :  Février 2011

**Fournie par :**Microsoft Corporation

Sommaire

Présentation des contrôles de contenu et de mappage XML

Office Word 2007 et Word 2010 améliorent le fonctionnement des documents XML personnalisé, qui permet le mappage simple de données externes aux contrôles de contenu. Vous pouvez charger des contrôles de contenu avec une multitude d'informations à l'aide du mappage XML pour les mapper vers les données XML personnalisées.

Contrôles de contenu sont des éléments de contenu prédéfinis. Il existe plusieurs types de contrôles de contenu. Citons notamment les blocs de texte, menus déroulants, zones de liste déroulante, contrôles calendar, cases à cocher et images. Vous pouvez mapper ces contrôles de contenu à un élément dans un fichier XML. En utilisant des expressions XPath, vous pouvez mapper par programmation contenu dans un fichier XML à un contrôle de contenu. Cela vous permet d'écrire une application simple et rapide pour manipuler et modifier des données dans un document.

Mappage XML est une propriété sur un contrôle de contenu qui lie ou lie le contenu du contrôle de contenu à un élément XML dans un magasin de données est stocké avec le document. Dans le Formats Open XML, les parties d'un document Office sont contenus dans des fichiers XML individuels à l'intérieur d'un document XML compressé. À l'intérieur du document compressé, dans leurs propres répertoires spécifiques, sont des fichiers XML qui contiennent des données mappées aux contrôles de contenu.

En utilisant le mappage XML, les données XML sont séparées de la présentation du document afin qu'il soit plus facile de modifier les données et la mise en forme par programme. La séparation des données à partir de la mise en forme vous permet de créer des documents plus robustes que les versions précédentes de Word. Si les données XML sont endommagées, le document lui-même est intact.

Scénario de génération de document

Dans une solution de génération de documents, les documents sont générés par programme et remplis avec les données d'entreprise. L'une des approches que vous pouvez utiliser pour implémenter une solution de génération de documents implique l'utilisation de contrôles de contenu et le mappage XML vers XML personnalisé.

Dans cette approche, un document initial est créé qui agit comme un modèle pour la génération de documents. Contrôles de contenu dans le document de modèle sont liés à la partie XML personnalisée. Nouveaux documents sont ensuite par programme générées comme copies du document modèle. Les contrôles de contenu dans les nouveaux documents conservent le mappage XML créé dans le modèle document. Un magasin de données de pièce XML personnalisé unique est ajouté à chaque nouveau document. Lorsque le nouveau document est ouvert, les contrôles de contenu d'espace réservé dans le document sont remplis avec les données d'entreprise à partir de la partie XML personnalisée jointe.

Mappage des nœuds XML aux contrôles de contenu

Cette procédure pas à pas montre comment lier des contrôles de contenu aux éléments d'une partie XML personnalisée qui est attaché à un document à l'aide de l'objet XMLMapping (éventuellement en anglais) . Pour ce faire, vous devez effectuer les opérations suivantes :

Créez le modèle de Document

Le document de modèle que vous créez dans cette procédure pas à pas contient quatre contrôles de contenu affichent des informations sur un contact du client.

Pour ajouter des contrôles de contenu à l'aide de l'onglet Développeur dans le ruban Office Fluent

  1. Démarrez Microsoft Word 2010.

  2. Afficher l'onglet Développeur dans le ruban.

    Notes

    Pour afficher l'onglet Développeur dans le ruban, cliquez sur Fichier, cliquez sur Optionset puis cliquez sur Personnaliser le Ruban. Sous Personnaliser le Ruban , vérifiez que les Onglets principaux est sélectionné dans le menu déroulant. Sous les Onglets principaux, sélectionnez Développeuret puis cliquez sur OK.

  3. Dans Word 2010, ouvrez un nouveau document.

  4. À l'aide de l'onglet Développeur , ajouter et le contenu de texte brut titre quatre contrôles à la surface du document dans l'ordre suivant :

    1. nom_société

    2. Nom du contact

    3. ContactTitle

    4. numéro de téléphone.

  5. Enregistrez le document sous c:\CustomerLetter.docx.

Création du fichier XML personnalisé

Le document de modèle créé, vous créez le fichier XML personnalisé qui contient le XML que vous liez ensuite pour les contrôles de contenu dans le document de modèle.

Pour créer le fichier XML personnalisé

  1. Ouvrez un nouveau fichier texte pour modification.

  2. Copiez le texte suivant dans le fichier texte et enregistrez-le sous C:\CustomerData.xml.

    <?xml version="1.0"?>
    <Customer> 
       <CompanyName>Adventure Works</CompanyName> 
       <ContactName>Terry Adams</ContactName>
       <ContactTitle>Sales Representative</ContactTitle>
       <Phone>030-0074321</Phone>
    </Customer>
    

Pour mapper les contrôles de contenu XML personnalisé en utilisant la fonctionnalité de mappage XML Word, une partie XML personnalisée doit être ajoutée au document et le fichier XML doit être chargé dans la partie XML personnalisée.

Mappage des contrôles de contenu à des nœuds dans le fichier XML personnalisé

Pour lier un contrôle de contenu à un nœud dans un fichier XML personnalisé, le fichier XML personnalisé doit être attaché au document Word. Vous attachez des fichiers XML personnalisés à un document Word en ajoutant une banque de données de partie XML personnalisée du document et puis charger le fichier XML personnalisé dans la partie XML personnalisée.

Notes

Pour plus d'informations sur la banque de données, consultez procédure pas à pas : Format XML Word 2007 (éventuellement en anglais).

Pour ajouter une nouvelle partie XML personnalisée, utilisez la méthode CustomXMLParts.Add de la collection CustomXMLParts (éventuellement en anglais) . Cela ajoute une partie XML personnalisée vide dans le document. Dans la mesure où elle est vide, vous ne pouvez pas encore l'utiliser. Ensuite, vous chargez XML à partir d'un fichier XML dans la partie XML personnalisée, en appelant la méthode CustomXMLPart.Load (éventuellement en anglais) de l'objet CustomXMLPart qui utilise un chemin d'accès d'un fichier XML comme paramètre. Les étapes suivantes montrent comment lier un contrôle de contenu à un nœud dans le magasin de données.

Pour ajouter une partie XML personnalisée dans le document

Ouvrez l'éditeur de Microsoft Visual Basic et exécutez le code VBA suivant pour ajouter un magasin de données à votre document de modèle.

' Add a new, empty custom XML part to the document.
ActiveDocument.CustomXMLParts.Add 
' Load XML from CustomerData.xml file.
ActiveDocument.CustomXMLParts(4).Load ("c:\CustomerData.xml")

Ensuite, définissez le mappage XML sur un contrôle de contenu qui fait référence à un nœud dans le magasin de données de pièce XML personnalisé ajouté. Pour créer un mappage XML, utilisez une expression XPath du nœud dans la partie XML personnalisée à laquelle vous souhaitez mapper un contrôle de contenu. Une fois que vous ajoutez une partie XML personnalisée et chargez un fichier XML valide, vous êtes prêt à mapper un de ses nœuds à un contrôle de contenu.

Pour ce faire, transmettez une chaîne qui contient une expression XPath valide à un objet ContentControl (éventuellement en anglais) à l'aide de la méthode SetMapping (éventuellement en anglais) de l'objet XMLMapping (en utilisant la propriété XMLMapping de l'objet ContentControl).

Pour mapper un nœud dans la partie XML personnalisée à un contrôle de contenu

Dans l'éditeur de Visual Basic, après le code entré dans la dernière procédure, ajoutez le code VBA suivant pour lier des contrôles de contenu aux éléments du magasin de données.

Dim strXPath1 As String
strXPath1 = "/Customer/CompanyName" 
ActiveDocument.ContentControls(1).XMLMapping.SetMapping strXPath1

Dim strXPath2 As String
strXPath2 = "/Customer/ContactName" 
ActiveDocument.ContentControls(2).XMLMapping.SetMapping strXPath2

Dim strXPath3 As String
strXPath3 = "/Customer/ContactTitle" 
ActiveDocument.ContentControls(3).XMLMapping.SetMapping strXPath3

Dim strXPath4 As String
strXPath4 = "/Customer/Phone" 
ActiveDocument.ContentControls(4).XMLMapping.SetMapping strXPath4

Ce code crée le mappage requis pour la connexion d'un fichier XML personnalisé aux contrôles de contenu dans un Word 2007 ou d'un document de Word 2010. Lorsque le document est ouvert, les contrôles de contenu liés sont remplis avec les données de la partie XML personnalisée jointe.

Conclusion

Le système de 2007 Microsoft Office et Office 2010 associent chaque mappage XML XML unique au sein de la banque de données XML du document. La banque de données dans un Word 2007 ou le modèle d'objet de document Word 2010 est contenue dans la propriété CustomXMLParts de l'objet Document (éventuellement en anglais) . La propriété CustomXMLParts renvoie une collection CustomXMLParts qui contient les objets CustomXMLParts. Il pointe vers toutes les parties XML personnalisées qui sont stockés dans un document. Un objet CustomXMLParts représente une seule partie XML personnalisée dans le magasin de données.

Vous pouvez mapper par programmation des contrôles de contenu aux éléments d'une partie XML personnalisée attachée à un document à l'aide de l'objet XMLMapping. Vous pouvez également mapper les contrôles de contenu aux éléments d'une partie XML personnalisée à l'aide de la Formats Open XML d'Office. Vous pouvez manipuler le Format XML de Word à l'aide de deux approches :

  • Par programme en utilisant la classe de **[System.IO.Packaging]**Kit de développement Open XML SDK 2.0 pour Microsoft Office SDK pour manipuler le package de documents et de créer des parties XML personnalisées et les relations correspondantes.

  • Mise à jour des relations et ajoutez les parties XML personnalisées dans un package de documents manuellement.

Notes

Microsoft Word ne possède pas d'interface utilisateur pour mapper les contrôles avec XML à une exception près : les propriétés SharePoint et intégrées répertoriées dans les composants QuickPart | Menu des propriétés liée.

Vous pouvez également télécharger les Outils de contrôle de contenu Word 2007 (éventuellement en anglais). Cet outil vous permet de mapper les contrôles de contenu pour les nœuds XML personnalisés via une interface utilisateur de simple glisser-déplacer.

Ressources supplémentaires

Notes

Avertissement traduction automatique : cet article a été traduit par un ordinateur, sans intervention humaine. Microsoft propose cette traduction automatique pour offrir aux personnes ne maîtrisant pas l’anglais l’accès au contenu relatif aux produits, services et technologies Microsoft. Comme cet article a été traduit automatiquement, il risque de contenir des erreurs de grammaire, de syntaxe ou de terminologie.