Seguidores

Tecnologia do Blogger.
RSS

Re: [SPED] Cálculo dígito verificador NF-e

Paulo,
 
Obrigado pela ajuda, mas vc teria algo em excel ou até mesmo VB aplicável ao excel (macro)?
grato
 
Atenciosamente,
Geraldo Nunes

De: Paulo Geloramo <assisinformatica@gmail.com>
Para: sped-nfe@googlegroups.com
Enviadas: Terça-feira, 22 de Novembro de 2011 11:55
Assunto: Re: [SPED] Cálculo dígito verificador NF-e

Segue abaixo a função Modulo11 para Delphi:

function Modulo11(Valor: string; Base: Integer = 9; Resto: Boolean = False): string;
{
  Rotina muito usada para calcular dígitos verificadores
  Pega-se cada um dos dígitos contidos no parâmetro VALOR, da direita para a
  esquerda e multiplica-se pela seqüência de pesos 2, 3, 4 ... até BASE.
  Por exemplo: se a base for 9, os pesos serão 2,3,4,5,6,7,8,9,2,3,4,5...
  Se a base for 7, os pesos serão 2,3,4,5,6,7,2,3,4...
  Soma-se cada um dos subprodutos.
  Divide-se a soma por 11.
  Faz-se a operação 11-Resto da divisão e devolve-se o resultado dessa operação
  como resultado da função Modulo11.
  Obs.: Caso o resultado seja maior que 9, deverá ser substituído por 0 (ZERO).
}
var
  Soma, Contador, Peso, Digito: Integer;
begin
  Soma := 0;
  Peso := 2;
  for Contador := Length(Valor) downto 1 do
  begin
    Soma := Soma + (StrToInt(Valor[Contador]) * Peso);
    if Peso < Base then
      Peso := Peso + 1 else
      Peso := 2;
  end;

  if Resto then
    Result := IntToStr(Soma mod 11)
  else
  begin
    Digito := 11 - (Soma mod 11);
    if (Digito > 9) then
      Digito := 0;
    Result := IntToStr(Digito);
  end;
end;


Em 22 de novembro de 2011 11:45, Geraldo Nunes <geraldo.nunes@yahoo.com.br> escreveu:
Olá Pessoal,
 
Há alguns dias falamos de como montar a chave de acesso da Nfe com base em alguns dados como o no nrº da nota, série, data de emissão, CNPJ do fornecedor, etc.
 
Porém, agora eu é quem fiquei com a seguinte dúvida:
 
No final da chave há o dígito verificador e depois se mostra como calcular, porém não entendi nada.
 
Alguém poderia me explicar baseado como se faz esse cálculo do DV baseado nos dados abaixo?
NF: 000003834
SERIE: 1
CNPJ: 01.844.555/0002-63
UF: MG
DT EMISSAO: 25/10/2011
 
 
***OBS: Extraí o texto abaixo do manual, alguém traduza isso para o português claro por favor
Atenciosamente,
Geraldo Nunes
 
CÁLCULO DO DÍGITO VERIFICADOR DA CHAVE DE ACESSO DA NF-e
O dígito verificador da chave de acesso da NF-e é baseado em um cálculo do
módulo 11. O módulo 11 de um número é calculado multiplicando-se cada algarismo pela
seqüência de multiplicadores 2,3,4,5,6,7,8,9,2,3, ... posicionados da direita para a esquerda.
A somatória dos resultados das ponderações dos algarismos é dividida por 11 e o
DV (dígito verificador) será a diferença entre o divisor (11) e o resto da divisão:
DV = 11 - (resto da divisão)
Quando o resto da divisão for 0 (zero) ou 1 (um), o DV deverá ser igual a 0 (zero).
Exemplo: consideremos que a chave de acesso tem a seguinte seqüência de caracteres:
Somatória das ponderações = 644
Dividindo a somatória das ponderações por 11 teremos, 644 /11 = 58 restando 6.
Como o dígito verificador DV = 11 - (resto da divisão), portando 11 - 6 = 5
Neste caso o DV da chave de acesso da NF-e é igual a "
5", valor este que deverá compor a
chave de acesso totalizando a uma seqüência de 44 caracteres.

--
Paulo Geloramo
www.assisinformatica.com
--
--------------
Este Grupo se destina a discutir a implantação do SPED - Sistema Público de Escrituração Digital. Você recebeu esta mensagem por ter se inscrito no grupo do Google Groups "SPED - Sistema Público de Escrituração Digital".
 
Para postar uma mensagem no grupo, envir um email para sped-nfe@googlegroups.com
 
Para sair do grupo, envie uma mensagem para
sped-nfe+unsubscribe@googlegroups.com


  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

0 comentários:

Postar um comentário