IBM FileNet P8, Версия 5.2            

Настройка меню надстройки Файл, Вставка и Справка

IBM® FileNet P8 Application Integration обеспечивает поддержку настройки всплывающих меню Файл, Вставка и Справка в Microsoft Outlook, Word, Excel и PowerPoint. Application Integration использует надстройки COM для расширения этих приложений путем добавления пользовательских меню надстроек. Разработчики могут модифицировать эти пользовательские меню, используя прилагаемые XML-файлы, содержащие информацию, которая нужна компоненту Application Integration для конфигурирования содержимого меню для приложений Microsoft.

После установки Application Integration разработчики могут вручную изменить содержимое этих XML-файлов, чтобы настроить меню надстройки в соответствии со своими требованиями. Настроенные XML-файлы можно потом скопировать на другие компьютеры в организации, чтобы обеспечить возможность управления средой приложения и доступностью компонентов для отдельного пользователя или класса пользователей. Если для какого-либо приложения потребуется внести новые изменения, можно обновить соответствующий XML-файл и снова скопировать на соответствующие компьютеры.

Способы настройки XML

Разработчики могут настроить меню надстройки следующим образом:
Табл. 1. Здесь перечислены и описаны различные способы настройки меню надстройки.
Настроить... Описание
Видимость Укажите команды и всплывающие подменю Application Integration, которые должны быть видны в меню. Можно полностью удалить подменю или команду из меню, чтобы управлять доступностью той или иной функции.
Состояние включения Укажите команды и всплывающие подменю Application Integration, которые должны быть видны в меню, но должны быть недоступны (показаны серым цветом). Разработчики могут управлять тем, можно ли открыть то или иное меню или выполнить ту или иную команду.
Метка или заголовок Задайте метки или заголовки для команд и всплывающих подменю Application Integration, которые увидит пользователь. Например, разработчики могут переименовать команду "Активировать" в "Сохранить документ" или сгруппировать вместе несколько команд в подменю "Разработка".
Действие команды Укажите, какое действие Application Integration должно выполняться при выборе команды Application Integration.
Прим.: Задавать свои команды нельзя.
Иерархия меню Задайте расположение команд Application Integration в меню, включая порядок команд и то, будут ли они содержаться в иерархии папок всплывающего подменю.

Имена XML-файлов и их расположение

При установке Application Integration XML-файлы записываются в каталог установки (по умолчанию - C:\Program Files\FileNet\AppInt\). Каждый раз при открытии поддерживаемого приложения Microsoft компонент Application Integration ищет соответствующий XML-файл в каталоге установки, а затем конфигурирует меню надстройки для этого приложения в соответствии со спецификациями, содержащимися в XML-файле. Если компонент Application Integration не сможет найти XML-файлы в каталоге установки, он попытается взять файлы из каталога модуля. (Каталог Module - это каталог, где обычно находятся приложения Microsoft Office; по умолчанию, это каталог C:\Program Files\Microsoft Office\Office.)

ОСТОРОЖНО:
Хотя разработчики и могут изменять содержимое XML-файлов, имена XML-файлов изменять нельзя, и эти файлы должны находиться в каталоге установки или в каталоге модуля, чтобы компонент Application Integration смог найти и использовать эти XML-файлы для конфигурирования меню надстройки.
В приведенной ниже таблице указаны имена XML-файлов, приложения Microsoft Office, с которыми связан каждый XML-файл, и поддерживаемые версии каждого приложения.
Табл. 2. Имена всех XML-файлов вместе с соответствующими им приложениями Microsoft Office и поддерживаемыми версиями этих приложений.
Имя XML-файла Соответствующее приложение Поддерживаемые версии
FnAppIntExcelMenus.xml Excel 2003, 2007, 2010
FnAppIntOutlookMenus.xml Проводник Outlook (окно обзора элементов)

Инспектор Outlook (окно изменения элементов)

2003, 2007, 2010
FnAppIntPowerPointMenus.xml PowerPoint 2003, 2007, 2010
FnAppIntWordMenus.xml Word 2003, 2007, 2010

Замечания, касающиеся внесения изменений в XML

