none
Validação de CPF e CNPJ CRM 2011 RRS feed

  • Pergunta

  • Olá Pessoal,

    Estou começando a utilizar o CRM, e estou com a versão 2011.

    Preciso fazer uma validação  em Campos CPF e CNPJ, pois temos a necessidade de fazer a verificação do dígito verificador destes campos CPF e CNPJ.

    Se alguém tiver algum exemplo de como fazer isso em JScript no CRM 2011 ficaria muito grata!

    Abraços.


    sábado, 20 de agosto de 2011 23:30

Respostas

  • Boa Tarde, Tenho os dois codigos separados do CRM 4.0 este funcionam corretamente no CRM 2011, talvez so tenha  que alterar a sintaxe. Segue abaixo espero que ajude.
     

    ######CPF######

    var exp = /\-|\.|\/|\(|\)| /g
    var cpfFormatado = crmForm.all.combocrm_cpf.DataValue;
    if(cpfFormatado == null){return;}
    /*Somente números*/
    cpfFormatado = cpfFormatado.replace(exp,"");

    /*Bloco de código de validação de CPF*/
    var a = [];
    var b = new Number;
    var c = 11;
    for (i=0; i<11; i++){
       a[i] = cpfFormatado.charAt(i);
       if (i < 9) b += (a[i] * --c);
    }
    if ((x = b % 11) < 2) { a[9] = 0 } else { a[9] = 11-x }
    b = 0;
    c = 11;
    for (y=0; y<10; y++) b += (a[y] * c--);
    if ((x = b % 11) < 2) { a[10] = 0; } else { a[10] = 11-x; }
    if ((cpfFormatado.charAt(9) != a[9]) || (cpfFormatado.charAt(10) != a[10])) {
       alert("Número de CPF inválido.");
       crmForm.all.combocrm_cpf.DataValue = "";
    }else{
       /*Formata como ###.###.###-##*/
       cpfFormatado = cpfFormatado.substr(0, 3) + '.' + cpfFormatado.substr(3, 3) + '.' + cpfFormatado.substr(6, 3) + '-' + cpfFormatado.substr(9, 2);
       /*Atualiza no formulário*/
       crmForm.all.combocrm_cpf.DataValue = cpfFormatado;
    }

     

    ######CNPJ###### 

    var exp = /\-|\.|\/|\(|\)| /g
    var cnpjFormatado = crmForm.all.new_cnpj.DataValue;
    if(cnpjFormatado == null){return;}

    /*Somente números*/
    cnpjFormatado = cnpjFormatado.replace(exp,"");

    /*Bloco de Código de Validação de CNPJ*/
    var valida = new Array(6,5,4,3,2,9,8,7,6,5,4,3,2);
    var dig1= new Number;
    var dig2= new Number;
    var digito = new Number(eval(cnpjFormatado.charAt(12)+cnpjFormatado.charAt(13)));
    for(i = 0; i<valida.length; i++){
       dig1 += (i>0? (cnpjFormatado.charAt(i-1)*valida[i]):0);   
       dig2 += cnpjFormatado.charAt(i)*valida[i];   
    }
    dig1 = (((dig1%11)<2)? 0:(11-(dig1%11)));
    dig2 = (((dig2%11)<2)? 0:(11-(dig2%11)));
    if(((dig1*10)+dig2) != digito){
       alert("Número de CNPJ inválido.");
       crmForm.all.combocrm_cnpj.DataValue = "";
    }else{
       /*Formata como ##.###.###/####-##*/
       cnpjFormatado = cnpjFormatado.replace(exp,"");
       cnpjFormatado = cnpjFormatado.substr(0, 2) + '.' + cnpjFormatado.substr(2, 3) + '.' + cnpjFormatado.substr(5, 3) + '/' + cnpjFormatado.substr(8, 4) + '-' + cnpjFormatado.substr(12, 2);
       crmForm.all.new_cnpj.DataValue = cnpjFormatado;
    }


    Tiago Henrique Consultor de Implantação Microssoft Dynamics CRM
    • Marcado como Resposta Jaqueline.braga terça-feira, 23 de agosto de 2011 00:01
    domingo, 21 de agosto de 2011 21:38
  • Existe um "conversor" de códigos JScript do CRM 4 para o 2011.

    http://crm2011scriptconvert.codeplex.com/releases/view/52074

    Basta colocar o código dentro de uma função, para que possa chamá-la no evento o campo.

     

    Airton

    • Marcado como Resposta Jaqueline.braga terça-feira, 23 de agosto de 2011 00:00
    • Não Marcado como Resposta Jaqueline.braga terça-feira, 23 de agosto de 2011 00:00
    • Marcado como Resposta Jaqueline.braga terça-feira, 23 de agosto de 2011 00:01
    segunda-feira, 22 de agosto de 2011 11:13

