Sunteți pe pagina 1din 10

Cdigo de Barras

Qu
producto no est, hoy en da, identificado por un cdigo de barras? La respuesta es obvia. Muy pocos o ninguno, son los productos que hoy en da no identifican sus productos con cdigos de barras. A la pregunta de qu es un cdigo de barras? Se podra afirmar que es un sistema de identificacin automtica, nico, normalizado y homologado que no slo permite controlar la gestin de stocks y racionalizar el suministro de mercancas, sino que crea nuevos cauces de comunicacin entre fabricantes y distribuidores.

Cdigo Fuente
Los suscriptores pueden conseguir el cdigo en el fichero correspondiente a este nmero de la revista Cdigos Fox.2x, VFP 3.0/5.0/60 Existen distintos tipos de codificacin entre los que destacan el UPC, EAN 13, EAN 8, ... Particularmente, en Espaa el sistema de codificacin ms extendido es el EAN 13. Este ser el objeto de nuestro estudio y de su posterior codificacin. Grafico 1

Representacin del sistema EAN 13. El sistema EAN es un conjunto de normas que homogeneizan la numeracin de todos los productos de gran consumo y tiene tres caractersticas principales: - Puede ser utilizado por fabricantes y distribuidores en el intercambio y en la mejora de las informaciones. - Identifica la unidad del producto de forma biunvoca (un cdigo, un producto).

- No es explicativo o significativo: toda la informacin est contenida en el registro de la base de datos al que se accede con el cdigo. - Puede recogerse datos en el punto de venta. La representacin del cdigo EAN se efecta mediante la visualizacin de 13 dgitos que identifican el producto: - Los dos primeros dgitos/caracteres corresponden al pas. Para el caso que nos ocupa decir que el cdigo numrico asociado a nuestro pas es el 84. Grafico 2

- Los cinco caracteres siguientes identifican la empresa fabricante del artculo. - Los cinco siguientes caracteres ser un nmero que identificar cada uno de los productos que la empresa produzca. La empresa podr poner su propia numeracin de productos. - Por ltimo, el dgito 13, es un dgito de control y se calcula mediante una sencillo algoritmo matemtico que comentaremos ms adelante. Este algoritmo elimina cualquier posibilidad de error en la lectura. Caractersticas del smbolo La representacin del cdigo se ha de efectuar mediante la simbolizacin de los dgitos de forma que puedan leerse y traducirse directamente del decodificador, que a travs de la interface se comunica con el ordenador o terminal. El smbolo estndar est formado por una serie de barras paralelas, de diferente grosor. En la parte inferior del smbolo se representa el mismo cdigo en cifras para que sea legible. El smbolo es de tamao variable. Su tamao estndar es de 37,29*26,26 mm., pero este tamao puede variar en funcin de las medidas del envase o de la etiqueta. En estos casos la variacin est entre el 0,8 y 2 veces el tamao del estndar.

El dgito de control La utilizacin del dgito de control tiene por objetivo el establecer un mecanismo que evite errores en el tratamiento automtico de los cdigos EAN. El dgito de control es la ltima cifra del cdigo EAN de un producto. Su clculo se realiza automticamente en funcin del valor de las posiciones que le preceden en el cdigo, mediante un sencillo algoritmo. Algoritmo para calcular el dgito de control Los pasos a seguir a la hora de calcular el dgito de control (para este tipo de simbolizacin EAN-13) son: Grafico 3

1.- Multiplicamos por 1 las posiciones impares y por 3 las posiciones pares del cdigo empezando de derecha a izquierda. Tomemos como ejemplo el siguiente cdigo : 841234567890 sabiendo que el 84 corresponde con el pas, los siguientes 5 dgitos con la empresa y los ltimos 5 dgitos con el artculo/producto. 2.- Sumamos los valores resultantes. 8+12+1+6+3+12+5+18+7+24+9+0 = 105 3.- Restamos de la decena superior ( es mdulo 10) el valor de la suma de los valores resultantes. El resultado de esta operacin es el valor del cdigo de control (primera posicin del cdigo de barras). 110 - 105 = 5 ==> valor del cdigo de control. Otra posibilidad es dividir la suma resultante (105) por 10 siendo el resto de sta divisin el valor del dgito de control. 105 / 10 = 10 Cociente y 5 de resto El resultado final del cdigo es: 84 12345 67890 5 (EAN-13).

