Validando 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;
Valida CPF
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 CPF, retornando False (Booleana) no caso de digitado um CPF inválido por engano ou algo do gênero.
var
CPF : string;
Resposta : Boolean;
begin
CPF:= '06972928840'; //CPF Informado em um formulario e/ou variavel do tipo texto
Resposta := TSTR.Testa_CPF(CPF); -- Retorna True ou False para varaivel boleana
end;
Ou, dessa forma:
const
cs_cpf = '7'; //Aqui é informada a ID referente ao campo.
var
lsCPF : string;
begin
lsCPF := aoFormularios.GetJSON(cs_cpf).GetStr('TEXTO');
lsCPF := TSTR.StrTran(lsCPF, '-', '');
lsCPF := TSTR.StrTran(lsCPF, '.', '');
// Esta parte abaixo, formata a mensagem de erro caso aconteça
if (not TSTR.Testa_CPF(lsCPF)) and (aoFormularios.GetJSON(cs_cpf).GetBol('OBRIGATORIO') = true) then
begin
aoMensagem.SetStr('MENSAGEM' , 'CPF INVÁLIDO!');
aoMensagem.SetBol('ABORTA' , True);
aoMensagem.SetInt('FOCO',9);
aoMensagem.SetInt('TIMEOUT', 6000{Milissegundos});
aoMensagem.SetStr('TIPO', 'ERRO');
end;
end;
Verifica se Campo ou Váriavel é null / não preenchido:
IF TSTR.of_IsNotNullEMA(variavelpex) THEN // Como retorna uma boleada, podemos utializar diretamente no IF, assim se a variavel nao for vazia, a condicional será verdadeira.
IF TSTR.of_IsNullEMA(variavelpex) THEN // Como no exemplo acima, neste caso a condicional será verdadeira se a variavel estiver em branco/nula.
Valida E-mail :
Esta função verifica se o e-mail preenchido na variável ou campo é válido, ou seja, possui pelo menos um @ e ponto, e tem a opção de validar ou não se o campo estiver em branco nos casos de e-mail obrigatório:
//Padrão
TSTR.of_VerificaEmail(asTexto, abVerificaNull);
//Exemplo
TSTR.of_VerificaEmail(Variaveldopex, True);
Ou seja, estamos verificando o conteúdo da variável e no segundo paramento estou verificando se não foi deixado em branco.
Como podemos perceber os nomes são bem intuitivos e podem ser facilmente interpretados, em todos os casos citados o retorno da função será uma booleana, ou seja, True/False, abaixo demais exemplos ainda não citados:
TSTR.of_TemNumero(variavel); // Verifica se possuem numeros na variavel.
TSTR.of_TemTexto(variavel); // Verifica se possuem caracteres texto na variavel.
TSTR.of_UFValido(variavel); // Verifica se a UF preenchida é uma UF válida dentro do Brasil.
TSTR.of_IsCodigoBarra(variavel); // Verifica se código de barras é válido.