Todas as Respostas

  • Boa Tarde, Tenho os dois codigos separados do CRM 4.0 este funcionam corretamente no CRM 2011, talvez so tenha  que alterar a sintaxe. Segue abaixo espero que ajude.
     

    ######CPF######

    var exp = /\-|\.|\/|\(|\)| /g
    var cpfFormatado = crmForm.all.combocrm_cpf.DataValue;
    if(cpfFormatado == null){return;}
    /*Somente números*/
    cpfFormatado = cpfFormatado.replace(exp,"");

    /*Bloco de código de validação de CPF*/
    var a = [];
    var b = new Number;
    var c = 11;
    for (i=0; i<11; i++){
       a[i] = cpfFormatado.charAt(i);
       if (i < 9) b += (a[i] * --c);
    }
    if ((x = b % 11) < 2) { a[9] = 0 } else { a[9] = 11-x }
    b = 0;
    c = 11;
    for (y=0; y<10; y++) b += (a[y] * c--);
    if ((x = b % 11) < 2) { a[10] = 0; } else { a[10] = 11-x; }
    if ((cpfFormatado.charAt(9) != a[9]) || (cpfFormatado.charAt(10) != a[10])) {
       alert("Número de CPF inválido.");
       crmForm.all.combocrm_cpf.DataValue = "";
    }else{
       /*Formata como ###.###.###-##*/
       cpfFormatado = cpfFormatado.substr(0, 3) + '.' + cpfFormatado.substr(3, 3) + '.' + cpfFormatado.substr(6, 3) + '-' + cpfFormatado.substr(9, 2);
       /*Atualiza no formulário*/
       crmForm.all.combocrm_cpf.DataValue = cpfFormatado;
    }

     

    ######CNPJ###### 

    var exp = /\-|\.|\/|\(|\)| /g
    var cnpjFormatado = crmForm.all.new_cnpj.DataValue;
    if(cnpjFormatado == null){return;}

    /*Somente números*/
    cnpjFormatado = cnpjFormatado.replace(exp,"");

    /*Bloco de Código de Validação de CNPJ*/
    var valida = new Array(6,5,4,3,2,9,8,7,6,5,4,3,2);
    var dig1= new Number;
    var dig2= new Number;
    var digito = new Number(eval(cnpjFormatado.charAt(12)+cnpjFormatado.charAt(13)));
    for(i = 0; i<valida.length; i++){
       dig1 += (i>0? (cnpjFormatado.charAt(i-1)*valida[i]):0);   
       dig2 += cnpjFormatado.charAt(i)*valida[i];   
    }
    dig1 = (((dig1%11)<2)? 0:(11-(dig1%11)));
    dig2 = (((dig2%11)<2)? 0:(11-(dig2%11)));
    if(((dig1*10)+dig2) != digito){
       alert("Número de CNPJ inválido.");
       crmForm.all.combocrm_cnpj.DataValue = "";
    }else{
       /*Formata como ##.###.###/####-##*/
       cnpjFormatado = cnpjFormatado.replace(exp,"");
       cnpjFormatado = cnpjFormatado.substr(0, 2) + '.' + cnpjFormatado.substr(2, 3) + '.' + cnpjFormatado.substr(5, 3) + '/' + cnpjFormatado.substr(8, 4) + '-' + cnpjFormatado.substr(12, 2);
       crmForm.all.new_cnpj.DataValue = cnpjFormatado;
    }


    Tiago Henrique Consultor de Implantação Microssoft Dynamics CRM
    • Marcado como Resposta Jaqueline.braga terça-feira, 23 de agosto de 2011 00:01
    domingo, 21 de agosto de 2011 21:38
  • Existe um "conversor" de códigos JScript do CRM 4 para o 2011.

    http://crm2011scriptconvert.codeplex.com/releases/view/52074

    Basta colocar o código dentro de uma função, para que possa chamá-la no evento o campo.

     

    Airton

    • Marcado como Resposta Jaqueline.braga terça-feira, 23 de agosto de 2011 00:00
    • Não Marcado como Resposta Jaqueline.braga terça-feira, 23 de agosto de 2011 00:00
    • Marcado como Resposta Jaqueline.braga terça-feira, 23 de agosto de 2011 00:01
    segunda-feira, 22 de agosto de 2011 11:13
  • Pessoal, Muito Obrigado, funcionou perfeitamente.! Abraços
    segunda-feira, 22 de agosto de 2011 23:59