Cmo representar grficamente el cdigo? Ya sabemos qu tipo de codificacin se utiliza mayoritariamente en Espaa y como averiguar su dgito de control. Pero, cmo representar el cdigo resultante en forma de cdigo de barras ? Cada carcter numrico debe tener obligatoriamente dos barras y dos espacios. Para conformar un carcter es necesario la unin de 7 mdulos. Un mdulo es la unidad mnima o bsica del cdigo. Visualmente, un carcter podra representarse como: Grafico 4

Este carcter se compone de 7 mdulos, 2 barras y 2 espacios de diferente grosor (casualmente el grosor de los espacios es el mismo). Por norma estndar la anchura de un mdulo es de 0,33 mm. De tal forma que si un carcter dispone de 7 mdulos la anchura total de un carcter ser: 0,33 mm X 7 = 2,31 mm. Los juegos de smbolos Para poder identificar simblicamente los caracteres numricos usando los siete mdulos se definen 3 juegos de caracteres llamados A, B y C. Cada uno de ellos tiene 10 valores (del 0 al 9), que combinan dos barras y dos espacios para los siete mdulos que componen cada carcter numrico. los juegos de caracteres se simbolizan de la siguiente manera Grafico 5

El juego A tiene un nmero impar de mdulos oscuros. Por esta razn se dice que el juego de simbolizacin A tiene paridad impar. Los juegos B y C son juegos de simbolizacin con paridad par (el nmero de mdulos oscuros es par). Los caracteres auxiliares Los caracteres auxiliares se componen de la siguiente forma: Caracteres Auxiliares Separador lateral 3 Separador Central Nmero de Mdulos 5

Secuencia del mdulo del separador lateral Grafico 6:

Secuencia del mdulo del separador centralGrafico 7:

Como su nombre indica, el separador central est en el centro del smbolo, separando los doce caracteres simbolizados, en dos grupos de seis. Los mdulos del principio y del final son claros, con lo que de sta forma, los caracteres situados a la izquierda y a la derecha de este separador central, cambian la alineacin. Los separadores laterales indican principio y fin de las barras del smbolo. El separador lateral izquierdo se representar con los 3 mdulos laterales ms 11 mdulos claros a la izquierdaGrafico 8.

El separador lateral derecho se representar con los tres mdulos laterales ms 7 mdulos claros a la derechaGrafico 9.

Estos mdulos claros deben de existir de tal forma que la omisin de estos, no garantizara la correcta lectura. El formato del smbolo EAN-13 Volviendo a nuestro cdigo de ejemplo (84 12345 67890 5) veamos qu formato y qu simbolizacin tendra cada uno de los caracteres dependiendo de la posicin de estos. El formato, de izquierda a derecha y de mayor a menor posicin , es el siguiente: Segn nuestro cdigo el carcter dcimo tercero es el 8 (Espaa), como comentbamos antes, el prefijo en Espaa es el 84. Este carcter no ser representado mediante cdigos de barras quedando a la izquierda del cdigo de barras. Segn el cuadro siguiente utilizaremos la tabla de simbolizacin A o B para las posiciones del 7 al 12 segn convenga. Del 1 al 6 utilizaremos la tabla C. El cdigo queda a partir de este momento de la siguiente manera : 8 412345 678905 La tabla de uso de los juegos de caracteres de simbolizacin en el smbolo EAN-13 es la siguiente:

13 (1) 0 1 2 3 4 5 6 7 8 9

12 A A A A A A A A A A

11 A A A A B B B B B B

10 (2) A B B B A B B A A B

9 A A B B A A B B B A

8 A B A B B A A A B B

7 A B B A B B A B A A

4 3 (3)

(1) Valor del dcimo tercer carcter. (2) Juegos de simbolizacin utilizados en los caracteres de la izquierda. (3) Juego de simbolizacin utilizado en los caracteres de la derecha. La parte del cdigo que es representada mediante barras tiene el siguiente formato: 1.- El separador lateral izquierdo incluyendo los 11 mdulos claros a la izquierda. 2.- 6 caracteres numricos, simbolizados por medio de los juegos A y B, que corresponde a los caracteres de la izquierda del smbolo. 3.- El separador centralGrafico 10.

4.- 6 caracteres numricos, simbolizados por medio del juego de caracteres C, correspondientes a los caracteres de la derecha del smbolo. 5.- El separador lateral derecho incluyendo los 7 mdulos claros por la derecha. El siguiente cuadro detalla el nmero de mdulos: A partir de este momento ya tenemos creado nuestro cdigo de barras. Seremos capaces de desarrollar un programa que imprima cdigos de barras ? Un ejemplo Supongamos que tenemos un producto y queremos simbolizarlo mediante cdigos de barras. Una vez tenemos creado y calculado el cdigo completo el resultado es: 84 23455 01011 0

