Gestão das palavras-chave nos workflows¶
As palavras-chave de workflow podem ser utilizadas na configuração dos workflows, das etapas, das ações e das notificações.
O formato geral das palavras-chave de workflow é o seguinte:
- Uma classe (exemplo: PERSON, MANAGER, STARTER, etc.)
- Um parâmetro principal (exemplo: ATTRIBUTE, RIGHT, etc.)
- Um parâmetro secundário (exemplo: código de atributo, etc.)
Existem duas grandes categorias de palavras-chave:
-
As palavras-chave que devolvem uma lista de objetos sem ter em conta os dados do workflow. Estas palavras-chave são utilizadas para filtrar ou como condições de execução de tarefas ou de ações. Neste caso, o separador é «§». As palavras-chave disponíveis são as seguintes:
- §KAD§: palavra-chave que só pode ser utilizada nos workflows desencadeados pelo evento «Modification of an authorization rule»
- §KAD§ATTRIBUTE§secondary_parameter§: permite recuperar informações sobre uma regra de autorização a partir do seu identificador, do seu nome ou da sua descrição. secondary_parameter pode assumir os valores seguintes:
- kad_id: identificador da regra de autorização.
- kad_name: nome da regra de autorização
- kad_description: descrição da regra de autorização
- §KAD§FILTRE§attribute_code§: permite recuperar os valores do filtro cujo código é indicado em «attribute_code» na regra de autorização que desencadeia a instância de workflow.
- §KAD§STRUCTURE§VALUE§: permite recuperar os valores das estruturas abrangidas pela regra de autorização que desencadeia a instância de workflow.
- §KAD§RIGHT§<AccountTypeCode.RightCode>§: permite verificar se o direito cujo código é indicado no parâmetro «Right_Code», associado ao tipo de conta cujo código é indicado no parâmetro «Account_Type_Code», está presente na regra de autorização que desencadeia a instância de workflow.
- §KAD§ATTRIBUTE§secondary_parameter§: permite recuperar informações sobre uma regra de autorização a partir do seu identificador, do seu nome ou da sua descrição. secondary_parameter pode assumir os valores seguintes:
- §PERSON§: palavra-chave que permite recuperar uma lista de identidades filtrada a partir dos parâmetros indicados. Não tem em conta os dados do workflow, mas permite filtrar os destinatários potenciais do workflow ou determinar os atores ou os destinatários das ações ou das tarefas dos workflows.
- §PERSON§ATTRIBUTE§attribute_code§: permite recuperar uma lista de pessoas em função do valor de um atributo.
- §PERSON§RIGHT§<AccountTypeCode.RightCode>§: permite recuperar uma lista das pessoas que possuem efetivamente o direito cujo código é indicado no parâmetro «Right_Code», associado ao tipo de conta cujo código é indicado no parâmetro «Account_Type_Code».
- §OBJECT§ ou §RESOURCE§: palavra-chave que permite recuperar uma lista de dotações filtrada a partir dos parâmetros indicados. Não tem em conta os dados do workflow, mas permite filtrar os objetos das ações ou das tarefas dos workflows.
- §OBJECT§ATTRIBUTE§attribute_code§ ou §RESOURCE§ATTRIBUTE§attribute_code§: permite recuperar uma lista de dotações em função dos valores dos atributos.
- §KAD§: palavra-chave que só pode ser utilizada nos workflows desencadeados pelo evento «Modification of an authorization rule»
-
As palavras-chave que devolvem os valores dos diversos objetos contidos nas instâncias de workflow (destinatários, atores, validadores, conteúdo do pedido, etc.). Neste caso, o separador é «#». As palavras-chave disponíveis são as seguintes:
-
WORKFLOW#Code_workflow#parameter_step#: permite recuperar informações sobre uma instância de workflow cujo código é igual a «workflow_code». Pode ser utilizada num campo de avaliação SQL (exemplo: regras de execução, regras de validação, etc.) ou num campo de notificação (exemplo: assunto, corpo do correio eletrónico). Parameter_step pode assumir os valores seguintes:¶
- ID: identificador da instância de workflow
- STATUS: estado da instância de workflow
- -2 = falha por escalamento
- -1 = falha
- 0 = em curso
- 1 = êxito
- 2 = inicializado pelo utilizador
- 3 = evento a aguardar informações complementares
- 4 = em pausa
- 5 = necessidade de informação
- 6 = bloqueado
- 7 = parado
- 8 = êxito por escalamento
- 9 = reinicializado
- STARTDATE: data de início da instância de workflow
- ENDDATE: data de fim da instância de workflow
- LASTEVENTDATE: data do último evento ao nível da instância de workflow
- DATA: devolve a lista dos direitos e dos utilizadores em questão.
-
STEP#Step_code#parameter_step#: permite recuperar informações sobre uma instância de etapa de workflow cujo código é igual a «Step_code». Pode ser utilizada num campo de avaliação SQL (exemplo: regras de execução, regras de validação, etc.) ou num campo de notificação (exemplo: assunto, corpo do correio eletrónico). Parameter_step pode assumir os valores seguintes:¶
- ID: identificador da instância de etapa
- STATUS: estado da instância da etapa de código «Step_code» na instância de workflow
- -1 = falha
- 0 = em curso
- 1 = êxito
- 4 = em pausa
- 5 = necessidade de informação
- 6 = bloqueado
- 7 = parado
- STARTDATE: data de início da instância de etapa
- ENDDATE: data de fim da instância de etapa
- LASTEVENTDATE: data do último evento ao nível da instância de etapa
-
ACTION#Action_code#parameter_action#: permite recuperar informações sobre uma instância de ação cujo código é igual a «action_code». Pode ser utilizada num campo de avaliação SQL (exemplo: regras de execução, regras de validação, etc.) ou num campo de notificação (exemplo: assunto, corpo do correio eletrónico). Parameter_action pode assumir os valores seguintes:¶
- ID: identificador da instância de ação
- STATUS: estado da instância da ação de código «Action_code» na instância de workflow
- -1 = falha
- 0 = em curso
- 1 = êxito
- 4 = em pausa
- 5 = necessidade de informação
- 6 = bloqueado
- 7 = parado
- STARTDATE: data de início da instância de ação
- ENDDATE: data de fim da instância de ação
- LASTEVENTDATE: data do último evento ao nível da instância de ação
- DEROGATED: identificador da pessoa a quem a ação foi delegada
-
TASK#Task_code#parameter_task#: permite recuperar informações sobre uma instância de tarefa cujo código é igual a «task_code». Pode ser utilizada num campo de avaliação SQL (exemplo: regras de execução, regras de validação, etc.) ou num campo de notificação (exemplo: assunto, corpo do correio eletrónico). Parameter_task pode assumir os valores seguintes:¶
- ID: identificador da instância de tarefa
- STATUS: estado da instância da tarefa de código «Task_code» na instância de workflow
- -1 = falha
- 0 = em curso
- 1 = êxito
- 4 = em pausa
- 5 = necessidade de informação
- 6 = bloqueado
- 7 = parado
- STARTDATE: data de início da instância de tarefa
- ENDDATE: data de fim da instância de tarefa
- LASTEVENTDATE: data do último evento ao nível da instância de tarefa
- DEROGATED: identificador da pessoa a quem a tarefa foi delegada
- É possível criar ligações de validação automática no corpo de um correio eletrónico quando a notificação é configurada numa ação ou numa tarefa de validação: http://[DNS address]/UserRequestWorkflow.aspx? MyActionId={#ACTION#Action_or_task_code#ID#}&accept=[result]
- DNS address deve ser substituído pelo endereço do servidor Identity
- Action_or_task_code deve ser substituído pelo código da ação ou da tarefa a validar através da ligação
- Result: introduza 1 para validar a ação ou a tarefa, ou 0 para a rejeitar.
Para configurar a ligação no corpo do correio eletrónico, utilize o botão «
», onde poderá verificar o endereço e o texto que serão apresentados no correio eletrónico.Nota: para validar ou rejeitar um pedido num correio eletrónico de notificação, o utilizador deve iniciar sessão na interface para confirmar que dispõe dos direitos necessários para realizar esta operação.
-
FORM#: palavra-chave que só pode ser utilizada nos workflows de tipo «User Request» ou nas tarefas de aprovisionamento/desaprovisionamento manual, nas regras de avaliação SQL das etapas de ação e de tarefa, ou nas notificações.¶
-
FORM#ADDRIGHTS#CODELIST#: permite enumerar os direitos que o requerente selecionou no formulário de pedido de direitos.¶
-
FORM#CHANGEATTRIBUTES#parameter_form#: enumera os atributos que o requerente modificou no formulário de modificação de pessoa. parameter_form pode assumir os valores seguintes:¶
- CODELIST: lista dos códigos de atributo que o requerente modificou no formulário de modificação de pessoa.
- CHANGEDATE: data em que as modificações são tidas em conta, no formato dd/MM/yyyy
-
FORM#TYPERESOURCES#parameter_form#: recupera a lista dos tipos de recurso selecionados ao preencher o formulário de pedido. parameter_form pode assumir os valores seguintes:¶
- DATA: identificador dos recursos
- DATA.CODE: código dos recursos
- DATA.NAME: nome dos recursos
-
FORM#Validation_task_code#parameter_form#:¶
- DATA: permite recuperar o conjunto das contas e dos direitos por aplicação de destino no corpo do correio eletrónico.
- DATA.PROVISIONINGRIGHTONLY: permite condicionar a execução de uma tarefa de validação de formulário e/ou de uma tarefa de aprovisionamento manual ao facto de os destinatários já disporem de uma conta nos repositórios abrangidos pelo pedido.
- DATA.UNPROVISIONINGRIGHTONLY: permite condicionar a execução de uma tarefa de validação de formulário e/ou de uma tarefa de desaprovisionamento manual ao facto de os destinatários já disporem de uma conta nos repositórios abrangidos pelo pedido.
- DATA.PROVISIONINGACCOUNTONLY: permite condicionar a execução de uma tarefa de validação de formulário e/ou de uma tarefa de aprovisionamento manual ao facto de os destinatários não disporem de uma conta nos repositórios abrangidos pelo pedido.
- DATA.UNPROVISIONINGACCOUNTONLY: permite condicionar a execução de uma tarefa de validação de formulário e/ou de uma tarefa de desaprovisionamento manual ao facto de os destinatários não disporem de uma conta nos repositórios abrangidos pelo pedido.
-
-
TASKFORM#: palavra-chave que só pode ser utilizada nas tarefas de workflow dos tipos seguintes: atribuição de recursos e aprovisionamento/desaprovisionamento manual¶
-
TASKFORM#Task_code#fparameter_form#: permite recuperar o dado indicado em «parameter_form» de um recurso ou de um direito. Esta palavra-chave deve ser utilizada no corpo de um correio eletrónico para que o resultado seja apresentado em forma de tabela. parameter_form pode assumir os valores seguintes:¶
- DATA: identificador dos recursos pedidos se a tarefa for de tipo «Resource assignment», ou identificador dos direitos a aprovisionar ou desaprovisionar se a tarefa for de tipo «Manual provisioning/deprovisioning».
- DATA.CODE: código dos recursos pedidos se a tarefa for de tipo «Resource assignment», ou código dos direitos a aprovisionar ou desaprovisionar se a tarefa for de tipo «Manual provisioning/deprovisioning».
- DATA.NAME: nome dos recursos pedidos se a tarefa for de tipo «Resource assignment», ou nome dos direitos a aprovisionar ou desaprovisionar se a tarefa for de tipo «manual provisioning/deprovisioning».
- DATA.FIELDS: valores dos campos complementares do formulário de pedido. Só é válido se a tarefa for de tipo «manual provisioning/deprovisioning».
- DATACOMPLETEONLY: identificadores dos recursos efetivamente atribuídos na tarefa de tipo «Resource Assignment». Só é válido se a tarefa for de tipo «Resource Assignment».
- DATACOMPLETEONLY.CODE: código dos recursos efetivamente atribuídos na tarefa de tipo «Resource Assignment». Só é válido se a tarefa for de tipo «Resource Assignment».
- DATACOMPLETEONLY.NAME: nome dos recursos efetivamente atribuídos na tarefa de tipo «Resource Assignment». Só é válido se a tarefa for de tipo «Resource Assignment».
- DATAINCOMPLETE: identificadores dos tipos de recurso aos quais não foi atribuído nenhum recurso. Só é válido se a tarefa for de tipo «Resource Assignment».
- DATAINCOMPLETE.CODE: código dos tipos de recurso aos quais não foi atribuído nenhum recurso. Só é válido se a tarefa for de tipo «Resource Assignment».
- DATAINCOMPLETE.NAME: nome dos tipos de recurso aos quais não foi atribuído nenhum recurso. Só é válido se a tarefa for de tipo «Resource Assignment».
-
-
MANAGER#: o gestor de um workflow é a pessoa que o administra.¶
-
MANAGER#ATTRIBUTE#attribute_code#: permite injetar informações sobre a instância de ação num campo de avaliação SQL (exemplo: regras de execução, de validação, etc.) ou num campo avaliado (exemplo: destinatários, assunto, corpo do correio eletrónico).¶
-
MANAGER#RIGHT#<Account_Type_Code.Right_Code>#: permite verificar que o gestor de um workflow possui o direito cujo código é indicado no parâmetro «Right_Code», associado ao tipo de conta cujo código é indicado no parâmetro «Account_Type_Code».¶
-
MANAGER#RIGHTHEO#<Account_Type_Code.Right_Code>#: permite verificar que o gestor de um workflow possui teoricamente o direito cujo código é indicado no parâmetro «Right_Code», associado ao tipo de conta cujo código é indicado no parâmetro «Account_Type_Code».¶
-
-
POSSIBLEACTIONACTOR#: pessoas que podem intervir numa ação¶
-
POSSIBLEACTIONACTOR#Action_code#attribute_code#: permite recuperar o valor do atributo cujo código é passado no parâmetro attribute_code nos atores possíveis da instância de uma ação ou de uma tarefa cujo código é igual a «action_code». Pode ser utilizada num campo de avaliação SQL (exemplo: regras de execução, regras de validação, etc.) ou num campo de notificação (exemplo: destinatários, assunto, corpo do correio eletrónico).¶
-
-
STARTER#: pessoa que inicia um workflow¶
-
STARTER#ATTRIBUTE#attribute_code#: permite recuperar o valor do atributo cujo código é passado no parâmetro attribute_code na pessoa que iniciou o workflow. Pode ser utilizada num campo de avaliação SQL (exemplo: regras de execução, regras de validação, etc.) ou num campo de notificação (exemplo: assunto, corpo do correio eletrónico).¶
-
STARTER#RIGHT#<AccountTypeCode.RightCode>#: permite verificar que o requerente de um workflow possui o direito cujo código é indicado no parâmetro «Right_Code», associado ao tipo de conta cujo código é indicado no parâmetro «Account_Type_Code».¶
-
STARTER#RIGHTHEO#<Account_Type_Code.Right_Code>#: permite verificar que o requerente de um workflow possui teoricamente o direito cujo código é indicado no parâmetro «Right_Code», associado ao tipo de conta cujo código é indicado no parâmetro «Account_Type_Code».¶
-
-
TARGET#: objeto ou objetos que iniciam uma instância de workflow¶
-
TARGET#ATTRIBUTE#attribute_code#: permite recuperar o valor do atributo cujo código é passado no parâmetro attribute_code no objeto que iniciou o workflow. Pode ser utilizada num campo de avaliação SQL (exemplo: regras de execução, regras de validação, etc.) ou num campo de notificação (exemplo: assunto, corpo do correio eletrónico). Esta palavra-chave só funciona quando o destinatário é de tipo pessoa ou dotação.¶
-
TARGET#RIGHT#<AccountTypeCode.RightCode>#: permite verificar que o destinatário ou os destinatários de um workflow possuem o direito cujo código é indicado no parâmetro «Right_Code», associado ao tipo de conta cujo código é indicado no parâmetro «Account_Type_Code». Esta palavra-chave só funciona quando o destinatário é de tipo pessoa.¶
-
TARGET#RIGHTTHEO#<AccountTypeCode.RightCode>#: permite verificar que o destinatário ou os destinatários de um workflow possuem teoricamente o direito cujo código é indicado no parâmetro «Right_Code», associado ao tipo de conta cujo código é indicado no parâmetro «Account_Type_Code». Esta palavra-chave só funciona quando o destinatário é de tipo pessoa.¶
-
TARGET#RESOURCE#DATA#: permite recuperar no corpo do correio eletrónico todos os dados (valores de todos os atributos) de todos os recursos associados aos destinatários de uma instância de workflow.¶
-
TARGET#RESOURCE#DATA@CodeAtt1,CodeAtt2,CodeAttN#: permite recuperar no corpo do correio eletrónico os valores dos atributos selecionados através da lista de códigos de atributo CodeAttN de todos os recursos associados aos destinatários de uma instância de workflow. Os atributos «name» e «code» são apresentados por predefinição no corpo do correio eletrónico sem necessidade de os adicionar à lista.¶
-
TARGET#RESOURCE#DATA.CodeTypeResource1,CodeTypeResource2,CodeTypeResourceN#: permite recuperar no corpo do correio eletrónico os valores de todos os atributos dos tipos de recurso selecionados através da lista de códigos de tipo de recurso CodeTypeResourceN associados aos destinatários de uma instância de workflow.¶
-
TARGET#RESOURCE#DATA.CodeTypeResource1,CodeTypeResourceN@CodeAtt1,CodeAtt2,CodeAttN#: permite recuperar no corpo do correio eletrónico os valores seguintes:¶
- Ou todos os atributos dos tipos de recurso selecionados através da lista de códigos de atributo CodeTypeResourceN associados aos destinatários de uma instância de workflow, se não for indicado nenhum código de atributo
- Ou os valores dos atributos selecionados através da lista de códigos de atributo, para os tipos de recurso selecionados através da lista de códigos de tipo de recurso CodeTypeResourceN associados aos destinatários de uma instância de workflow, se forem indicados códigos de atributo CodeAttN.
-
TARGET#RESOURCE#DATA.CodeTypeResource1,CodeTypeResource2,CodeTypeResourceN#: permite recuperar no corpo do correio eletrónico os valores de todos os atributos dos tipos de recurso selecionados através da lista de códigos de tipo de recurso CodeTypeResourceN associados aos destinatários de uma instância de workflow.¶
-
-
TARGET#ACCOUNT#: palavra-chave que pode ser utilizada nos workflows por evento relacionados com a criação de uma conta real.¶
-
TARGET#ACCOUNT#LOGIN#: permite recuperar o identificador de início de sessão da conta no corpo do correio eletrónico.¶
-
TARGET#ACCOUNT#PASSWORD#: permite recuperar a palavra-passe da conta (em texto simples) no corpo do correio eletrónico.¶
-
TARGET#ACCOUNT#STATUS#: permite recuperar o estado de aprovisionamento da conta no corpo do correio eletrónico.¶
-
TARGET#ACCOUNT#DATA#: permite recuperar o identificador de início de sessão, a palavra-passe e o estado no corpo do correio eletrónico.¶
-
-
-
PRIMARYTARGET# e #SECONDARYTARGET#: palavra-chave que só pode ser utilizada nos workflows de tipo «On event»¶
-
PRIMARYTARGET#ATTRIBUTE#secondary_parameter# ou #SECONDARYTARGET#ATTRIBUTE#secondary_parameter#: permite recuperar o valor de um objeto no destinatário principal ou secundário de uma instância de workflow, cuja propriedade é passada no parâmetro secondary_parameter. Esta palavra-chave só funciona quando o destinatário é de um dos tipos seguintes:¶
- Identity: neste caso, o parâmetro secundário será um código de atributo.
- Right: neste caso, o parâmetro secundário pode assumir os valores seguintes:
- Name: nome do direito
- Description: descrição do direito
- Code: código do direito
- Applicationname: nome da aplicação associada ao direito
- Applicationdescription: descrição da aplicação associada ao direito
- Applicationcode: código da aplicação associada ao direito
- ismanualprovisioning: booleano que indica se o direito pertence a um repositório de aprovisionamento manual.
-
PRIMARYTARGET#TYPE#secondary_parameter# ou #SECONDARYTARGET#TYPE#secondary_parameter#: permite recuperar informações sobre o tipo de objeto correspondente ao destinatário principal ou secundário de uma instância de workflow. Esta palavra-chave só funciona quando o destinatário é de tipo pessoa ou dotação. secondary_parameter pode assumir os valores seguintes:¶
- NAME: nome do tipo de pessoa ou de dotação
- CODE: código do tipo de pessoa ou de dotação
- DESCRIPTION: descrição do tipo de pessoa ou de dotação
-
PRIMARYTARGET#ACCOUNT#secondary_parameter# ou #SECONDARYTARGET#ACCOUNT#secondary_parameter#: permite recuperar informações sobre a conta correspondente ao destinatário principal ou secundário de uma instância de workflow. Esta palavra-chave só funciona quando o destinatário é de tipo conta. secondary_parameter pode assumir os valores seguintes:¶
- STATUS: estado da conta real criada
- LOGIN: identificador de início de sessão da conta real criada
- PASSWORD: palavra-passe da conta real criada
- DATA: tabela que enumera o identificador de início de sessão e a palavra-passe da conta real criada
-
-
Estas duas famílias de palavras-chave podem ser utilizadas conjuntamente num mesmo parâmetro «SQL Evaluation», que verifica a condição a partir dos parâmetros de entrada e devolve os tipos «TRUE/FALSE» ou «List returned by an SQL evaluation».
Particularidades:
- Para todas as palavras-chave às quais é possível passar um código de atributo nos parâmetros a fim de recuperar o seu valor, no caso dos atributos de tipo enumerado, pessoa, estrutura ou recurso é possível utilizar uma extensão de formato «.object_attribute_code» para recuperar um valor de atributo do objeto em vez do identificador. Para os atributos de tipo estrutura, pessoa ou dotação, é necessário indicar o código do atributo de objeto desejado; para os enumerados, object_attribute_code pode assumir os valores seguintes:
- NAME: recupera o nome do enumerado
- CODE: recupera o código do enumerado
- Quando as palavras-chave não bastam para injetar informações no corpo de um correio eletrónico, pode utilizar-se a sintaxe seguinte para invocar uma consulta SQL de tipo SELECT:
- [@@@: <SQL Query>:@@@] : a consulta SQL deve ser escrita sem a cláusula «SELECT». Devolve uma cadeia de caracteres.
- Para indicar as informações dos destinatários (pessoas envolvidas no workflow), é preferível utilizar a palavra-chave §PERSON§ em vez de #TARGET#.