自訂「檔案」、「插入」和「說明增益集」功能表

IBM FileNet P8 Application Integration 支援自訂 Microsoft® Outlook、Word、Excel 和 PowerPoint 的「檔案」、「插入」和「說明」蹦現功能表。Application Integration 利用 COM 增益集,以新增自訂「增益集」功能表來延伸這些應用程式。 開發人員可透過使用所提供的 XML 檔來修改這些自訂功能表,XML 檔包含 Application Integration 用來配置 Microsoft 應用程式功能表內容的資訊。

安裝 Application Integration 之後,開發人員可手動修改 XML 檔的內容,以自訂 符合其應用程式需求的「增益集」功能表。然後自訂的 XML 檔可複製到組織中的其他系統, 以提供方法來控制特定使用者或使用者類別的應用程式環境和特性可用性。 每當特定應用程式需要新的變更時,對應的 XML 檔可更新及再次複製到適當的系統。

下列各節說明現有的「增益集」功能表,並提供修改下列項目的指示和考量:

XML 自訂作業技術

使用者可以按照以下方式自訂「增益集」功能表:

自訂... 說明
可見性 指定應該出現在功能表上的 Application Integration 指令和蹦現子功能表。 這項技術可從功能表中完全移除子功能表或指令,以控制特定特性的可用性。
啟用狀態 指定應該出現卻停用(變成灰色)的 Application Integration 指令和蹦現子功能表。 這項技術可讓開發人員控制是否可以開啟特定功能表或執行指令。
標籤或標題 指定應該對使用者顯示的 Application Integration 指令和蹦現子功能表的標籤或標題。 例如,開發人員可以將 "Checkin" 指令重新命名為 "Store Document",或將特定指令集合在子功能表上,稱為 "Authoring"。
指令動作 指定當選取某個 Application Integration 指令時應執行的 Application Integration 動作。

附註  您無法指定供應商指令。

功能表階層 指定 Application Integration 指令在功能表的排列,包括指令的順序,以及它們是否 包含在蹦現子功能表資料夾階層中。

XML 檔名和位置

在 Application Integration 整合期間,XML 檔會寫入到安裝目錄(預設為 C:\Program Files\FileNet\AppInt\)。每次開啟 其中一個支援的 Microsoft 應用程式時,Application Integration 就會搜尋安裝目錄中對應的 XML 檔,然後根據 XML 檔包含的規格,來配置該應用程式的「增益集」功能表。如果 Application Integration 在安裝目錄中找不到 XML 檔,它會試圖從 Module 目錄收集檔案。(Module 目錄是一般儲存 Microsoft Office 應用程式的位置,依預設是在 C:\Program Files\Microsoft Office\Office 中)。

警告  雖然開發人員可以修改 XML 檔的內容,但 XML 檔名不得變更,且檔案必須位於安裝或模組目錄中,Application Integration 才能找到並利用 XML 檔來配置「增益集」功能表。

下表識別 XML 檔的名稱、每一個 XML 檔影響的 Microsoft Office 應用程式,以及每一個應用程式支援的版本。

XML 檔名 對應的應用程式 支援的版本
FnAppIntExcelMenus.xml Excel 2003、XP、2007
FnAppIntOutlookMenus.xml Outlook Explorer(項目瀏覽視窗)
Outlook Inspector(項目編輯視窗)
2003、XP、2007
FnAppIntPowerPointMenus.xml PowerPoint 2003、XP、2007
FnAppIntWordMenus.xml Word 2003、XP、2007

XML 修改注意事項

在修改 XML 檔之前應該考量下列幾點:

XML 增益集功能表綱目

「增益集」功能表的 XML 綱目基本結構如下所示:

如需這些標籤如何使用於 XML 綱目的範例,請參閱範例 XML 綱目

設定標籤

每一個 addInMenuItem 物件都會使用 setting 標籤來定義「增益集」功能表的子功能表,或指令按鈕的外觀和行為。 該標籤的語法視所定義的 key 而異。 例如,有些 key 需要 type 欄位,有些則不需要:

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

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

在下表中,當 key 不需要使用 type 欄位或不需要指定的值時, TypeValue 直欄中的項目為「不適用」。當 key 的值是不明的 Application Integration 變數時,例如 popupbuttonValue 直欄中的項目 會以斜體顯示;例如 30002。此外,如果不需要 key說明直欄中的項目會包含 [Optional] 指示器。

Application Integration 支援下列 setting 標籤。

類型 說明
itemType 不適用 popup 指出「增益集」功能表項目是含有子項的蹦現子功能表,它可包括指令按鈕和其他蹦現子功能表。
  不適用 button 指出「增益集」功能表項目是不含子項的指令按鈕。
description 不適用 P8 檔案功能表 [選用] 提供「增益集」功能表項目的說明,這只是參考資訊;使用者看不到此說明。
label enum eOpenSubMenuName 使用下列其中一項列舉常數,來提供「增益集」功能表項目的可見標籤或標題:
  • 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 指定整數值來提供「增益集」功能表項目的可見標籤或標題,該值對應於資源本地化檔案所定義的資源 ID:
  text Checkin... 提供實際的字串來提供「增益集」功能表項目的可見標籤或標題。
visible 不適用 true 指定使用者可以看見「增益集」功能表項目(若功能表項目是蹦現子功能表,則還包括任何子項)。
    false 指定使用者看不見「增益集」功能表項目(若功能表項目是蹦現子功能表,則還包括任何子項),亦即,功能表項目不出現在「增益集」功能表中。
enabled 不適用 true 指定已啟用「增益集」功能表項目,讓使用者可以開啟蹦現子功能表或選取指令按鈕。
    False 指定使用者無法開啟或選取「增益集」功能表項目(亦即,功能表項目在「增益集」功能表上為停用)。
parent menuId 30002 提供「增益集」功能表項目的母項功能表的 "menuId" 值。 當功能表項目是蹦現子功能表時,此值通常是現有 Microsoft Office 蹦現功能表的控制項 ID。如需 Microsoft Office 應用程式中功能表 ID 的相關資訊,請參閱《Microsoft Office Developers Guide for Office 2003/XP/2007》。
  topLevel 不適用 當「增益集」功能表項目是蹦現子功能表時,這個索引鍵和類型對組指出子功能表位於應用程式最上層功能表列。 附註  這個索引鍵和類型對組只對蹦現子功能表有效。
  不適用 不適用 當「增益集」功能表項目是指令按鈕時,會透過 <list key="children"> 標籤的使用,將母項隱含於指定的 XML 中。 因此,在 XML 的這個 setting 位置不需要指定母項。 附註  這個索引鍵和類型對組只對指令按鈕有效。
location 不適用 4 指定這個「增益集」功能表項目在母項功能表上的插入位置。 -1 值指出會將功能表項目附加到現有功能表的底端。 附註  此值指出功能表項目在母項蹦現功能表上的預期位置。
command standard OfficeAdd-In.
OpenSelection
指定當使用者選取某個指令按鈕時要執行的 Application Integration 作業。 可指定下列其中一項列舉常數:
  • 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 不適用 當「增益集」功能表項目是蹦現子功能表時,會忽略功能表按一下動作。 因此,在 XML 的這個 setting 位置不需要指定指令。 附註  這個索引鍵和類型對組只對蹦現子功能表有效。

如需這些標籤如何使用於 XML 綱目的範例,請參閱範例 XML 綱目

範例 XML 綱目

下列程式碼片段說明 Excel 應用程式的「增益集」功能表的基本 XML 綱目結構:

<?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>
...