Прежде чем вносить изменения в XML-файлы, нужно принять во внимание следующее:
  • Хотя XML-файлы устанавливаются как файлы, доступные только для чтения, разработчики могут изменить разрешения на доступ к этим файлам, сделав их доступными для чтения и записи.
  • XML-файлы, которые поставляет IBM, содержат правильный синтаксис и информацию об использовании, позволяющие задавать меню надстройки и их содержимое. Разработчики должны тщательно соблюдать формат XML и синтаксис параметров, показанные в этих файлах. Кроме того, разработчики, прежде чем вносить какие-либо изменения, могут создать резервные копии исходных XML-файлов. Это поможет при отладке и устранении потенциальных синтаксических ошибок в модифицированных файлах.
  • Чтобы сконфигурировать меню надстройки, Application Integration ищет XML-файлы по их именам в каталоге установки. Хотя разработчики и могут изменять содержимое XML-файлов, имена XML-файлов изменять нельзя, и эти файлы должны находиться в каталоге установки или в каталоге модуля, чтобы компонент Application Integration смог найти и использовать эти XML-файлы для конфигурирования меню надстройки.
  • Каждый раз, когда устанавливается компонент Application Integration, включая пакеты исправлений, в каталог установки записываются исходные XML-файлы. В результате, настроенные XML-файлы могут оказаться перезаписаны. Поэтому разработчикам имеет смысл создать резервные копии своих модифицированных XML-файлов и либо сохранить эти файлы, используя для них уникальные имена, либо сохранить их в другую папку. Тогда можно будет быстро восстановить настроенные XML-файлы, как только это потребуется.

Схема XML для меню надстройки

Для меню надстройки используется следующая базовая схема XML:
  • addInMenusConfiguration - объект высшего уровня в схеме, который указывает, что следующие далее XML-объекты описывают меню надстройки для приложения. Этот объект также задает версию реализуемой схемы.
  • applicationName - указывает целевое приложение, для которого конфигурируются меню надстройки.
  • applicationVersion - указывает поддерживаемые версии целевого приложения.
  • addInMenusDefinition - каждый объект addInMenusConfiguration содержит один (или более, как в случае Microsoft Outlook) из объектов, которые определяют то, как следует сконфигурировать каждое меню надстройки (Файл, Вставка и Справка) для приложения. Этот объект также задает тип меню надстройки, которое нужно создать. Application Integration поддерживает следующие типы: main - для Word, Excel и PowerPoint, и explorer и inspector - для Outlook.
  • addInMenuItem - каждый объект addInMenusDefinition состоит из одного или нескольких объектов, которые описывают иерархию подменю и поведение кнопок команд для каждого меню. Это осуществляется за счет использования тега itemType в котором можно указать значение popup или button.
    • Если указано itemType="popup", объект addInMenuItem может содержать список своих объектов-потомков addInMenuItem, что дает возможность создавать структуру подменю. Эту иерархическую структуру можно повторять до любой глубины, которая потребуется, чтобы выполнить требования вашей организации.
    • Если указано itemType="button", структура XML завершается, так как дочерние элементы меню могут быть только у элементов типа popup.
  • setting - каждый объект addInMenuItem object (popup или button) содержит несколько тегов setting, которые задают вид и поведение подменю или кнопки, например, описание пункта меню, появляющуюся на экране метку или заголовок, место вставки меню и соответствующее действие Application Integration, которое нужно выполнить при открытии или выборе элемента меню. Теги setting подробно описаны в разделе Теги setting.

Пример того, как эти теги используются в схеме XML, смотрите в разделе Пример схемы XML.

Теги setting

Теги setting используются в каждом объекте addInMenuItem, чтобы задать вид и поведение подменю или кнопок команд в меню надстройки. Синтаксис этого тега зависит от задаваемого значения key. Например, для некоторых значений key требуется поле type, а для других - нет.

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

В следующей таблице, если для элемента key не требуется поле type или не нужно задавать значение, в столбце Тип или Значение для этого элемента будет указано "Неприменимо". Если значение key не является известной переменной Application Integration (такой, как popup или button), запись в столбце Значение будет показана курсивом; например, 30002. Кроме того, если значение key не требуется, текст в столбце Описание будет содержать индикатор [Необязательно].

Application Integration поддерживает следующие теги setting.
Табл. 3. Список ключей вместе с их типами, значениями и описаниями.
Ключ Тип Значение Описание
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 Активировать... Позволяет задать видимую метку или заголовок элемента меню надстройки путем ввода фактической текстовой строки.
visible Неприменимо true Указывает, что элемент меню надстройки (и все его потомки, если элемент меню представляет собой всплывающее подменю) будет виден пользователю.
    false Указывает, что элемент меню надстройки (и все его потомки, если элемент меню представляет собой всплывающее подменю) не будет виден пользователю (то есть, этот элемент меню не появится в меню надстройки).
