Árvore de páginas

Versões comparadas

Chave

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

...

A validação por campo é feito através da validação campo-a-campo, onde você conseguirá alterar algumas características do campo que esta sendo validado.

Aviso

Nas validações de campos é possível somente alterar as características do próprio campo validado, onde não é permitido alterar nas características de outros campos.

Bloco de código
languagejs
titleUtilização de validação de campo
linenumberstrue
collapsetrue
...   
    ASSIGN jObj = NEW JsonObject().
    jObj:add('property', 'nomCampo').
    jObj:add('label', 'Label do campo').
    jObj:add('visible', TRUE).
    jObj:add('type', JsonAPIUtils:convertAblTypeToHtmlType('character')).
    jObj:add('validate', '/api/trn/v1/idiomas/validateField'
    jObj:add('gridColumns', 6).
    jAList:add(jObj).
...

...

O componente PO-DYNAMIC-FORM, quando ocorre alguma alteração em seus campos, no LEAVE do campo, ele enviará um JSon com o seguinte formato para o back-end:

TagTipoDescrição
propertyCharacterContêm o nome do campo que houve a alteração para ser validado.
valueCharacterContêm o valor atual do campo para ser validado.


Onde o back-end receberá o seguinte JSon:

...

A validação do campo, aguarda o seguinte formato de JSon:

TagTipoDescrição
valueCharacterContêm o novo valor para o campo.
fieldJSonObjectContêm uma lista de propriedades que serão alteradas. OBS: Estas propriedades tem efeito somente sobre o campo que está sendo validado.
focusLogicalInforma se o campo validado deverá ou não receber o focus.
_messagesJSonArrayContêm uma lista de mensagens "de erro" que podem ser apresentadas ao voltar para o HTML.


O back-end, após processar e realizar a validação necessária, retornará para o front-end o seguinte JSon:

...

Neste nosso exemplo, nós dividimos o JSon a ser enviado para UPC em três partes, que são:

TagTipoDescrição
propertyCharacterComtêm o nome do campo que esta sendo validado.
rootJSonObjectContêm um JSonObject com que será retornado para o HTML e que poderá ser customizado na UPC. Tudo que for customizado deverá estar dentro desta tag.


Exemplo de JSon recebido pela UPC:

...

Bloco de código
languagejs
titleTag p-validate no po-dynamic-form
linenumberstrue
collapsetrue
  <po-dynamic-form
    #formEdit
    p-auto-focus="string"
    [p-fields]="fields"
    p-validate="/api/trn/v1/idiomas/validateForm"
    [p-value]="record">
  </po-dynamic-form>
Aviso

As validações de formulário validam somente os campos já existentes, onde não é permitido adicionar novos campos. Para adicionar novos campos deve-se utilizar a tag p-load, que é executada logo após a inicialização do componente.


JSon que recebemos da tela HTML

...

Neste nosso exemplo, nós dividimos o JSon a ser enviado para UPC em três partes, que são:

TagTipoDescrição
propertyCharacterComtêm o nome do campo que esta sendo validado.
originalValuesJsonObjectContêm um JSonObject com propriedades contendo os nomes dos campos e os seus respectivos valores.
rootJSonObjectContêm um JSonObject com que será retornado para o HTML e que poderá ser customizado na UPC. Tudo que for customizado deverá estar dentro desta tag.


Exemplo de JSon recebido pela UPC:

...