Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Nota
titleAtenção!

O evento inputFields não foi criado para ser utilizado na "Movimentação em Bloco", seu foco é o tratamento de campos que vem do navegador.

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 um objeto do tipo FormController

Painel
borderColor#f2f2f2
bgColor#f2f2f2

O getValue não é utilizado em evento de formulário inputFields.

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.

Bloco de código
languagejs
titleCódigo para Datas
function inputFields(form) { 
    var regEx = /^\d{4}-\d{2}-\d{2}$/; 

    if (form.getValue("dt_solicitacao").match(regEx)) { 
        var split = form.getValue("dt_solicitacao").split('-'); 
        form.setValue("dt_solicitacao", split[2] + '-' + split[1] + '-' + split[0]); 
    } 
}

...

Bloco de código
languagejs
titleExemplo de implementação em um arquivo.js
linenumberstrue
  var beforeSendValidate = function(numState, nextState) {
    if (numState == 1 && nextState == 2 && document.form.codigo.value == '') {
      throw ("Erro: Para movimentar para a atividade 2, o código deve ser preenchido");
    }
    return true;
  }

getAttachments

É utilizado para criar a função de retornar os anexos da solicitação pelo JS para que possa ser consumido no formulário da solicitação ou processo. Funciona de forma offline.

Bloco de código
languagejs
titleChamada no JS
var arquivos = await JSInterface.getAttachments();
console.log('TESTE ARQUIVOS: ' + arquivos);

O objeto retorna sempre um json que é uma lista de arquivos. Cada arquivo pode ou não ter as informações abaixo:

Bloco de código
languagejs
int? documentId;  int? version;  int? createDate;  bool? newAttach;  double? size;  String? fileName;  String? description;  String? streamControlUrl; 
Painel
borderColor#f2f2f2
bgColor#f2f2f2

Caso não tenha a informação no objeto, o valor será null por padrão.

Exemplo de chamada no JS:

Bloco de código
languagejs
async function getFiles() {  
    var arquivos = await JSInterface.getAttachments();
    console.log('TESTE ARQUIVOS: ' + arquivos);
} 

sendAttachments

Para se ter sincronismo com o envio do formulário, pode-se utilizar a função igual a beforeSendValidate.

Bloco de código
languagejs
var sendAttachments = function(values) { 
                             
} 
  • Os dados sempre serão uma lista de arquivos com os valores:
Bloco de código
languagejs
int? documentId; int? version; int? createDate; bool? newAttach; double? size; String? fileName; String? description; String? streamControlUrl;  

setEnable

...

Este evento está depreciado e não é mais utilizado.

...