定制 Workplace XT 操作

对于可以从弹出菜单或可以使用 IBM FileNet Workplace XT 的浏览和搜索方式来访问的对象,应用程序提供了一组最终用户可以对特定对象类型执行的操作。例如,可用于文档对象的操作包括检出、下载、更改为复合文档以及移动;对于文件夹对象,可用操作包括添加对象、移动和删除。

作为管理员,您可以定制可对 Workplace XT 用户界面中显示的对象执行的操作。您还可以执行外观更改,例如,将某个操作完全从用户界面中除去。通过使用过滤条件,还可以定义显示某个操作的条件。例如,您可以将下载操作定义为仅在用户单击具有某个类描述、版本状态和内容类型的文档时才显示。

本主题指出了 Workplace XT 界面中对用户提供操作的位置,并描述了用于配置那些操作的菜单操作描述符 XML 文件

注意:如果您先前通过修改 Workplace 应用程序的 Actions.xml 文件来定制过这些操作,并且希望在 Workplace XT 中使用这些相同的定制操作,那么必须手动将与 Workplace 相关的定制信息添加到 Workplace XT Actions.xml 文件。

Workplace XT UI 中的操作

操作将通过弹出菜单、“操作”菜单、“工具”菜单和“属性”信息页面提供给用户。(“属性”信息页面和“我的 Workplace”弹出菜单上的操作由 Actions.xml 文件进行定义;MenuActions.xml 文件定义所有其他操作。)当用户右键单击列表视图中的对象或路径视图中的项时,将显示弹出菜单。可用操作的列表取决于所选对象的类型。相同的操作将显示在该对象的“属性”信息页面中。当用户在列表视图中选择一个或多个项然后单击“操作”按钮时,将打开“操作”菜单。如果选择了多项,那么仅对所有所选项有效的操作才会显示在菜单中。

在 Workplace XT 中,您还可以通过使用上下文菜单来显示新操作。要在“操作”菜单中启用某个操作,必须将定制 JavaScript 添加到 ActionsMenu.js 文件。

ActionsMenu.js 的 showActionsMenu 函数中,添加以下代码:

            if ($("ACTIONS_MENU__actionid"))
                validActions.push("actionid");

其中“actionid”是在 MenuActions.xml 文件中对您的操作指定的标识。

菜单操作描述符 XML 文件

MenuActions.xml 包含用于浏览和搜索方式的操作的定义,这些操作显示在弹出菜单和多选菜单中。该文件位于 <XT_deploy_path>\FileNet\Config\WebClient 文件夹中,其中 <XT_deploy_path> 是部署了 Workplace XT 的路径。MenuActions.xml 遵循 Workplace 首选项 XML 模式 Preferences.xsd,该模式位于 <XT_deploy_path>\FileNet\WebClient\WorkplaceXT\WEB-INF\xml 中。

注意:

文件结构

如以下列表中所示,MenuActions.xml 由五个部分组成:multiSelectActionstoolbarActionsfolderToobarActionstopLevelActionsactionDefinitions

topLevelActions 数组和 multiSelectActions 数组中,请将操作的顺序定义为它们在用户界面中的显示顺序。即,在 topLevelActions 数组中,value 元素的顺序将反映在弹出菜单和信息页面中。在 multiSelectActions 数组中,value 元素的顺序将反映在多选菜单中。可以通过对操作进行注释来隐藏操作。

multiSelectActions 数组中,您只能指定要进行多选的操作;即多选操作不必列示在 topLevelActions 数组中。

toolbarActionsfolderToolbarActions 部分中,您定义当浏览或搜索文档和文件夹时显示在工具栏上“操作”按钮旁边的工具栏按钮。toolbarActions 部分控制与文档相关的操作;folderToolbarActions 部分控制与文件夹相关的操作。

actionDefinitions 列表由操作对象组成,每个操作对象都包含一个条件列表,这些条件定义是否对各个对象显示操作。注意,顶级操作可以包含子菜单,如果顶级操作包含子菜单,那么其定义必须包括 subActions 设置。还请注意,multiSelectActions 数组中列示的操作的定义必须包括 multiSelectURL 设置。请参阅菜单操作定义设置以了解所有设置的描述。

菜单操作描述符 XML 文件中的各个部分

