Calcula dígito verificador do CT-e - Conhecimento de Trânsito
Publicado por Cleiton Ap. de Souza (última atualização em 01/08/2014)
[ Hits: 4.442 ]
Esse script calcula o dígito verificador da chave de acesso do CT-e.
Muito semelhante ao cálculo de chave do Nf-e.
String valor = jTextField1.getText(); //Valor inputado pelo Usuario String valormult = "4329876543298765432987654329876543298765432"; //Valor a sere multiplicado String valorresmult = "0000000000000000000000000000000000000000000" ; double divisao=123.123; int resto=0,digitoV=0,digitoverificador=0; double soma=0; int[] valorJtxt = new int[valor.length()]; int[] valorMulti = new int[valormult.length()]; int[] valorResMult = new int[valorresmult.length()]; if ((valor.length() < 43) ||(valor.length()> 43)) { // Verifica quantidade de JOptionPane.showConfirmDialog(null,"O campo deve conter"); } else { //Guardando informações no Array da chave de acesso for (int i = 0; i < valorJtxt.length; i++) { valorJtxt[i] = Integer.parseInt(valor.substring(i, i+1)); System.out.println("Valor da chave de acesso "+valorJtxt[i]); } //Guardando informações dos numeros que multiplicam for (int i=0; i< valorMulti.length;i++){ valorMulti[i] = Integer.parseInt(valormult.substring(i, i+1)); System.out.println("Valores para calculo "+valorMulti[i]); } //multiplicando os itens for (int i=0; i<43;i++){ valorResMult[i] = valorMulti[i]*valorJtxt[i]; System.out.println("Valores Multiplicados"+valorResMult[i]); } //Somando itens Multiplicados for (int i=0; i<43;i++){ soma = soma + valorResMult[i]; System.out.println("Valor Somado "+soma); } System.out.println("Soma "+soma); divisao = soma/11; System.out.println("Divisão "+divisao); resto = (int)soma % 11; System.out.println("Valor Do Resto da Divisão "+resto); digitoV = 11-resto; System.out.println("Valor 11 - Resto = "+digitoV); if ((resto == 0) || (resto==1)){ digitoverificador= 0; jTextField2.setText(Integer.toString(digitoverificador)); System.out.println("Valor Digito Verificador = "+digitoverificador); }else { digitoverificador=digitoV; jTextField2.setText(Integer.toString(digitoverificador)); System.out.println("Valor Digito Verificador = "+digitoverificador); } }
Ordenação de vetores com letras do alfabeto (atualizado)
Nenhum coment�rio foi encontrado.
Customizar a Instalação do Linux Debian com Preseed
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
Um modo leve de ouvir/ver áudio/vídeo da internet em máquinas pererecas
Resolver algumas mensagens de erro do SSH
Instalar módulo de segurança do Banco do Brasil Warsaw do tipo .run
Sem espaço na partição home (7)
Aprendendo mais sobre Linux com livro (6)
Procrastinação e autossabotagem são problemas muito comuns na sociedad... (6)