IBM FileNet P8 Application Integration は、Microsoft® Outlook、Word、Excel、PowerPoint の「ファイル」、「挿入」、および「ヘルプ」ポップアップ・メニューのカスタマイズをサポートしています。Application Integration は COM アドインを利用して、カスタム・アドイン・メニューを追加することでこれらのアプリケーションを拡張します。開発者は用意された XML ファイルを使用することで、これらのカスタム・メニューに変更を加えることができます。XML ファイルには、Application Integration が Microsoft アプリケーションのメニュー内容を構成する際に使用する情報が含まれています。
Application Integration がインストールされたら、開発者は XML ファイルの内容を手動で変更して、アプリケーション要件に合わせてアドイン・メニューをカスタマイズすることができます。カスタマイズした XML ファイルを組織内の他のシステムにコピーすると、特定のユーザーやユーザー・クラスを対象に、アプリケーション環境と機能の可用性を制御することができます。特定のアプリケーションに対して新たに変更が必要になった場合は、対応する XML ファイルを更新し、該当するシステムに再度コピーすることができます。
以下のセクションで、既存のアドイン・メニューの説明と、変更手順および変更に関する考慮事項を示します。
開発者は以下のようにして、アドイン・メニューをカスタマイズできます。
カスタマイズ対象 | 説明 |
---|---|
可視性 | メニュー上に表示する Application Integration コマンドとポップアップ・サブメニューを指定します。この方法で、メニューからサブメニューやコマンドを完全に削除して、特定の機能の可用性を制御することができます。 |
有効状態 | 表示はするが無効化 (灰色表示) する Application Integration コマンドとポップアップ・サブメニューを指定します。開発者はこの方法で、特定のメニューを開けるかどうか、またはコマンドを実行できるかどうかを制御できます。 |
ラベルまたはキャプション | Application Integration コマンドとポップアップ・サブメニューがユーザーに対して表示される際のラベルまたはキャプションを指定します。 例えば、開発者が「チェックイン」コマンドを「ドキュメントの保管」に変更したり、「オーサリング」というサブメニューに一部のコマンドをグループ化したりすることができます。 |
コマンド・アクション | Application Integration コマンドの選択時に実行される Application Integration アクションを指定します。 注 ベンダー・コマンドを指定することはできません。 |
メニュー階層 | メニュー上の Application Integration コマンドの配置 (コマンドの順序、ポップアップ・サブメニューのフォルダー階層にコマンドを含めるかどうかなど) を指定します。 |
Application Integration のインストール時には、XML ファイルがインストール・ディレクトリー (デフォルトでは C:\Program Files\FileNet\AppInt\) に書き込まれます。サポート対象の Microsoft アプリケーションのいずれかが開いている場合は必ず、Application Integration がそれに対応する XML ファイルをインストール・ディレクトリー内で検索し、XML ファイルに含まれている指定に従って、該当するアプリケーションのアドイン・メニューを構成します。Application Integration がインストール・ディレクトリー内で XML ファイルを検出できない場合は、モジュール・ディレクトリーからファイルの収集を試行します。 (モジュール・ディレクトリーは、C:\Program Files\Microsoft Office\Office 内で各 Microsoft 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 スキーマの基本構造は以下のとおりです。
addInMenusConfiguration
- 以下の XML オブジェクトがアプリケーションのアドイン・メニューを記述していることを示す、スキーマ内の最上位オブジェクト。このオブジェクトは、使用するスキーマの
version
も指定します。applicationName
- アドイン・メニューが構成されるターゲット・アプリケーションを識別します。applicationVersion
- ターゲット・アプリケーションのサポート対象バージョンを指定します。addInMenusDefinition
- 各 addInMenusConfiguration
オブジェクトには、このオブジェクトが 1 つ (Microsoft Outlook の場合は 1 つ以上) 含まれています。このオブジェクトには、アプリケーションの各アドイン・メニュー (「ファイル」、「挿入」、「ヘルプ」) の構成方法を指定するオブジェクトが含まれています。このオブジェクトは、作成するアドイン・メニューの type
も指定します。Application Integration でサポートされるタイプは、Word、Excel、PowerPoint の場合は main
、
Outlook の場合は explorer
および inspector
です。addInMenuItem
- 各 addInMenusDefinition
オブジェクトには、このオブジェクトが 1 つ以上含まれています。このオブジェクトでは、各メニューのサブメニュー階層とコマンド・ボタンの動作を記述します。この記述には
itemType
タグを使用します。このタグは popup
または button
に設定することができます。
itemType="popup"
の場合は、addInMenuItem
オブジェクトに addInMenuItem
オブジェクト自身の子からなる list
を含めることができます。これにより、サブメニュー構造を作成できるようになります。
この階層構造は、組織要件を満たすのに必要な深さまで繰り返すことができます。popup
メニュー・アイテムだけなので、itemType="button"
の場合は XML 構造が終了します。setting
- 各 addInMenuItem
オブジェクト (popup
または
button
) には、複数の setting
タグが含まれます。これらのタグで、サブメニューまたはボタンの外観と動作 (メニュー・アイテムの説明、表示ラベルまたはキャプション、メニューの挿入位置、メニュー・アイテムを開くか選択したときに実行される、対応する Application Integration アクションなど) を定義します。『タグの設定
』セクションで、これらの setting
タグについて詳しく説明します。XML スキーマでこれらのタグを使用する例については、『サンプルの XML スキーマ』を参照してください。
各 addInMenuItem
オブジェクトでは、setting
タグを使用して、アドイン・メニューのサブメニューまたはコマンド・ボタンの外観と動作を定義します。タグの構文は、定義される key
によって異なります。
例えば、type
フィールドを必要とする key
もあれば、必要としないものもあります。
<setting key="itemType">popup</setting>
<setting key="parent" type="menuId">30002</setting>
以下の表で、key
に type
フィールドを使用することが必須でない場合、または指定値が不要な場合は、「
タイプ」列または「値」列に「適用外」と示します。
key
の値が既知の Application Integration 変数 (popup
や button
など) でない場合は、「値」列の項目をイタリック体 (例: 30002
) で示します。さらに、key
が必須でない場合は、「説明」列の項目に [オプション] と示します。
Application Integration でサポートされる setting
タグは以下のとおりです。
キー | タイプ | 値 | 説明 |
---|---|---|---|
itemType |
適用外 | popup |
アドイン・メニュー・アイテムが、子を持つポップアップ・サブメニューであることを指定します。子にはコマンド・ボタンや追加のポップアップ・サブメニューを含めることができます。 |
適用外 | button |
アドイン・メニュー・アイテムが、子を持たないコマンド・ボタンであることを指定します。 | |
description |
適用外 | P8 File Menu | [オプション] 情報のみのアドイン・メニュー・アイテムの説明を指定します。この説明は、ユーザーに対しては表示されません。 |
label |
enum |
eOpenSubMenuName |
以下の列挙型定数のいずれかを使用して、アドイン・メニュー・アイテムの表示ラベルまたはキャプションを指定します。
|
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. |
ユーザーがコマンド・ボタンを選択したときに実行する Application Integration 操作を指定します。以下のいずれかの列挙型定数を指定できます。
|
standard |
適用外 | アドイン・メニュー・アイテムがポップアップ・サブメニューの場合は、メニュー・クリックが無視されます。
したがって、XML 内でこの setting の位置にコマンドを指定する必要はありません。注: このキーとタイプのペアは、ポップアップ・サブメニューに対してのみ有効です。 |
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> ...