Árvore de páginas

Versões comparadas

Chave

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

...

Veja a seguir os métodos disponíveis para a variável form:

MétodoDescrição
long getCompanyId()Retorna o ID da empresa
int getDocumentId()Retorna o ID do documento (registro de formulário)
int getVersion()Retorna a versão do documento (registro de formulário)
int getCardIndex()Retorna o ID do formulário
String getValue(String fieldName)

Obtém o valor de um campo do formulário

Nota

O campo fieldName é case insensitive, ou seja, você pode usar "codigo", "Codigo", "CoDiGo", "CODIGO"

void setValue(String fieldName, String fieldValue)

Define o valor de um campo do formulário

Nota

O campo fieldName é case insensitive, ou seja, você pode usar "codigo", "Codigo", "CoDiGo", "CODIGO"

boolean getEnabled(String fieldName)Verifica se um campo está habilitado
void setEnabled(String fieldName, boolean enabled)

Define se um campo deve estar habilitado ou não

void setEnabled(String fieldName, boolean enabled, boolean protect)

Define se um campo deve estar habilitado ou não, e se o campo desabilitado deve ser protegido ou não.

Quando definido o valor true para o parâmetro protect, o campo desabilitado não terá seu valor salvo no registro de formulário.

Nota

A função de proteção dos dados do formulário só é válida no contexto de uma movimentação workflow.

void setEnhancedSecurityHiddenInputs(boolean protect)

Quando definido com o valor true, todos os campos desabilitados pelo método setEnabled após a ativação deste método serão protegidos* e não terão seus valores salvos no registro de formulário.

Esta função deve ser chamada antes do setEnabled.

Nota

A função de proteção dos dados do formulário só é válida no contexto de uma movimentação workflow.

String getFormMode()

Obtém o modo de edição do formulário, podendo retornar os seguintes valores:
ADD: Criação do formulário

MOD: Formulário em edição

VIEW: Visualização do formulário

NONE: Não há comunicação com o formulário, por exemplo, ocorre no momento da validação dos campos do formulário onde este não está sendo apresentado.

void setHidePrintLink(boolean hide)Quando definido com o valor true, desabilita o botão de imprimir do formulário.
boolean isHidePrintLink()Verifica se o botão de imprimir está desabilitado.
Map<String, String> getChildrenFromTable(String tableName)Retorna um mapa contendo os nomes e valores dos campos filhos de uma tabela pai.
void setHideDeleteButton(boolean hide)Quando definido com o valor true, desabilita o botão de excluir registros filhos em um formulário com pai-filho.
boolean isHideDeleteButton()Verifica se a exclusão de registros filhos está desabilitada.
boolean getMobile()Verifica se o registro de formulário está sendo acessado através de um dispositivo mobile.
boolean isVisible(String fieldName)Verifica se um campo está marcado para ser visível pelo nome do campo
void setVisible(String fieldName, boolean visible)Define se um campo deve estar visível ou não pelo nome do campo
boolean isVisibleById(String id)Verifica se um item do html está marcado para ser visível
void setVisibleById(String id, boolean enabled)Define se um item do html deve estar visível ou não
Map<String, String> getChildrenFromTable(String tableName)Retorna um mapa contendo os nomes e valores dos campos filhos de uma tabela pai.
Integer[] getChildrenIndexes(String tableName)Retorna um array contendo os índices que contenham campos filhos na tabela pai


Exemplos de utilização

...

Bloco de código
languagejs
titleQuando não for uma inclusão, bloqueia o campo codigo
linenumberstrue
function enableFields(form) {
    if ( form.getFormMode() != 'ADD' ){
        form.setEnhancedSecurityHiddenInputs(true);
        form.setEnabled("codigo",false);
    }
}

...

Bloco de código
languagejs
titleCom validar campos, conferir e atribuir valores
linenumberstrue
function validateForm(form){
	if (form.getValue("codigo") == "") {
		throw "Informe o código";
	}

	if (form.getValue("name") == "") {
		form.setValue("name", "Anônimo");
	}
	
}

 

Bloco de código
languagejs
titleExemplo de como listar todos os registros de uma tabela pai x filho e usar para validação
linenumberstrue
function validateForm(form){
    var indexes = form.getChildrenIndexes("tabledetailname");
    var total = 0;
    for (var i = 0; i < indexes.length; i++) {
        var fieldValue = parseInt(form.getValue("valor___" + indexes[i]));
        if (isNaN(fieldValue)){
            fieldValue = 0;
        } 
        total = total + fieldValue;
        log.info(total);
    }
    log.info(total);
    if (total < 100) {
        throw "Valor Total da requisição não pode ser inferior a 100";
    }
}
Bloco de código
languagejs
titleExemplo de como manipular os campos de uma tabela pai x filho
linenumberstrue
function enableFields(form){ 
	var indexes = form.getChildrenIndexes("ingredientes");
    for (var i = 0; i < indexes.length; i++) {
    	form.setEnabled("quantidade___" + indexes[i], false);
    	form.setEnabled("unidade___" + indexes[i], false);
    	form.setEnabled("produto___" + indexes[i], false);
    }
}