Personnalisation des menus compléments Fichier, Insérer et Aide

IBM FileNet P8 Application Integration prend en charge la personnalisation des menus en incrustation Fichier, Insertion et Aide de Microsoft Outlook, Word, Excel, et PowerPoint. Application Integration utilise des compléments COM pour étendre ces applications en ajoutant des menus compléments personnalisés. Les développeurs peuvent modifier ces menus personnalisés grâce à des fichiers XML fournis, qui contiennent des informations permettant à Application Integration de configurer le contenu des menus pour les applications Microsoft.

Après l'installation d'Application Integration, les développeurs peuvent modifier manuellement le contenu des fichiers XML afin de personnaliser les menus compléments et de répondre ainsi aux exigences de leurs applications. Les fichiers XML peuvent alors être copiés dans d'autres systèmes de l'organisation pour permettre un contrôle de la disponibilité des fonctions et environnements d'application pour un utilisateur ou une classe d'utilisateurs en particulier. Chaque fois qu'une application en particulier nécessite une modification, le fichier XML correspondant peut être mis à jour et de nouveau copié sur les systèmes appropriés.

Les sections décrivent les menus compléments existants et contiennent des instructions et des remarques sur les modifications :

Techniques de personnalisation XML

Les développeurs peuvent personnaliser les menus compléments comme suit :

Personnalisation des éléments suivants Description
Visibilité Indiquez les commandes Application Integration et les sous-menus en incrustation qui doivent apparaître sur le menu. Cette technique permet de supprimer complètement un sous-menu ou une commande d'un menu pour contrôler la disponibilité d'une fonction en particulier.
Etat d'activation Indiquez les commandes Application Integration et les sous-menus en incrustation qui doivent apparaître mais être désactivés (en grisé). Cette technique permet aux développeurs de déterminer si un menu en particulier peut être ouvert ou une commande exécutée.
Etiquette ou légende Indiquez les étiquettes ou les légendes des commandes Application Integration et des sous-menus en incrustation telles qu'elles doivent apparaître sur le poste de l'utilisateur. Par exemple, les développeurs peuvent renommer la commande "Checkin" "Store Document" ou regrouper certaines commandes sur un sous-menu appelé "Développement".
Action liée à une commande Indique l'action Application Integration qui doit être effectuée lorsqu'une commande Application Integration est sélectionnée.

REMARQUE :   Vous ne pouvez pas indiquer de commandes des fournisseurs.

Hiérarchie des menus Indiquez la disposition des commandes Application Integration sur le menu, y compris leur ordre d'apparition et si elles sont contenues dans une arborescence de dossiers de sous-menus en incrustation.

Noms et emplacement des fichiers XML