Comenzando por la izquierda, identificamos el primer carcter/dgito que nos indica el pas. Con este nmero iremos a la tabla de uso de los juegos de caracteres para la simbolizacin de los dems caracteres. Para saber el smbolo correspondiente al carcter 3 del cdigo anterior (posicin 10) seguiremos los pasos siguientes: 1.- Averiguar el valor que corresponde al carcter dcimo tercero (en este caso 8). 2.- Ir a la tabla de juegos de caracteres de simbolizacin y situarnos en la fila correspondiente al valor 8. 3.- Seguidamente, nos posicionaremos en la columna correspondiente a la posicin que ocupa el carcter dentro del cdigo. 4.- Esa posicin en la tabla correspondera a un valor (A o B) que identificar qu juego de caracteres he de utilizar; el A o el B. En este caso, el juego a utilizar es el A. 5.- Vamos a la tabla de los juegos de caracteres y nos posicionamos en la fila correspondiente al valor del carcter a simbolizar -el valor 3- y en la columna correspondiente al juego de caracteres A. 6.- El contenido de esa posicin en la tabla es la simbolizacin del carcter 3 de la posicin 10 del cdigo a representar. Si tomamos el 0 como barra clara y el 1 como barra oscura, la simbolizacin del carcter 3 sera 0111101. Grafico 11

La funcin La funcin cdbarras(...), cuyo cdigo ms adelante se describe, nos permite sacar por impresora el cdigo de barras del tipos EAN-13A(el ms estndar en Espaa). Esta funcin contiene una tabla llamada codigos.dbf con la siguiente descripcin de registroGrafico 12

El campo codigo contiene el tipo de descripcin de cdigos de barras utilizado (EAN-13). Este campo, en principio, es puramente informativo a no ser que la funcin permitiera la impresin de distintos tipos de cdigos de barras en el que la descripcin de este campo pudiera ser de utilidad. El campo juego contiene la tabla de simbolizacin que se est utilizado para cada dgito, estos van del 0 al 9 como hemos podido comprobar anteriormente. Por ltimo, valor contiene la traduccin a 0 y 1 del dgito dependiendo de cada tabla de simbolizacin (juego). Por qu la longitud del campo valor es 28 y no 7 que es el nmero de mdulos de representacin de cada dgito ? Cojamos como ejemplo el dgito 9 de la tabla de simbolizacin A. La disposicin de los mdulos sera la siguienteGrafico 13:

Como consecuencia, el contenido del campo valor debera ser (como se explicaba antes) 0 y 1 dependiendo de si el mdulo es claro u oscuro. El registro tendra que contener = 0001011. Todo esto es cierto, y el programa funcionara perfectamente pero la visualizacin de cada barra del cdigo sera muy estrecha(fina) y no se ajustara a las especificaciones propias del EAN-13. Por esta causa, cada uno de los mdulos al traducirlo a 0 y 1 se multiplica por 4 quedando el contenido del registro de esta manera = 0000000000001111000011111111 Parmetros y llamada desde Fox. La funcin recibe tres parmetros que son :

- El pas al que pertenece, 2 caracteres numricos. - El cdigo de la empresa , 5 caracteres numricos. - El cdigo del artculo, 5 caracteres numricos. Desde la ventana de comandos de FoxPro la llamada a la funcin sera de la siguiente forma: pais=84 empresa=12345 codproducto=67890 =cdbarras(pais,empresa,codproducto) El cdigo fuente. El cdigo fuente de la funcin es el siguiente:

*********************************************************** ** Funcin: cdbarras() *********************************************************** ** Objetivo: imprimir un cdigo de barras a partir ** de una especificaciones *********************************************************** ** Parametros : ** pais -->Cdigo del pais ** empresa --> Cdigo de la empresa ** producto --> Cdigo del producto *********************************************************** ** Funciones llamadas: convertir() *********************************************************** ** Procedimientos llamados: control() *********************************************************** ** Tablas utilizadas: codigos.dbf *********************************************************** ** Fecha de creacin: 25-Enero-1995 ** Versin : 1.1 *********************************************************** ** Autor : Luis Martnez Prez *********************************************************** Conclusin A partir de esta funcin cada uno puede crear su propio formato de cdigo de barras, o bien manipular la funcin para su uso particular o profesional.

S-ar putea să vă placă și