Ajuda - Busca - Membros - Calendário
Versão Completa: Validar Código De Barras Ean-8

Google
FórumWEB > Desenvolvimento > Automação Comercial
Fabio_Farias
Boa tarde.
Atualmente estou com um cliente que tem cadastrado em meu software produtos de cosméticos.
Esses produtos geralmente possuem o código de barras padrão EAN-8
Meu sistema não tem conseguido validar esses códigos.
Estou utilizando para validação o padrão para EAN-13, achei que era esse o motivo do problema, porém analisando os códigos verifico que eles realmente não batem com o dígito.
Gostaria se possível algum usuário que mantém esse tipo de EAN no software pudesse conferir se realmente os códigos abaixo estão no padrão EAN13.
Pois testes vários algoritmos e nenhum me retornou o último digito de acordo com o informado.

QUOTE
78926043
78926041
78928714
78928723
RMNeto
Amigo,

Segue especificação do Código EAN-8:

CODE
CODIFICAÇÃO DE UM EAN-8

A codificação é similar a do EAN-13, só que menos custoso.


8 4 2 9 - Zona Esquerda do Código
3 5 9 6 - Zona Direita do Código

A parte esquerda do código se codificará sempre com o método A do EAN-13 e a parte direita do mesmo modo da parte direita do EAN-13.

VALIDAÇÃO DO CÓDIGO

O método de validação do digito de controle (o último número em ambos casos) é assim:

- Para EAN-13:

Somamos todos os dígitos impares.
Somamos todos os dígitos pares e multiplicamos a soma por 3.
Somamos ambas cifra.
O digito de controle será igual a 10 menos as unidades do número anterior, se é 10 será 0.

- Para EAN-8:

Somamos todos os dígitos impares e multiplicamos a soma por 3.
Somamos todos os dígitos pares.
Somamos ambas cifras.

O calculo para o digito de controle é o mesmo que no caso anterior.

Partindo do código EAN-13 de nosso exemplo teremos:

Código: 0123456789005

Impares -> 0 2 4 6 8 0 = 20
Pares -> (1 + 3 + 5 + 7 + 9 + 0)* 3 = 25 * 3 = 65
Soma -> 20 + 65 = 85; Unidade = 5
Digito de Controle -> 10 - 5 = 5


Com estas especificações em mãos da para validar se o seu código é ou não EAN-8.

Espero que ajude,

RMNeto.
JNPace
Olá Fábio, acrescente 5 (cinco) zeros antes do EAN-8 e use a sua função para o EAN-13 para calcular, funciona redondo...
Esta é uma versão simplificada de nosso conteúdo principal. Para ver a versão completa com maiores informações, formatação e imagens, por favor clique aqui.
Invision Power Board © 2001-2008 Invision Power Services, Inc.