bollywood actresses hair loss hair rehab london contact number cheap hair extensions brazilian curly hair with closure hair extension fails human hair wigs black ponytail hairstyles 2018 sunny hair extensions uk hair extensions remy hair extensions weft koko one piece hair extensions clip hair
Validar Campo com Número do CNS

Validar campo com número do CNS

Adquira a assinatura vitalícia do site e passe a ter acesso aos arquivos exemplos, vídeos, revistas, livros e ao kit de montagem de ribbons. Você terá suporte por e-mail, caso necessite tirar dúvidas pontuais. Clique AQUI e veja como obter um dos nossos planos. Clique AQUI e faça uma visita a seção Downloads do site e verifique as centenas de arquivos que estará à sua disposição. Clique AQUI e faça uma visita a seção Vídeos do site e veja a lista que estará disponível ao se tornar o nosso assinante vitalício. Clique AQUI e saiba mais detalhes sobre o kit de montagem de ribbons (deixe seus aplicativos com aspecto profissional).

Usuário Luiz:

Boa noite.

Será que alguém já conseguiu validar um campo com número do Cartão Nacional de Saúde?  Já pesquisei sobre o assunto em outros fóruns, porém em Access não encontrei nada.

Encontrei um código em JAVA, porém não entendi muita coisa.  Preciso de ajuda!

public boolean isValid(String s) {
   if (s.matches("[1-2]\\d{10}00[0-1]\\d") || s.matches("[7-9]\\d{14}")) {
      return somaPonderada(s) % 11 == 0;
   }
   return false;
}

private int somaPonderada(String s) {
   char[] cs = s.toCharArray();
   int soma = 0;
   for (int i = 0; i < cs.length; i++) {
      soma += Character.digit(cs[i], 10) * (15 - i);
   }
   return soma;
}

Suporte:

Luiz, temos o cartão provisório e o cartão definitivo que usa o número do PIS (primeiros 11 dígitos). Segue o código abaixo que montei e que valida também o cartão provisório.

Faça o login aqui para ter acesso ao código.

Usando a função:

if fncValidaCns("175071486530018") then
   'Cartão válido
else
   'Cartão rejeitado
end if

Nota 1: É necessário realizar teste com os vários números que você tem certeza que são válidos, inclusive com os números provisórios.

Nota 2: No código JAVA apresentado, o rapaz usou o Regex (Regular-Expression).  Para isso é preciso ativar a referência “Microsoft VBScript Regular Expression 5.5” que está em “c:\Windows\system32\vbscript.dll”. Preferi não usar o Regex, apesar do código ficar bem mais reduzido, para não ter que ativar esta referência no VBA.  Segue um link do meu artigo, caso queira ver um exemplo usando o Regex no Access.

Regex no Access

Aguardo o teste.

Usuário Luiz :

Obrigado Avelino, deu certo. Já havia vasculhado por alguns fóruns, mas sem retorno. Validação de CPF e CNPJ é o que mais se encontra, mas não o do CNS.

Para facilitar para outros usuários que um dia possam se deparar com a mesma situação, disponibilizo o exemplo.

Suporte:

Luiz, obrigado pelo feedback e sucesso! Seu exemplo está abaixo:

Download

 


 

 


4 comentário(s)

LUIZ NETO   12/02/2020 08:03:13

Boa tarde Avelino!

Problema resolvido conforme vossa orientação!
Grato pela vossa atenção "GRANDE MESTRE".

Avelino Sampaio   12/02/2020 01:02:51

Luiz,

acrescente a seguinte linha de tratamento de erro no incio do código:

ON ERROR RESUME NEXT

Sucesso!

LUIZ NETO   10/02/2020 16:32:28

Validação CNS. Caso você insira mais algum campo no formulário e deixar o campo do CNS vazio, ao dar tab ou enter para pular de campo retorna o seguinte erro:

Erro em tempo de execução 94:
Uso de null inválido.

LUIZ NETO   10/02/2020 16:32:24

Validação CNS. Caso você insira mais algum campo no formulário e deixar o campo do CNS vazio, ao dar tab ou enter para pular de campo retorna o seguinte erro:

Erro em tempo de execução 94:
Uso de null inválido.


Envie seu comentário: