Bonjour à tous,

Ce post sert à présenter une manière de créer des Contrôles de contenus liés entre eux, un peu à la manière des Propriétés du document du menu QuickPart.

De base, Word propose un nombre défini et limité de propriétés de document accessible via le menu des QuickPart.
Il semble possible d’en rajouter (dans ce menu QuickPart) en créant des propriétés personnalisées dans une liste Sharepoint et en ajoutant le document Word à cette liste Sharepoint. Je n’ai pas testé cette solution.

La mise en œuvre de la solution présentée ici est un peu laborieuse, notamment pour ajouter un contrôle de contenu dans le document. Cela ne se fait pas via le menu QuickPart.
Elle permet néanmoins à terme de créer des formulaires/modèles de documents où, une fois saisie/modifiée, l’information se répercute dans les autres contrôles du document.

  1. Créer de nouvelles propriétés

    Créer le fichier xml suivant :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <Propriétés xmlns="Mes propriétés perso">
    	<Nom/>
    	<Prénom/>
    	<DateDeNaissance/>
    	<Sexe/>
    	<DateDoc/>
    </Propriétés>
    C’est via ce fichier qu’on va créer la liste des nouvelles propriétés gérées par le document. A ce stade, on ne type pas les variables (date, liste, texte…).

    Depuis l’onglet développeur, ouvrir le Volet Mappage XML :
    Nom : Image1.png
Affichages : 162
Taille : 53,9 Ko

    Dans la liste déroulante de ce volet, sélectionner (Ajouter une nouvelle partie…). Sélectionner alors le fichier xml précédemment créé.

    Toujours dans la liste déroulante de ce volet, sélectionner la nouvelle catégorie Mes propriétés perso.
    Nom : Image2.png
Affichages : 143
Taille : 21,9 Ko
    On retrouve bien les 5 propriétés listées dans le fichier xml.

  2. Insérer ces nouvelles propriétés dans le document

    Positionner le curseur à l’endroit où insérer le contrôle de contenu souhaité.
    Depuis la liste des propriétés du Volet Mappage XML, faire un clic droit sur la propriété à insérer
    Puis Insérer un contrôle de contenu et finalement choisir le type de contenu (sélecteur de date, liste, texte brut, …).

    Cela a pour effet de créer un contrôle de contenu mappé sur la propriété.

    On peut aussi d’abord créer le contrôle de contenu puis ensuite le mapper (sélectionner le contrôle, puis mapper la propriété en faisant un clic droit sur la propriété et mapper vers le contrôle de contenu sélectionné).

    Tous les contrôles mappés à la même propriété seront alors "synchronisés entre eux".



Pour éditer cette liste de propriétés, le plus simple est de dézipper le document docx et d’éditer le fichier customXml\item1.xml et de reconstituer ensuite le fichier (compression zip et renommage de fichier en docx).

Ci-joint un exemple d’utilisation.
DocTest.docx

A+