对于可以从弹出菜单或可以使用 IBM FileNet Workplace XT 的浏览和搜索方式来访问的对象,应用程序提供了一组最终用户可以对特定对象类型执行的操作。例如,可用于文档对象的操作包括检出、下载、更改为复合文档以及移动;对于文件夹对象,可用操作包括添加对象、移动和删除。
作为管理员,您可以定制可对 Workplace XT 用户界面中显示的对象执行的操作。您还可以执行外观更改,例如,将某个操作完全从用户界面中除去。通过使用过滤条件,还可以定义显示某个操作的条件。例如,您可以将下载操作定义为仅在用户单击具有某个类描述、版本状态和内容类型的文档时才显示。
本主题指出了 Workplace XT 界面中对用户提供操作的位置,并描述了用于配置那些操作的菜单操作描述符 XML 文件。
注意:如果您先前通过修改 Workplace 应用程序的 Actions.xml 文件来定制过这些操作,并且希望在 Workplace XT 中使用这些相同的定制操作,那么必须手动将与 Workplace 相关的定制信息添加到 Workplace XT Actions.xml 文件。
操作将通过弹出菜单、“操作”菜单、“工具”菜单和“属性”信息页面提供给用户。(“属性”信息页面和“我的 Workplace”弹出菜单上的操作由 Actions.xml 文件进行定义;MenuActions.xml 文件定义所有其他操作。)当用户右键单击列表视图中的对象或路径视图中的项时,将显示弹出菜单。可用操作的列表取决于所选对象的类型。相同的操作将显示在该对象的“属性”信息页面中。当用户在列表视图中选择一个或多个项然后单击“操作”按钮时,将打开“操作”菜单。如果选择了多项,那么仅对所有所选项有效的操作才会显示在菜单中。
在 Workplace XT 中,您还可以通过使用上下文菜单来显示新操作。要在“操作”菜单中启用某个操作,必须将定制 JavaScript 添加到 ActionsMenu.js 文件。
在 ActionsMenu.js 的
showActionsMenu 函数中,添加以下代码:
if ($("ACTIONS_MENU__actionid"))
validActions.push("actionid");
其中“actionid”是在 MenuActions.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 由五个部分组成:multiSelectActions
、toolbarActions
、folderToobarActions
、topLevelActions
和 actionDefinitions
。
在 topLevelActions
数组和
multiSelectActions
数组中,请将操作的顺序定义为它们在用户界面中的显示顺序。即,在 topLevelActions
数组中,value 元素的顺序将反映在弹出菜单和信息页面中。在 multiSelectActions
数组中,value 元素的顺序将反映在多选菜单中。可以通过对操作进行注释来隐藏操作。
在 multiSelectActions
数组中,您只能指定要进行多选的操作;即多选操作不必列示在 topLevelActions
数组中。
在 toolbarActions
和 folderToolbarActions
部分中,您定义当浏览或搜索文档和文件夹时显示在工具栏上“操作”按钮旁边的工具栏按钮。toolbarActions 部分控制与文档相关的操作;folderToolbarActions 部分控制与文件夹相关的操作。
actionDefinitions
列表由操作
对象组成,每个操作对象都包含一个条件列表,这些条件定义是否对各个对象显示操作。注意,顶级操作可以包含子菜单,如果顶级操作包含子菜单,那么其定义必须包括
subActions
设置。还请注意,multiSelectActions
数组中列示的操作的定义必须包括 multiSelectURL
设置。请参阅菜单操作定义设置以了解所有设置的描述。
<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&
objectType={OBJECT_TYPE}&
id={OBJECT_ID}&
vsId={VERSION_SERIES_ID}&
objectStoreName={OBJECT_STORE_NAME}&
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 属性进行标识。除非另有指定,否则设置是可选的。如果某个可选设置不存在,那么将使用其缺省值。
键 | 设置 | 值 |
---|---|---|
baseURLKey |
<setting key="baseURLKey"> |
如果此设置存在,那么将使用 Records Manager 应用程序的基本 URL 来代替 Workplace XT 基本 URL(缺省值)。唯一的有效值是“rm”。 |
classes |
<array key="classes"> |
定义对于此操作有效的类的列表。这些值必须采用 GUID 格式。此操作仅可用于列示的类。 注意:如果此设置存在,请不要设置 excludedClasses 。 |
contentTypes |
<array key="contentTypes"> |
定义对于此操作有效的 MIME 类型和容器类型的列表。此操作仅可用于所指定内容类型的对象。如果此设置不存在,那么此操作可用于所有内容类型。 此设置中的值支持“*”和“?”通配符。“*”表示任何数目的字符(包括没有字符的情况)。“?”表示一个字符。 注意:如果此设置存在,请不要设置 excludedContentTypes 。 |
excludedClasses |
<array key="excludedClasses"> |
定义对于此操作无效的类的列表。这些值必须采用 GUID 格式。此操作不可用于列示的类。 注意:如果此设置存在,请不要设置 classes 。 |
excludedContentTypes |
<array key="excludedContentTypes"> |
定义对于此操作无效的 MIME 类型和容器类型的列表。此操作可用于不是任何所列示内容类型的所有对象。此设置中的值也支持“*”和“?”通配符。 注意:如果此设置存在,请不要设置 contentTypes 。 |
excludedObjectTypes |
<array key="excludedObjectTypes"> |
定义对于此操作无效的对象类型的列表。 注意:如果此设置存在,请不要设置 objectTypes 。 |
favoritesOnly |
<setting key="favoritesOnly"> |
如果值为 true,那么此操作仅显示在“收藏夹”页面中。缺省值为 false。 |
hideBasedOnVersionStatusConditions |
<setting key="hideBasedOnVersionStatusConditions"> |
如果值为 true(缺省值),那么对象的版本状态确定此操作是否显示在“收藏夹”页面中。此键仅适用于
promoteVersion 和 demoteVersion 操作定义。缺省值为 false。 |
hideForFavorites |
<setting key="hideForFavorites"> |
如果值为 true,那么此操作不会显示在“收藏夹”页面中。此键仅适用于 addToFavorites 操作定义。缺省值为 false。 |
hideForVersions |
<setting key="hideForVersions"> |
如果值为 true,那么将不对信息页面中对象的版本显示此操作。即,如果您从对象的信息页面转至“版本”属性页面,然后转至特定对象的信息页面,那么此操作不可用。缺省值为 true。 |
hideInSitePreferences |
<setting key="hideInSitePreferences"> |
如果值为 true,那么此操作不会显示在“站点首选项”用户界面中。缺省值为 false。 |
hideWhenCheckedOut |
<setting key="hideWhenCheckedOut"> |
如果值为 true,那么当检出文档时不会显示此操作。缺省值为 false。 |
id |
<setting key="id"> |
定义操作的唯一标识。必须指定一个值。 |
img |
<setting key="img"> |
定义此操作的图标。此设置不是必需的。值必须是大小为 16x16 像素的图像的有效路径。 注意:您可以使用类似于 url 的相对路径。 |
isPopup |
<setting key="isPopup"> |
如果值为 true,那么当选择了一个对象时将在新窗口打开此操作。缺省值为 false。 |
multiSelectPopupHeight |
<setting key="multiSelectPopupHeight"> |
定义新窗口的像素高度。如果 isPopup 已设置为 false,或者未使用 multiSelectURL ,那么将忽略此设置。缺省值为 600。 |
multiSelectPopupWidth |
<setting key="multiSelectPopupWidth"> |
定义新窗口的像素宽度。如果 isPopup 已设置为 false,或者未使用 multiSelectURL ,那么将忽略此设置。缺省值为 800。 |
multiSelectURL |
<setting key="multiSelectURL"> |
定义多选 URL。此设置定义实现多选操作的页面的 URL。任何支持多选的操作必须具有此设置。此操作还必须包括在 MenuActions.xml 的 multiSelectActions 部分中。 |
objectTypes |
<array key="objectTypes"> |
定义对于此操作有效的对象类型的列表。如果此设置不存在,那么所有对象类型都有效。有效值如下: - objectstore 注意:如果此设置存在,请不要设置 excludedObjectTypes 。 |
onclick |
<setting key="onclick"> |
定义当用户在用户界面中单击此操作时要调用的事件操作。 |
popupHeight |
<setting key="popupHeight"> |
定义新窗口的像素高度。如果 isPopup 已设置为 false,那么将忽略此设置。缺省值为 600。 |
popupWidth |
<setting key="popupWidth"> |
定义新窗口的像素宽度。如果 isPopup 已设置为 false,那么将忽略此设置。缺省值为 800。 |
renderSeparatorAbove |
<setting key="renderSeparatorAbove"> |
如果值为 true,那么此操作将在操作列表上面绘制一个分隔行。缺省值为 false。 |
returnParameters |
<setting key="returnParameters"> |
定义当此操作完成处理后要包括的 URL 参数。在某些情况下用来提供在完成操作后刷新首页的机制。 |
rmHideIfAlreadyDeclared |
<setting key="rmHideIfAlreadyDeclared"> |
如果值为 true,那么仅当文档未声明为记录时,才会显示此操作。缺省值为 false。 注意:仅当在站点首选项中选择了 Records Manager 时,此设置才有效。 |
rmOnly |
<setting key="rmOnly"> |
如果值为 true,那么仅当在站点首选项中选择了 Records Manager 时,才会显示此操作。缺省值为 false。 |
roles |
<array key="roles"> |
定义对于此操作有效的访问角色的列表。仅隶属于一个或多个列示的角色的用户才能看到此操作。访问角色在 Content Engine 中进行定义。缺省值为“每个人”。 注意:您还可以在站点首选项的“操作角色访问权”页面中设置角色。 |
shortId |
<array key="shortId"> |
定义此操作的短标识。 注意:仅可从工具栏和“操作”按钮中看到短标识。 |
showInActionsMenuOnly |
<setting key="showInActionsMenuOnly"> |
如果值为 true,那么“添加文档”、“高级添加文档”和“添加文件夹”操作将仅显示在“操作”菜单中,而不会显示在所选项的弹出菜单中。缺省值为 false。 |
showOnlyWhenCheckedOut |
<setting key="showOnlyWhenCheckedOut"> |
如果值为 true,那么仅当检出文档时才会显示此操作。缺省值为 false。 |
subActions |
<array key="subActions"> |
定义显示在子菜单中的操作的列表。注意,必须为 subActions 数组中的每个值都定义一个 actionDefinition 。注意:您只能具有一个级别的子菜单; subActions 数组中列示的任何操作都不能具有其自己的子菜单。 |
title |
<setting key="title"> |
定义此操作的标签,该标签将显示在用户界面中。必须指定此设置。 |
titleForSitePreferences |
<setting key="titleForSitePreferences"> |
此操作的标题作为操作显示在站点首选项的“操作角色访问权”页面中。如果未包括此设置,那么将使用
title 的值。 |
url |
<setting key="url"> |
定义实现此操作的页面的 URL 和在 URL 上传递到该页面的参数。URL 模式宏中描述了此字符串的格式。 必须指定此设置。 |
useToken |
<setting key="useToken"> |
如果值为 true,那么在重定向之前,用户令牌将追加到 URL。仅当在站点首选项中选择了令牌支持时,才会发生这种情况。缺省值为 false。 |
versionStatusConditions |
<array key="versionStatusConditions"> |
定义对于此操作有效的版本状态的值。如果此设置不存在,那么版本状态的任何值都有效。有效值如下: - released 使用 inprocess 表示具有主版本的版本系列。使用 inprocessNoMajor 表示不具有主版本的版本系列。有关这些值的信息,请参阅版本控制属性。 |
下表中的宏用于操作定义的 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} |
时区标识。 |