<object key="actionsConfiguration" version="1.0">
...

  <array key="multiSelectActions">
    <value>download</value>
    <value>checkout</value>
    <value>cancelCheckout</value>
    <value>file</value>
    <value>delete</value>
    <value>assignSecurityPolicy</value>
    <value>sendMail</value>
  </array>
  <array key="toolbarActions">
    <value>download</value>
    <value>checkout</value>
    <value>quickCheckin</value>
    <value>cancelCheckout</value>
    <value>addToFavorites</value>
    <value>infoProperties</value>
    <value>sendMail</value>
  </array>
  <array key="folderToolbarActions">
    <value>addDocument</value>
    <value>addFolder</value>
  </array>
  <array key="topLevelActions">
    <value>view</value> <!-- for documents, publish templates -->
    <value>open</value> <!-- for folders, searches, object stores -->
    <value>download</value>
    <value>checkout</value>
    <value>quickCheckin</value>
    <value>cancelCheckout</value>
    <value>addToFavorites</value>
    <value>removeFavorite</value>
    <value>renameFavorite</value>
    <value>sendMail</value>
    <value>launch</value>
    <value>transfer</value>
    <value>addSubscription</value>
    <value>declareAsRecord</value>
    <value>declareVersionsAsRecord</value>
    <value>testFormTemplate</value>
    <value>modifyDocumentPolicy</value>
    <value>modifyWorkflowPolicy</value>
    <value>takeOffline</value>
    <value>modifyEntryTemplate</value>
    <value>modifyRecordEntryTemplate</value>
    <!-- RM changes start-->
    <value>requestchargeout</value>
    <value>viewDocumentInfo</value>
    <!-- RM changes end -->
    <value>infoProperties</value>
    <value>moreInformation</value>
    <value>documentActions</value>
    <value>folderActions</value>
    <!-- always in the end -->
    <value>addDocument</value>
    <value>addFolder</value>
  </array>

<list key="actionDefinitions">

...

<object key="action">
    <setting key="id">download</setting>
    <setting key="title" localizationKey="server.MenuActions_xml.download">Download…</setting>
    <setting key="url">
       getContent?
       mode=download&amp;
       objectType={OBJECT_TYPE}&amp;
       id={OBJECT_ID}&amp;
       vsId={VERSION_SERIES_ID}&amp;
       objectStoreName={OBJECT_STORE_NAME}&amp;
       returnUrl={RETURN_URL}
    </setting>
    <setting key="multiSelectURL">
       operations/WcmMultiDownloadObject.jsp?
       returnUrl={RETURN_URL}
    </setting>
    <setting key="img">images/action/toolbar/Download23.gif</setting>
    <array key="objectTypes">
       <value>document</value>
    </array>
    <array key="excludedContentTypes">
       <!--RM Change start -->
       <value>application/x-filenet-rm-physicalrecord</value>
       <value>application/x-filenet-rm-electronicrecord</value>
       <value>application/x-filenet-rm-emailrecord</value>
       <!-- RM Change ends -->

<!-- entry template mime types -->
       <value>application/x-filenet-entrytemplate</value>
       <value>application/x-filenet-documententrytemplate</value>
       <value>application/x-filenet-folderentrytemplate</value>
       <value>application/x-filenet-customobjectentrytemplate</value>
       <value>application/x-filenet-formdataentrytemplate</value>
       <value>application/x-filenet-declarerecordentrytemplate</value>
       <value>application/x-filenet-pageentrytemplate</value>
       <value>application/x-filenet-sectionentrytemplate</value>
       <value>application/x-filenet-cfwpageentrytemplate</value>
       <value>application/x-filenet-cfwsectionentrytemplate</value>
       <value>application/x-filenet-cfwtextentrytemplate</value>
       <value>application/x-filenet-localsectionentrytemplate</value>

<!-- wcm mime types -->
       <value>application/x-filenet-sp-cr</value>
       <value>application/x-filenet-sp-target</value>
       <value>application/x-filenet-sp-page</value>
       <value>application/x-filenet-sp-section</value>
       <!-- Form policies -->
       <value>application/x-filenet-documentpolicy</value>
       <value>application/x-filenet-workflowpolicy</value>

<!-- external documents (pointing to an URL) -->
       <value>application/x-filenet-external</value>
    </array>
    <setting key="isPopup">false</setting>
    <setting key="popupHeight">600</setting>
    <setting key="popupWidth">750</setting>
</object>

菜单操作定义设置

下表描述了 MenuActions.xml 中的每个操作定义设置。每个设置由其 key 属性进行标识。除非另有指定,否则设置是可选的。如果某个可选设置不存在,那么将使用其缺省值。

URL 模式宏

下表中的宏用于操作定义的 url 设置中。它们定义实现此操作的页面的 URL 和在 URL 上传递到该页面的参数。在实际的 URL 中,这些宏将替换为相应值。例如,如果模式是 operations/Test.jsp?id={OBJECT_ID},并且将对其调用操作的对象具有标识 {A73BEEB2-B0B7-11D2-8853-0000F80883E3},那么操作 URL 将是 operations/Test.jsp?id={A73BEEB2-B0B7-11D2-8853-0000F80883E3}

{OBJECT_STORE_NAME} 对象库名称;例如“TEST_OS”。
{OBJECT_ID} GUID 或路径格式的对象标识。
{OBJECT_LABEL} 对象标签,作为标签显示在用户界面中。
{OBJECT_TYPE} 字符串形式的对象类型;例如,“document”或“folder”。
{VERSION_SERIES_ID} GUID 格式的版本系列标识。
{CLASS_ID} GUID 格式的类标识。
{CONTENT_TYPE} 内容类型,例如,字符串和已编码的 URL。
{MAJOR_VERSION} 主版本;例如,“1”。
{MINOR_VERSION} 次要版本;例如,“2”。
{VERSION_STATUS} 数字形式的版本状态;例如,“1”。
{RETURN_URL} 返回 URL 和已编码的 URL;例如,“http://<server>:<port>/WorkplaceXT/Browse.jsf”
{TIME_ZONE} 时区标识。