Histórico da Página
...
Os eventos de formulários são um conjunto de scripts carregados pela API de Formulários, os quais são desenvolvidos utilizando Javascript e são chamados durante a execução de ação em formulários ou em momentos específicos de interação em formulários.
afterSaveNew
Esse evento é disparado após a criação de um novo formulário. O evento recebe como parâmetro uma referência ao formulário da definição de formulário. Para obter o valor de um determinado campo do formulário:
...
A consulta aos campos do formulário é case insensitve. No exemplo acima, poderíamos obter o valor do campo usando rnc_colab_abertura.
displayFields
Esse evento é disparado no momento em que os objetos do formulário são apresentados. O evento recebe como parâmetro uma referência ao formulário da definição de formulário e a referência para saída de apresentação do formulário. Nesse evento é possível alterar os valores a serem apresentados no campo do formulário. Para isto basta usar o seguinte procedimento:
...
Bloco de código | ||
---|---|---|
| ||
if(form.getFormMode() != "VIEW") { customHTML.append("<script>"); customHTML.append("function MostraEscondeBtn_zoom()"); customHTML.append("{"); customHTML.append("document.getElementById(\'zoomUsuario\').className = \'show\';"); customHTML.append("document.getElementById(\'zoomModulo\').className = \'show\';"); customHTML.append("}"); customHTML.append("</script>"); } |
Carregar dados em tela com evento displayFields
Para que os dados sejam carregados e apresentados em tela, principalmente em dispositivos mobile, é necessário chamar as funções que irão carregá-los dentro de uma estrutura de read.
...
Bloco de código | ||
---|---|---|
| ||
customHTML.append('<script>'); customHTML.append('$(function(){'); customHTML.append("loadProdutos();"); customHTML.append('});'); customHTML.append('</script>'); |
enableFields
Esse evento é disparado no momento em que os objetos do formulário são habilitados, permitindo desabilitar alguns campos, caso haja a necessidade. O evento recebe como parâmetro uma referência ao formulário da definição de formulário. Para habilitar ou desabilitar um campo do formulário o seguinte procedimento deve ser executado:
...
Nota | ||
---|---|---|
| ||
Mesmo utilizando a função setEnable, ainda existe a possibilidade de algum usuário conseguir visualizar informações do campo formulário oculto, utilizando de recursos como a ferramenta de inspeção de código dos navegadores. |
Protegendo campos desabilitados desabilitados
Ao proteger um campo desabilitado, ele não terá o seu valor alterado no registro de formulário. Para isso, informe o valor true para o parâmetro protect do método setEnabled conforme o exemplo abaixo:
...
Nota | ||
---|---|---|
| ||
O método setEnhancedSecurityHiddenInputs só protegerá campos desabilitados após a sua execução no evento. |
inputFields
Esse evento é disparado no momento em que os dados do formulário são passados para a BO responsável por formulário do fluig. O evento recebe como parâmetro uma referência ao formulário da definição de formulário.
...
Nota | |||||||
---|---|---|---|---|---|---|---|
| |||||||
Este evento pode ser usado para que as datas persistidas por formulários customizados sejam salvas corretamente. Hoje no sistema as datas salvas através de formulários pelo navegador Chrome tem o padrão americano (yyyy-mm-dd), enquanto as datas nos demais navegadores tem o padrão brasileiro (dd/mm/yyyy). Para empresas que utilizam múltiplos navegadores e querem que os dados de data estejam padronizados, recomendamos a utilização do evento inputFields com o seguinte trecho de código.
|
setEnable
Esse evento pode ser executado em diferentes eventos das definições de formulário. Este evento não é implementado automaticamente na customização da definição de formulário.
...
Bloco de código | ||
---|---|---|
| ||
function setEnable() { log.info(“Teste de chamada de função”); } function displayFields(form, customHTML) { setEnable(); } |
validateForm
Esse evento é executado antes da gravação dos dados do formulário no banco de dados. O evento recebe como parâmetro uma referência ao formulário da definição de formulário. Em caso de erros de validação dos dados do formulário, esse evento retornará uma mensagem de erro para o usuário, através de uma modal do fluig, com a mensagem definida no evento.
...
Bloco de código | ||
---|---|---|
| ||
function validateForm(form) { if (form.getValue('RNC_colab_abertura') == null){ throw "O colaborador de abertura não foi informado"; } } |
afterProcessing
É o último evento a ser disparado para o formulário. O evento recebe como parâmetro uma referência ao formulário da definição de formulário.
...
No contexto deste evento a variável form pode ser utilizada somente para consulta aos campos da definição de formulário, seus valores e estado de apresentação.
beforeProcessing
Esse evento é o primeiro a ser disparado. Ocorre antes de qualquer outro evento da definição de formulário. O evento recebe como parâmetro uma referência ao formulário da definição de formulário.
...
No contexto deste evento a variável form pode ser usada somente para consulta aos campos da definição de formulário, seus valores e estado de apresentação.
beforeMovementOptions
É executado quando o usuário pressiona o botão Movimentar antes de serem exibidas as opções de movimentação do formulário.
...
Bloco de código | ||
---|---|---|
| ||
<script> var beforeMovementOptions = function(numState) { console.log("_________________ beforeMovementOptions"); console.log("numState: " + numState); console.log("valor campo: " + document.form.c7_total.value); if (document.form.c7_total.value == '') { throw ("Erro: nenhum valor selecionado!"); } return true; } </script> |
beforeSendValidate
Ocorre antes da solicitação ser movimentada, após já ter sido selecionada a atividade destino o usuário e demais informações necessárias à solicitação.
...
Para facilitar a manipulação dos dados em uma customização de formulário que faz uso da técnica Pai Filho, foram disponibilizados os métodos listados a seguir. Ambos são chamados a partir do objeto form que é passado como parâmetro nas funções de customização de formulários.
getChildrenFromTable
Esse evento retorna um mapa com todos os campos filhos de um Pai Filho a partir do seu tablename.
getChildrenIndexes
Esse evento retorna os índices dos registros (linhas) contidos em um Pai Filho a partir do seu tablename.
...
Nota | ||
---|---|---|
| ||
Os eventos getChildrenFromTable e getChildrenIndexes também podem ser usados nos eventos de processos. Para saber como utilizar, acesse nossa documentação de Eventos de Processos. |
enableFields
Para utilizar o evento enableFields em um formulário Pai x Filho, é necessário ter o índice da linha a qual o campo a ser desabilitado pertence.
...