Você pode definir um manipulador para um campo de um formulário.
Esse manipulador é definida como scripts em BeanShell e será executada imediatamente antes que o valor de um campo renderizado for editado.
O script de manipulação de um campo pode acessar os dados do próprio campo apenas. No script o valor do campo será acessado como um variável com o nome do campo ou com o nome padrão "value".
Abaixo um exemplo de um script de manipulação, que formata o valor, de um campo do tipo String com o nome "cpf":
O script de manipulação serve basicamente pra manipular o valor do campo e esse valor pode ser manipulado atribuindo-se um novo valor para uma variável com o nome do campo (como no exemplo acima) ou através do retorno do próprio script.
Alguns campos do formulário possuem propriedades específicas e elas podem ser acessadas no script de manipulação. Esses campos são:
Cada um desses campos apresenta propriedades específicas, são elas:
Como definido acima, o campo do tipo "Organization" contem 3 propriedades específicas: name, type e identifier.
Abaixo um exemplo de como um script de manipulação pode usar uma dessas propriedades:
Os scripts de manipulação de campo possuem à disposição 3 serviços que permitem acesso às informações do diretório do Blazon para efetivação de algumas manipulações.
Esses serviços são os mesmos e estão documentados na página:
name
Contém o nome da organização selecionada no campo.
type
Contém o tipo da organização selecionada no campo.
identifier
Contém o identificador da organização selecionada no campo.
displayName
Contém o nome de apresentação do usuário do Blazon selecionado no campo.
username
Contém o nome de usuário do usuário do Blazon selecionado no campo.
identifier
Contém o identificador do usuário do Blazon selecionada no campo.
label
Contém o rótulo do item da lista selecionado no campo.
value
Contém o valor do item da lista selecionado no campo.
username
Contém o nome de usuário selecionado no campo.
value
Contém o nome de usuário selecionado no campo.
Organization
Representa uma unidade de organização no diretório do Blazon, que pode ser de um dos tipos: ORGANIZATION, DEPARTMENT ou COST_CENTER
User
Representa um usuário do diretório do Blazon.
List
Representa uma lista de valores com seus respectivos rótulos.
Username
Representa um nome de usuário no Blazon.