Customizar Ações do Workplace XT

Para os objetos acessíveis pelos menus pop-up ou nos modos de navegador e de procura do IBM® FileNet Workplace XT, o aplicativo apresenta um conjunto de operações ou ações que um usuário final pode executar em um determinado tipo de objeto. Por exemplo, as ações disponíveis para um objeto de documento incluem registro de saída, download, mudança para composto e movimentação; para um objeto de pasta, eles incluem inclusão de objetos, movimentação e exclusão.

Como administrador, é possível customizar as ações que podem ser executadas em objetos que aparecem na interface com o usuário do Workplace XT. Também é possível executar mudanças cosméticas, como remover uma ação completamente da interface com o usuário. Usando o critério de filtragem, também é possível definir as condições sob as quais uma ação aparece. Por exemplo, é possível definir que a ação de download apareça apenas quando os usuários clicarem em documentos de uma determinada descrição de classe, status de versão e tipo de conteúdo.

Este tópico aponta os locais na interface do Workplace XT onde as ações são apresentadas aos usuários e descreve o arquivo XML do descritor de ações do menu que você usa para configurar essas ações.

Nota: Se você customizou anteriormente as ações do aplicativo Workplace modificando seu arquivo Actions.xml e desejar usar essas mesmas ações customizadas no Workplace XT, deverá incluir manualmente as customizações relacionadas ao Workplace no arquivo Actions.xml do Workplace XT.

Ações na UI do Workplace XT

As ações estão disponíveis ao usuário em menus pop-up, no menu Ações, menu de Ferramentas e nas páginas de informações de Propriedades. (As ações nas páginas de informações de Propriedades e nos menus pop-up de Meu Workplace são definidas pelo arquivo Actions.xml; o arquivo MenuActions.xml define todas as outras ações.) O menu pop-up aparece quando um usuário clica com o botão direito do mouse em um objeto em uma visualização de lista, ou em um item na visualização de caminho. A lista de ações disponíveis depende do tipo de objeto selecionado. As mesmas ações aparecem na página de informações de Propriedades do objeto. Quando um usuário seleciona um ou mais itens na visualização de lista e, em seguida, clica no botão "Ações", o menu Ação é exibido. Se diversos itens forem selecionados, apenas as ações válidas para todos os itens selecionados serão mostradas no menu.

No Workplace XT, também é possível expor uma nova ação usando o menu de contexto. Você deve incluir o JavaScript customizado no arquivo ActionsMenu.js para ativar uma ação no menu Ações.

Na função showActionsMenu no ActionsMenu.js, inclua o seguinte código:
if ($("ACTIONS_MENU__actionid"))
validActions.push("actionid");

Em que "actionid" é o ID de sua ação, conforme especificado no arquivo MenuActions.xml.

Arquivo XML do Descritor de Ações de Menu

MenuActions.xml contém as definições de ações exibidas no menu pop-up e no menu de multisseleção para o modo de navegação e de procura. O arquivo está localizado na pasta <XT_deploy_path>\FileNet\Config\WebClient, em que <XT_deploy_path> é o caminho em que o Workplace XT está implementado. MenuActions.xml segue o Esquema XML de Preferências do Workplace, Preferences.xsd, localizado em <caminho_de_implementação_do_XT>\FileNet\WebClient\WorkplaceXT\WEB-INF\xml.

Notas:  
  • Faça backup de MenuActions.xml antes de modificá-lo.
  • Se você modificar o arquivo MenuActions.xml para que inclua caracteres estendidos, salve o arquivo como UTF-8.
  • Depois de modificar MenuActions.xml, recarregue-o a partir do Workplace XT para evitar ter que reiniciar o servidor da Web em que o aplicativo está implementado.
Estrutura do Arquivo
Conforme mostrado na listagem a seguir, MenuActions.xml consiste em cinco seções: multiSelectActions, toolbarActions, folderToobarActions, topLevelActions e actionDefinitions.
Na matriztopLevelActions e na matriz multiSelectActions, defina a ordem das ações da forma como aparecem na interface com o usuário. Isto é, na matriz topLevelActions, a ordem dos elementos de valor é refletida no menu pop-up e nas páginas de informações. Na matriz multiSelectActions, a ordem dos elementos de valor é refletida no menu de multisseleção. É possível ocultar as ações colocando-as como comentário.
Na matriz multiSelectActions, é possível especificar que as ações sejam apenas de multisseleção, isto é, uma ação de multisseleção não precisa estar listada na matriz topLevelActions.
Nas seções toolbarActions e folderToolbarActions, os botões da barra de ferramentas que aparecem ao lado do botão Ações são definidos na barra de ferramentas ao procurar ou navegar por documentos e pastas. A seção toolbarActions controla ações relacionadas a documentos; a seção folderToolbarActions controla ações relacionadas a pastas.
A lista actionDefinitions consiste em objetos de ação, cada um dos quais contém uma lista de condições que definem se a ação é exibida para cada objeto individual. Observe que uma ação de nível superior pode conter um submenu, caso contrário, a definição de ação de nível superior deverá incluir uma configuração subActions. Observe também que a definição de uma ação listada na matriz multiSelectActions deve incluir uma configuração multiSelectURL. Consulte Configurações de Definição de MenuAction para obter uma descrição de todas as configurações.
Seções no Arquivo XML do Descritor de Ações de Menu
<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>

