PEX - Validação de Campos Validar Campo Data ao Sair do Formulário Neste tópico veremos como validar um campo de data ao sair do formulário utilizando PEX. Exemplo de Código if aoFormularios.GetJSON('ID_DO_CAMPO').GetDt('TEXTO') = 0 then begin aoMensagem.SetStr('MENSAGEM', 'O campo de data é obrigatório!'); AbortarOperacao; end; No exemplo acima, o código verifica se o campo de data está vazio (igual a 0) e, caso esteja, exibe uma mensagem e aborta a operação. Validar Campo Somente Leitura Neste tópico veremos como validar um campo que está como somente leitura, mas que é obrigatório no processo. Quando um campo é configurado como somente leitura, o usuário não consegue preenchê-lo manualmente, mas pode ser necessário garantir que ele esteja preenchido por algum evento ou processo automático. Exemplo de código 1if aoFormularios.GetJSON('ID_DO_CAMPO').GetStr('TEXTO') = '' then begin aoMensagem.SetStr('MENSAGEM', 'O campo obrigatório não foi preenchido!'); AbortarOperacao; end; No exemplo acima, o código verifica se o campo está vazio e, caso esteja, exibe uma mensagem e aborta a operação. Validar Campos ou Dados via PEX Este tópico tem a finalidade de abordar os principais validadores presentes no PEX, como bem sabemos, o PEX nas versões maiores que 12 possuem um assistente PEX, no PEX existem também muitas rotinas e/ou funções publicadas que podem ser acessadas via menu de contexto, conforme imagem abaixo: As funções abordadas serão: TSTR.Testa_CNPJ(Codigo); TSTR.Testa_CPF(Codigo); TSTR.of_IsNotNullEMA(asText); TSTR.of_IsNullEMA(asText); TSTR.of_VerificaEmail(asTexto, abVerificaNull); TSTR.of_TemNumero(s); TSTR.of_TemTexto(s, abValida); TSTR.of_UFValido(asUF); TSTR.of_IsCodigoBarra(Codigo); Valida CNPJ Esta função deve ser utilizada com uma variável do PEX, variável do processo e/ou formulário do processo afim de validar um CPNJ, retornando False (Booleana) no caso de digitado um CPNJ inválido por engano ou algo do gênero. var CNPJ : string; Resposta : Boolean; begin CPNJ := '07297774000175'; //CNPOJ Informado em um formulario e/ou variavel do tipo texto Resposta := TSTR.Testa_CNPJ(CNPJ); -- Retorna True ou False para varaivel boleana end;