Pendant l'installation d'Application Integration, les fichiers XML sont écrits dans le répertoire d'installation (par défaut C:\Program Files\FileNet\AppInt\). Chaque fois qu'une des applications Microsoft prises en charge est ouvertes, Application Integration recherche le fichier XML dans le répertoire d'installation, puis configure le menu de cette application en fonction des spécifications contenues dans ce fichier. Si Application Integration ne peut pas localiser le fichier XML dans le répertoire d'installation, il essaie de regrouper les fichiers du répertoire Module. (Le répertoire Module est l'emplacement habituel de stockage des applications Microsoft Office, par défaut dans C:\Program Files\Microsoft Office\Office.)

ATTENTION :  Alors que les développeurs peuvent modifier le contenu des fichiers XML, les noms de ces fichiers ne doivent pas être modifiés et ces derniers doivent se trouver dans le répertoire d'installation ou de module afin qu'Application Integration puisse les repérer et les utiliser pour configurer les menus compléments.

Le tableau suivant identifie les fichiers XML, les applications Microsoft Office affectées par chacun d'entre eux et les versions de chaque application.

Nom du fichier XML Application correspondante Versions prises en charge
FnAppIntExcelMenus.xml Excel 2003, XP, 2007
FnAppIntOutlookMenus.xml Outlook Explorer (fenêtre d'exploration des éléments)
Outlook Inspector (fenêtre d'édition des éléments)
2003, XP, 2007
FnAppIntPowerPointMenus.xml PowerPoint 2003, XP, 2007
FnAppIntWordMenus.xml Word 2003, XP, 2007

Remarques sur les modifications des fichiers XML

Les points doivent être pris en considération avant la modification des fichiers XML :

Schéma XML des menus compléments

La structure de base du schéma XML des menus compléments est la suivante :

Pour avoir un exemple d'utilisation de ces balises dans le schéma XML, voir Exemple de schéma XML.

Balises setting

Chaque objet addInMenuItem utilise des balises setting pour définir l'apparence et le comportement des sous-menus ou des boutons de commande des menus compléments. La syntaxe de la balise varie en fonction de la clé (key) définie. Par exemple, certaines clés nécessitent la zone type, contrairement à d'autres :

<setting key="itemType">popup</setting>

<setting key="parent" type="menuId">30002</setting>

Dans le tableau suivant, lorsqu'une clé ne requiert pas l'utilisation de la zone type ou n'a pas besoin d'une valeur spécifiée, l'entrée dans la colonne Type ou Valeur est "Non applicable". Lorsque la valeur de la clé ne correspond pas à une variable Application Integration connue, comme popup ou button, l'entrée de la colonne Valeur apparaît en italique, par exemple, 30002. En outre, lorsqu'une clé n'est pas obligatoire, l'entrée de la colonne Description contient l'indicateur [Facultatif].

Application Integration prend en charge les balises setting suivantes.

Clé Type Valeur Description
itemType Non applicable popup Indique que l'élément de menu complément est un sous-menu en incrustation avec des enfants, pouvant inclure des boutons de commande et des sous-menu en incrustation supplémentaires.
  Non applicable button Indique que l'élément de menu complément est un bouton de commande sans enfants.
description Non applicable Menu de fichier P8 [Facultatif] Fournit une description de l'élément de menu complément uniquement à titre d'information ; cette description n'est pas visible par l'utilisateur.
label enum eOpenSubMenuName Fournit l'étiquette ou la légende visible pour l'élément de menu complément à l'aide d'une des constantes d'énumération suivantes :
  • eFileMenuName
  • eOpenButtonName
  • eOpenSubMenuName
  • eOpenMyCheckoutsButtonName
  • eOpenSelectItemButtonName
  • eAddDocumentButtonName
  • eAddDocumentSubMenuName
  • eAddDocumentUseWizardButtonName
  • eAddDocumentSelectTemplateButtonName
  • eAddFolderButtonName
  • eCheckinSubMenuName
  • eCheckinQuickButtonName
  • eCheckinUseWizardButtonName
  • eTasksMyInboxButtonName
  • eSaveButtonName
  • eCancelCheckoutButtonName
  • ePropertiesButtonName
  • eLogoffButtonName
  • eInsertMenuName
  • eInsertButtonName
  • eInsertHyperlinkButtonName
  • eInsertPropPageButtonName
  • eInsertPropertyButtonName
  • eRefreshPropertyButtonName
  • eDeletePropertyButtonName
  • eHelpButtonName
  resourceID 119 Fournit l'étiquette ou la légende visible pour l'élément de menu complément en indiquant une valeur de type entier correspondant à un ID ressource défini dans un fichier de localisation des ressources.
  text Restitution... Fournit l'étiquette ou la légende visible pour l'élément de menu qui fournira la chaîne de texte réelle.
visible Non applicable true Indique que l'élément de menu complément (et les enfants s'il s'agit d'un sous-menu en incrustation) est visible par l'utilisateur.
    faux Indique que l'élément de menu complément (et les enfants s'il s'agit d'un sous-menu en incrustation) n'est pas visible par l'utilisateur, à savoir qu'il n'apparaît pas dans le menu complément.
enabled Non applicable true Indique que l'élément de menu complément est activé, ce qui permet à l'utilisateur d'ouvrir le sous-menu en incrustation ou de sélectionner le bouton de commande.
    Non Indique que l'élément de menu complément ne peut pas être ouvert ou sélectionné par l'utilisateur, en d'autres terme, il est désactivé dans le menu complément.
parent menuId 30002 Fournit la valeur "menuId" du menu parent de l'élément de menu complément. Lorsque l'élément de menu est un sous-menu en incrustation, cette valeur est généralement l'ID contrôle d'un menu en incrustation Microsoft Office. Pour plus d'informations sur les ID menu dans les applications Microsoft Office, voir Microsoft Office Developers Guide for Office 2003/XP/2007.
  topLevel Non applicable Lorsque l'élément de menu complément est un sous-menu en incrustation, cette paire clé/type indique que le sous-menu est placé sur la barre de menus de niveau supérieur de l'application. REMARQUE :   Cette paire clé et type est valide uniquement pour les sous-menus en incrustation.
  Non applicable Non applicable Lorsque l'élément de menu complément est un bouton de commande, le parent est impliqué dans le fichier XML spécifié via la balise <list key="children">. Par conséquent, aucune spécification de parent n'est obligatoire à cet emplacement setting du fichier XML. REMARQUE :  Cette paire clé et type est valide uniquement pour les boutons de commande.
emplacement Non applicable 4 Indique la position d'insertion de l'élément de menu complémentaire concerné sur le menu parent. La valeur -1 indique que l'élément de menu est ajouté au bas du menu existant. REMARQUE :  Cette valeur indique la position souhaitée de l'élément de menu sur le menu en incrustation parent.
command standard OfficeAdd-In.
OpenSelection
Indique l'opération Application Integration à effectuer lorsqu'un bouton de commande est sélectionné par l'utilisateur. Une des constantes d'énumération suivantes peut être indiquée :
  • OfficeAdd-In.AddFolderUseAddWizard
  • OfficeAdd-In.OpenMyCheckouts
  • OfficeAdd-In.OpenSelectItem
  • OfficeAdd-In.AddDocumentUseAddWizard
  • OfficeAdd-In.AddDocumentSelectTemplate
  • OfficeAdd-In.CheckinDocumentUseCheckinWizard
  • OfficeAdd-In.CheckinDocumentQuickCheckin
  • OfficeAdd-In.Save
  • OfficeAdd-In.CancelCheckout
  • OfficeAdd-In.GetInfo
  • OfficeAdd-In.TasksMyInbox
  • OfficeAdd-In.Logoff
  • OfficeAdd-In.Help
  • OfficeAdd-In.InsertItem
  • OfficeAdd-In.InsertProperty
  • OfficeAdd-In.RefreshProperties
  • OfficeAdd-In.DeleteProperties
  • OfficeAdd-In.InsertHyperlink
  • OfficeAdd-In.InsertPropertiesPage
  standard Non applicable Lorsque l'élément de menu complément est un sous-menu en incrustation, les clics sur les menus sont ignorés. Par conséquent, aucune spécification de commande n'est obligatoire à cet emplacement setting du fichier XML. REMARQUE :   Cette paire clé et type est valide uniquement pour les sous-menus en incrustation.

Pour avoir un exemple d'utilisation de ces balises dans le schéma XML, voir Exemple de schéma XML.

Exemple de schéma XML

Le fragment de code suivant illustre la structure de schéma XML de bas pour les menus compléments de l'application Excel :

<?xml version="1.0" ?>
   <!-- IBM FileNet P8 Application Integration 4.0 Excel Add-In Menus-->
   <!-- Add-In Menus - Configuration Info -->
   <object key="addInMenusConfiguration" version="1.0">
      <setting key="applicationName">Excel</setting>
      <array key="applicationVersion">
         <value>2003</value>
         <value>XP</value>
         <value>2007</value>
      </array>
      <!-- Add-In Menus - Main Menu Definitions -->
      <object key="addInMenusDefinition" type="main">
         <list key="children">
            <!-- P8 File Menu -->
            <object key="addInMenuItem">
               <setting key="itemType">popup</setting>
               ...
               <list key="children">
                  <!-- Open Document SubMenu -->
                  <object key="addInMenuItem">
                     <setting key="itemType">popup</setting>
                     <setting key="description">Submenu of commands for opening documents.</Setting>
                     <setting key="label" type="text">Open Document</setting>
                     <setting key="visible">true</setting>
                     <setting key="enabled">true</setting>
                     <setting key="location">3</setting>
                     <setting key="command" type="standard"></setting>
                     <list key="children">
                        <!-- Open Document - My Checkouts... Button -->
                        <object key="addInMenuItem">
                           <setting key="itemType">button</setting>
                           ...
                           <list key="children" />
                        </object>
                        <!-- Open Document - Select Item... Button -->
                        <object key="addInMenuItem">
                           <setting key="itemType">button</setting>
                           ...
                           <list key="children" />
                        </object>
                     </list>
                     <list key="children" />
                  </object>
                  <!-- Add Document SubMenu -->
                  <object key="addInMenuItem">
                     <setting key="itemType">popup</setting>
                     ...
                     <list key="children" />
                  </object>
                  ...
                  <!-- Add Folder... Button -->
                  <object key="addInMenuItem">
                     <setting key="itemType">button</setting>
                     <setting key="description">Performs the Add Folder Wizard</setting>
                     <setting key="label" type="enum">eAddFolderButtonName</setting>
                     <setting key="visible">true</setting>
                     <setting key="enabled">true</setting>
                     <setting key="parent" type="menuId">30002</setting>
                     <setting key="location">1</setting>
                     <setting key="command" type="standard">OfficeAdd-In.AddFolderUseAddWizard</setting>
                     <list key="children" />
                  </object>
                  ...
               </list>
               <list key="children" />
            </object>
            <!-- P8 Insert Menu -->
            <object key="addInMenuItem">
               <setting key="itemType">popup</setting>
               ...
               <list key="children">
               ...
               </list>
               <list key="children" />
            </object>
            <!-- P8 Help Menu -->
            <object key="addInMenuItem">
               <setting key="itemType">popup</setting>
               ...
               <list key="children">
               ...
               </list>
               <list key="children" />
            </object>
         </list>
      </object>
   </object>
...