Seguidores

Tecnologia do Blogger.
RSS

[SPED] [Dica] NT 004.2011 NFe Código de Barras EAN GTIN Função para calcular o dígito GTIN8,12,13,14

Delphi
Função para calcular o dígito do código de barras EAN/GTIN8, 12, 13,
14:

function DigitoCodigoBarras(CodigoBarras: string): string;
var
i, TotalImpar, TotalPar, Total: Integer;
begin
TotalImpar := 0;
TotalPar := 0;

for i := 1 to Length(CodigoBarras) - 1 do
begin
if Odd(i) then
TotalImpar := TotalImpar + StrToInt(CodigoBarras[i])
else
TotalPar := TotalPar + StrToInt(CodigoBarras[i]);
end;

TotalPar := TotalPar * 3;
Total := TotalImpar + TotalPar;

i := 0;
while i < (Total) do
Inc(i, 10);

Result := IntToStr(i - Total);
end;

--
--------------
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

2 comentários:

Lindomar disse...

boa tarde,
testei a função com ean8,12 e 13 tudo ok, mas quando testei com o 14 não deu certo. No caso desse gtin 14 ele retorna 2: 17898505140938.

Lindomar

Unknown disse...

Essa função esta errada não gera codigo correto para EAN 13 e nem EAN8

Teste com o site

http://www.gs1pt.org/servicos/digito-controlo/3/76/calculo-digito-de-controlo

Postar um comentário