enabled Неприменимо true Указывает, что элемент меню надстройки включен, то есть, пользователь может открыть всплывающее подменю или выбрать кнопку команды.
    False Указывает, что пользователь не может открыть или выбрать элемент меню надстройки (то есть, данный элемент меню будет отключен в меню надстройки).
parent menuId 30002 Задает значение идентификатора меню ("menuId") для родительского меню пункта меню надстройки. Если элемент меню представляет собой подменю всплывающего меню, этим значением, как правило, является ID элемента управления существующего меню Microsoft Office. Более подробную информацию об ID меню в приложениях Microsoft Office смотрите в публикации Microsoft Office Developers Guide for Office 2003/XP/2007 (Руководство разработчика Microsoft Office для Office 2003/XP/2007).
  topLevel Неприменимо Если элемент меню надстройки представляет собой подменю всплывающего меню, эта пара ключа и типа указывает, что подменю помещается в строку меню высшего уровня в приложении.
Прим.: Эта пара ключа и типа применима только к всплывающим подменю.
  Неприменимо Неприменимо Если элемент меню надстройки представляет собой кнопку команды, родитель реализуется в заданном XML путем использования тега <list key="children">. Поэтому в этом теге setting в XML не требуется спецификация родителя.
Прим.: Эта пара ключа и типа применима только к кнопкам команд.
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 Неприменимо Если элемент меню надстройки представляет собой подменю всплывающего меню, щелчки мышью в меню будут игнорироваться. Поэтому в этом теге setting в XML не требуется спецификация команды.
Прим.: Эта пара ключа и типа применима только к всплывающим подменю.

Пример того, как эти теги используются в схеме XML, смотрите в разделе Пример схемы XML.

Пример схемы XML

Приведенный ниже фрагмент кода иллюстрируйте базовую схему XML для меню надстройки в случае приложения Excel:
<?xml version="1.0" ?>
 <!-- Меню надстройки IBM FileNet P8 Application Integration 4.0 в Excel-->
 <!-- Меню надстройки - Информация о конфигурации -->
 <object key="addInMenusConfiguration" version="1.0">
 <setting key="applicationName">Excel</setting>
 <array key="applicationVersion">
 <value>2003</value>
 <value>2007</value>
 <value>2010</value>
 </array>
 <!-- Меню надстройки - Определения главных меню -->
 <object key="addInMenusDefinition" type="main">
 <list key="children">
 <!-- Меню Файл P8 -->
 <object key="addInMenuItem">
 <setting key="itemType">popup</setting>
 ...
 <list key="children">
 <!-- Подменю Открыть документ -->
 <object key="addInMenuItem">
 <setting key="itemType">popup</setting>
 <setting key="description">Подменю команд для открытия документов.</Setting>
 <setting key="label" type="text">Открыть документ</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">
 <!-- Открыть документ - Кнопка Мои резервирования... -->
 <object key="addInMenuItem">
 <setting key="itemType">button</setting>
 ...
 <list key="children" />
 </object>
 <!-- Открыть документ - Кнопка Выбрать элемент... -->
 <object key="addInMenuItem">
 <setting key="itemType">button</setting>
 ...
 <list key="children" />
 </object>
 </list>
 <list key="children" />
 </object>
 <!-- Подменю Добавить документ -->
 <object key="addInMenuItem">
 <setting key="itemType">popup</setting>
 ...
 <list key="children" />
 </object>
 ...
 <!-- Кнопка Добавить папку... -->
 <object key="addInMenuItem">
 <setting key="itemType">button</setting>
 <setting key="description">Запустить мастер добавления папок</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 -->
 <object key="addInMenuItem">
 <setting key="itemType">popup</setting>
 ...
 <list key="children">
 ...
 </list>
 <list key="children" />
 </object>
 <!-- Меню Справка P8 -->
 <object key="addInMenuItem">
 <setting key="itemType">popup</setting>
 ...
 <list key="children">
 ...
 </list>
 <list key="children" />
 </object>
 </list>
 </object>
 </object>
...


Отзывы

Последнее обновление: Март 2013 г.
overview_addin_menus.htm

© Copyright IBM Corp. 2013.
Этот информационный центр построен на основе технологии Eclipse. (http://www.eclipse.org)