Configurações de Definição de Ação de Menu

A tabela a seguir descreve cada configuração de definição de ação em MenuActions.xml. Cada configuração é identificada por seu atributo-chave. A não ser que especificado o contrário, uma configuração é opcional. Se uma configuração opcional não estiver presente, seu valor padrão será usado.
Tabela 1. Esta tabela descreve cada configuração de definição de ação em MenuActions.xml.
Chave Configuração Valor
baseURLKey
<setting key="baseURLKey">
 rm
</setting>
Se essa configuração estiver presente, a URL base do aplicativo Records Manager será usada em vez da URL base do Workplace XT (padrão). O único valor válido é "rm".
classes
<array key="classes">
 <value>{63F8AA94-E2B9-11D0
 -ADF6-00C04FB66DAD}</value>
 <value>{A73BEEB2-B0B7-11D2
 -8853-0000F80883E3}</value>
</array>
Define a lista de classes válidas para esta ação. Os valores devem estar no formato GUID. A ação está disponível apenas para as classes listadas.
Nota: Se essa configuração estiver presente, não configure excludedClasses
.
contentTypes
<array key="contentTypes">
 <value>image/jpeg</value>
 <value>image/tiff</value>
 <value>text/*</value>
 <value>application/??-word</value>
</array>
Define a lista de tipos mime e tipos de contêiner válidos para esta ação. A ação está disponível apenas para objetos dos tipos de conteúdo especificados. Se não presente, a ação estará disponível para todos os tipos de conteúdo. Os valores desta configuração suportam os curingas "*" e "?" . "*" significa qualquer número de caracteres (incluindo 0 caractere). "?" significa um caractere.
Nota: Se essa configuração estiver presente, não configure excludedContentTypes.
excludedClasses
<array key="excludedClasses">
 <value>{d24d4450-1f01-11d1
 -8e63-006097d2df48}</value>
 <value>{f81e9010-6ea4-11ce
 -a7ff-00aa003ca9f6}</value>
</array>
Define a lista de classes não válidas para esta ação. Os valores devem estar no formato GUID. A ação não está disponível para as classes listadas.
Nota: Se essa configuração estiver presente, não configure classes.
excludedContentTypes
<array key="excludedContentTypes">
 <value>text/xml</value>
 <value>text/plain</value>
</array>
Define a lista de tipos mime e tipos de contêiner inválidos para esta ação. A ação está disponível para todos os objetos que não fazem parte de nenhum tipo de conteúdo listado. Os valores desta configuração também suportam os caracteres "*" e "?" .
Nota: Se essa configuração estiver presente, não configure contentTypes.
excludedObjectTypes
<array key="excludedObjectTypes">
 <value>storedsearch</value>
 <value>publishtemplate</value>
 <value>securitytemplate</value>
</array>
Define a lista de tipos de objetos inválidos para esta ação.
Nota: Se essa configuração estiver presente, não configure objectTypes.
favoritesOnly
<setting key="favoritesOnly">
 true
</setting>
Se o valor for true, a ação aparecerá apenas na página Favoritos. O valor padrão é false.
hideBasedOnVersionStatusConditions
<setting key="hideBasedOnVersionStatusConditions">
 true
</setting>
Se o valor for true (o padrão), o status da versão do objeto determinará se a ação aparecerá na página. Essa chave é aplicável apenas às definições de ação promoteVersion e demoteVersion. O valor padrão é false.
hideForFavorites
<setting key="hideForFavorites">
 true
</setting>
Se o valor for true, a ação não aparecerá na página Favoritos. Essa chave é aplicável apenas às definições de ação addToFavorites. O valor padrão é false.
hideForVersions
<setting key="hideForVersions">
 true
</setting>
Se o valor for true, essa ação não será mostrada para uma versão de um objeto em uma página de informações. Isto é, se de uma página de informações de um objeto você acessar a página de propriedade "Versões" e, em seguida, acessar a página de informações de um determinado objeto, a ação não estará disponível. O valor padrão é true.
hideInSitePreferences
<setting key="hideInSitePreferences">
 true
</setting>
Se o valor for true, a ação não será mostrada na interface com o usuário de Preferências do site. O valor padrão é false.
hideWhenCheckedOut
<setting key="hideWhenCheckedOut"> true </setting>
Se o valor for true, a ação não será mostrada quando o documento for retirado. O valor padrão é false.
id
<setting key="id"> download </setting>
Define um identificador exclusivo para uma ação. Um valor é necessário.
img
<setting key="img">
 images/action/TestAction16.gif
</setting>
Define o ícone para a ação. Essa configuração não é necessária. O valor deve ser um caminho válido para uma imagem com um tamanho de 16 x 16 pixels.
Nota: Semelhante a url, é possível usar um caminho relativo.
isPopup
<setting key="isPopup">
 true
</setting>
Se o valor for true, essa ação será aberta em uma nova janela quando um objeto for selecionado. O valor padrão é false.
multiSelectPopupHeight
<setting key="multiSelectPopupHeight">
 250
</setting>
Define a altura do pixel da nova janela. Essa configuração será ignorada se isPopup estiver configurado como false, ou se multiSelectURL não for usado. O valor padrão é 600.
multiSelectPopupWidth
<setting key="multiSelectPopupWidth">
 550
</setting>
Define a largura do pixel da nova janela. Essa configuração será ignorada se isPopup estiver configurado como false, ou se multiSelectURL não for usado. O valor padrão é 800.
multiSelectURL
<setting key="multiSelectURL">
 operations/WcmMultiDownloadObject.jsp?
 returnUrl={RETURN_URL}
</setting>
Define a URL de multisseleção. Essa configuração define a URL da página que implementa a ação de multisseleção. Qualquer ação que suporte multisseleção deve ter essa configuração. A ação também deve ser incluída na seção multiSelectActions de MenuActions.xml.
objectTypes
<array key="objectTypes">
 <value>document</value>
 <value>folder</value>
</array>
Define a lista de tipos de objetos válidos para esta ação. Se essa configuração não estiver presente, todos os tipos de objetos serão válidos. Valores válidos são:
  • objectstore
  • pasta
  • documento
  • storedsearch
  • searchtemplate
  • link
  • evento
Nota: Se essa configuração estiver presente, não configure excludedObjectTypes.
onclick
<setting key="onclick">
 return FNActions.open(event, this)
</setting>
Define a ação de evento JavaScript a ser chamada quando o usuário clica na ação na interface com o usuário.
popupHeight
<setting key="popupHeight">
 250
</setting>
Define a altura do pixel da nova janela. Essa configuração será ignorada se isPopup estiver configurado como false. O valor padrão é 600.
popupWidth
<setting key="popupWidth">
 600
</setting>
Define a largura do pixel da nova janela. Essa configuração será ignorada se isPopup estiver configurado como false. O valor padrão é 800.
renderSeparatorAbove
<setting key="renderSeparatorAbove">
 true
</setting>
Se o valor for true, a ação desenhará uma linha de separação acima da lista de ações. O valor padrão é false.
returnParameters
<setting key="returnParameters">
 eventName=StateChanged&op=checkin
</setting>
Define os parâmetros de URL a serem incluídos quando a ação conclui seu processamento. Usada em alguns casos para fornecer um mecanismo de atualização da página principal após a conclusão de uma ação.
rmHideIfAlreadyDeclared
<setting key="rmHideIfAlreadyDeclared">
 true
</setting>
Se o valor for true, essa ação só aparecerá quando o documento não tiver sido declarado como um registro. O valor padrão é false.
Nota: Essa configuração só será válida se o Records Manager estiver selecionado nas Preferências do Site.
rmOnly
<setting key="rmOnly">
 false
</setting>
Se o valor for true, essa ação só aparecerá quando o Records Manager estiver selecionado nas Preferências do Site. O valor padrão é false.
roles
<array key="roles"> <value>PSDesigner</value> <value>PWAdministrator</value> </array>
Define a lista de funções de acesso válidas para esta ação. Apenas usuários que sejam membros de uma ou mais das funções listadas veem a ação. As funções de acesso são definidas no Content Engine. O valor padrão é "Todos".
Nota: Também é possível configurar funções nas Preferências do Site, página Acesso à Função de Ações.
shortId
<array key="shortId">
 addDocument
</array>
Define o identificador curto da ação.
Nota: Disponível apenas na barra de ferramentas e no botão Ações.
showInActionsMenuOnly
<setting key="showInActionsMenuOnly"> true </setting>
Se o valor for true, as ações Incluir Documento, Inclusão Avançada de Documento e Incluir Pasta aparecerão apenas no menu Ações, não nos menus pop-up do item selecionado. O valor padrão é false.
showOnlyWhenCheckedOut
<setting key="showOnlyWhenCheckedOut"> true </setting>
Se o valor for true, a ação só será mostrada quando o documento for retirado. O valor padrão é false.
subActions
<array key="subActions">
 <value>infoProperties</value>
 <value>infoSystemProperties</value>
 <value>infoSecurity</value>
 <value>infoFolders</value>
</array>
Define a lista de ações exibidas em um submenu. Observe que você deve definir uma actionDefinition para cada valor na matriz subActions.
Nota: Só é possível ter um nível de submenus; nenhuma ação listada na matriz subActions pode ter submenus próprios.
title
<setting key="title">
 TEST ACTION 
</setting>
Define o rótulo da ação, que aparece na interface com o usuário. Essa configuração é necessária.
titleForSitePreferences
<setting key="titleForSitePreferences">
 Download Documents
</setting>
O título da ação conforme a ação aparece nas Preferências do Site, página Acesso à Função de Ações. Se essa configuração for excluída, o valor de title será usado.
url
<setting key="url">
 operations/MyOperation.jsp?
 id={OBJECT_ID}&amp;
 classId={CLASS_ID}&amp;
 label={OBJECT_LABEL}&amp;
 objectStoreName={OBJECT_STORE_NAME}&amp;
 minorVersion={MINOR_VERSION}&amp;
 objectType={OBJECT_TYPE}&amp;
 vsId={VERSION_SERIES_ID
</setting>
Define a URL da página que implementa a ação e os parâmetros passados para essa página na URL. O formato desta sequência é descrito em Macros de Padrão de URL.

Essa configuração é necessária.

Nota: Os espaços e as quebras de linha são permitidos no valor para conveniência. Quando MenuActions.xml é lido, espaços e quebras de linha (que não são caracteres válidos para a URL) são removidos automaticamente dessa sequência.
useToken
<setting key="useToken"> 
 true
</setting>
Se o valor for true, um token do usuário será anexado à URL antes do redirecionamento. Isso acontecerá apenas se o suporte de token estiver selecionado nas preferências do site. O valor padrão é false.
versionStatusConditions
<array key="versionStatusConditions">
 <value>released</value>
 <value>superseded</value>
</array>
Define os valores dos status da versão que são válidos para a ação. Se essa configuração não estiver presente, qualquer valor do status de versão será válido. Valores válidos são:
  • released
  • reserved
  • superseded
  • inprocess
  • inprocessNoMajor

Use inprocess para uma série da versão que tiver uma versão principal. Use inprocessNoMajor para uma série da versão que não tiver uma versão principal. Para obter informações sobre esses valores, consulte Propriedades de Versão.

Macros de Padrão de URL

As macros da tabela a seguir são usadas na configuração de url de definições de ação. Elas definem a URL da página que implementa a ação e os parâmetros passados para essa página na URL. As macros são substituídas pelo valor correspondente na URL real. Por exemplo, se o padrão for operations/Test.jsp?id={OBJECT_ID} e o objeto para o qual a operação é chamada tiver um ID de {A73BEEB2-B0B7-11D2-8853-0000F80883E3}, a URL da operação será operations/Test.jsp?id={A73BEEB2-B0B7-11D2-8853-0000F80883E3}.
Tabela 2. Esta tabela descreve as macros usadas na configuração de URL de definições de ação.
Macro Valor
{OBJECT_STORE_NAME} Nome do armazenamento de objeto, por exemplo, "OS_de_TESTE".
{OBJECT_ID} ID do objeto no formato GUID ou de caminho.
{OBJECT_LABEL} Rótulo do objeto, conforme o rótulo aparece na interface com o usuário.
{OBJECT_TYPE} Tipo de objeto como uma Sequência, por exemplo, "documento" ou "pasta".
{VERSION_SERIES_ID} ID da série da versão no formato GUID.
{CLASS_ID} ID da classe no formato GUID.
{CONTENT_TYPE} Tipo de conteúdo como Sequência, codificado pela URL.
{MAJOR_VERSION} Versão principal, por exemplo, "1".
{MINOR_VERSION} Versão secundária, por exemplo, "2".
{VERSION_STATUS} O status da versão como um número; por exemplo, "1".
{RETURN_URL} URL de retorno, codificado por URL, por exemplo, "http://<servidor>:<porta>/WorkplaceXT/Browse.jsf"
{TIME_ZONE} O ID do fuso horário.