Clasificación de Productos

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 78

CLASIFICACIÓN Y CODIFICACIÓN DE PRODUCTOS

Ing. Rogelio A. A. Morán *

1 IDENTIFICACIÓN Y CLASIFICACIÓN
La identificación precisa de los materiales y productos (materias primas, materiales en
curso de elaboración, piezas, conjuntos, productos terminados) a lo largo de los procesos de
producción y logísticos es esencial para una eficaz gestión de los mismos. También es
necesario a veces identificar objetos no materiales como, por ejemplo, una categoría de
artículos.
El objeto que se quiere identificar es lo que se llama en forma genérica una entidad. Una
entidad puede ser:
• Física. Un objeto tangible, material. En particular, es un objeto al que se puede fijar un
elemento portador de datos, como un código de barras o una etiqueta de identificación
electrónica, por ejemplo.
• Abstracta. Un objeto intangible. Por ejemplo, una caja individual de 10 unidades de un
determinado producto es una entidad física, un palé de 100 de esas cajas es otra entidad
física (distinta de la anterior), pero la clase o categoría “cajas de 10 unidades” de ese
producto no es física sino abstracta.
La identificación de las entidades se realiza a partir de atributos que las caracterizan. Un
atributo es una propiedad o cualidad de la entidad. La información sobre la entidad está dada
por los valores de sus atributos. Un atributo puede ser reconocido si se puede construir una
oración de la siguiente forma: “El <nombre del atributo> de <entidad> es <valor del
atributo>”. Por ejemplo, “El peso de la barra es de 50 Kg” La barra es la entidad, el peso el
atributo y 50 Kg el valor del atributo.
Los atributos se pueden clasificar sobre la base de la frecuencia con que cambian sus
valores.
• Atributos estáticos. Atributos cuyos valores no cambian a lo largo de la vida de la
entidad.
• Atributo cuasi estáticos. Atributos cuyos valores cambian infrecuentemente en la vida de
la entidad (por ej., el estado civil de las personas).
• Atributos dinámicos. Atributos cuyos valores cambian frecuentemente (por ej., la
cantidad en existencia de un artículo).
Por otra parte los atributos se clasifican también por el tipo de información que contienen.
La información puede ser:
• De control. Es la información que permite controlar un grupo particular de entidades,
aplicar determinadas políticas a las mismas y proporcionar más detalles de ellas. Por
ejemplo: el número de identificación de un artículo; el tipo de artículo (fabricado,

*
Profesor Titular y Director del Departamento de Optimización y Control. Escuela de Ingeniería Industrial.
Facultad de Ciencias Exactas, Ingeniería y Agrimensura. Universidad Nacional de Rosario. Prohibida su
reproducción sin autorización del autor.  2012.
1
comprado, materia prima, etc.); la línea comercial a la que pertenece; la familia a la que
pertenece (por proceso de producción, por diseño, por manejo de las existencias, etc.); etc.
• Descriptiva. Información complementaria, que amplía la descripción de la entidad. Por
ejemplo: el nombre del artículo; el material; las medidas y las unidades de medida; el
precio; etc.
• De estado. Información que indica ciertas condiciones de la entidad. Por ejemplo: la
cantidad en existencia, la pedida, la comprometida para entregar; la cantidad en control de
la calidad; etc.
• De política. Información sobre las políticas de la empresa respecto de una entidad en
particular. Por ejemplo: producción por pedido; hasta agotar existencias; punto de pedido;
tamaño del lote; etc.
Los sistemas de información se refieren a una entidad específica mediante una clave. Una
clave es un atributo (o grupo de atributos) de una entidad que sirve para identificarla
unívocamente, dentro de algún dominio especificado de entidades. Las claves pueden ser:
• Clave simple. Un único atributo es suficiente como clave (por ej., el N° de DNI para las
personas).
• Clave compuesta. Cuando se necesitan dos o más atributos para identificar la entidad,
porque ninguno solo puede hacerlo (por ej., el “nombre de ciudad” puede repetirse en el
país y por lo tanto no puede ser clave para la entidad “ciudades”, pero sí puede serlo el par
de atributos “nombre de cuidad” y “provincia”.
Para que pueda ser utilizado como clave el atributo (o grupo de atributos) debe satisfacer
ciertas propiedades:
• Unicidad. Un dado valor de la clave debe corresponder a una y solo una entidad dentro del
dominio especificado; dos entidades diferentes dentro del domino tienen diferentes valores
de sus claves.
• Completitud. Existe un valor de la clave para cada entidad dentro del dominio
especificado.
• Persistencia. El mismo valor de la clave identifica una dada entidad a lo largo de toda su
vida. Esto implica que una clave es siempre un atributo estático.
Una entidad puede tener más de un atributo (o grupo de atributos) que satisfagan las
propiedades enunciadas para ser claves. En ese caso se debe elegir el atributo (o grupo) que se
utilizará como clave, que se llama clave primaria.
Por otra parte, en muchas aplicaciones ninguno de los atributos (o conjunto de atributos) de
la entidad reúne las condiciones necesarias para ser clave. En este caso la clave es creada o
asignada, es decir, es un atributo (o conjunto de atributos) que se agrega a la entidad. En esta
situación hay libertad para diseñar las claves de manera tal que satisfagan los requerimientos
para la identificación de las entidades y las de los sistemas de información.
Es interesante observar, además, que una entidad puede tener atributos que no reúnen las
condiciones para ser claves pero que son claves de otras entidades. Por ejemplo, en la entidad
“Personal” de una empresa, el atributo “Departamento” tiene un valor numérico (el N° de
departamento) que evidentemente no puede ser clave de esa entidad, pero es la clave de la
entidad “Departamentos” de la empresa.
Las claves son llamadas también códigos, concepto que precisaremos luego.
2 Clasificación y Codificación de Productos.  2012 R. Morán.
Ejemplo 1
La información sobre un artículo (la entidad) podría estar expresada como:
17580 Barra de acero SAE 1050, diámetro 10 mm, largo 6 m, importada, existencia 20
unidades, utilizar hasta agotar stock,…
Esta información se puede pensar como un registro genérico, independientemente de la
forma de tratamiento en las bases de datos, donde se muestran los atributos y sus valores para
el artículo considerado (Figura 1).

ARTÍCULO NOMBRE MATERIAL DIÁMETRO LARGO ORIGEN EXISTENCIA USO …


[mm] [m] [u]
17580 Barra Acero SAE 1050 10 6 Importado 20 Hasta agotar …
stock

Figura 1

El número 17580 es la clave o código que identifica unívocamente el artículo y no contiene


ninguna otra información. Es una clave creada expresamente para la identificación. Los
valores de los demás atributos suministran la información disponible sobre ese artículo. Los
atributos ARTÍCULO y ORIGEN proporcionan datos de control; NOMBRE, MATERIAL,
DIÁMETRO y LARGO son descriptivos; EXISTENCIA es de estado y USO de política.

Es claro que algunos atributos son estáticos como, por ejemplo, los atributos de control o
de descripción (el origen, el material, el diámetro, etc.). Si cambian los valores de estos
atributos se trata de otra entidad y debe tener otra clave. Otros son dinámicos, como el estado
(la cantidad en existencia) o un dato de política (el uso). Estos atributos pueden cambiar de
valores sin que cambie la entidad.
La clasificación es el agrupamiento sistemático de las entidades en clases definidas a partir
de características comunes. Por ejemplo, para los artículos una clasificación podría ser por
tipo de material (todos los artículos de Acero SAE 1050 constituirían una clase); otra
clasificación podría ser por tipo de política de utilización (los artículos declarados de
utilización hasta agotar stock constituirían una clase); etc. Cabe observar que es frecuente
encontrar el término clasificación utilizado para referirse tanto al proceso de identificación
como al posterior agrupamiento en clases, sin embargo son dos conceptos diferentes.
Los objetivos básicos de la identificación y clasificación son:
1. Individualizar unívocamente las entidades.
2. Facilitar la búsqueda, individual o por clases, de las entidades dentro del conjunto total de
ellas (dominio).
3. Permitir las permanentes reclasificaciones, por distintos criterios, que son necesarias
durante los procesos por los que pasa la entidad.
Para lograr estos objetivos se requiere un sistema de clasificación adecuado. Un ejemplo
de sistema de clasificación ampliamente conocido es la Clasificación Decimal Universal
(CDU), utilizada para la clasificación de libros en bibliotecas. Más delante veremos sistemas
de clasificación de aplicación en producción y logística.
Un buen sistema de clasificación debe cumplir con los siguientes requisitos básicos:

Clasificación y Codificación de Productos.  2012 R. Morán. 3


• Ser adecuado para los fines que se persiguen, es decir cubrir todos los casos previstos
como objetivos de la clasificación.
• Establecer reglas de clasificación, claras y precisas, a través de normas escritas.
• Tener capacidad para incorporar ampliaciones futuras.
• Ser lo más simple y de menor costo posible.
En estos sistemas se pueden distinguir dos aspectos: uno estático, asociado con la
identificación unívoca de los elementos para facilitar su búsqueda y localización; y otro
dinámico, referido a las permanentes reclasificaciones necesarias para el procesamiento de la
información sobre aquellos. Por lo tanto, para la elección del sistema se debe:
• Definir claramente el alcance de la clasificación.
• Conocer las entidades a ser clasificadas y sus atributos.
• Conocer las técnicas de clasificación.
Las permanentes reclasificaciones según distintos criterios, que son necesarias durante los
procesos logísticos y de producción, demandan gran flexibilidad del sistema de clasificación,
flexibilidad que se logra a través de la codificación.1 La codificación resulta así un
componente indisolublemente asociado de la clasificación. El concepto de código es entonces
más amplio que el de clave para la identificación de entidades. En lo que sigue veremos los
elementos fundamentales de la codificación necesarios para los sistemas de clasificación.

2 CODIFICACIÓN
¿Por qué es necesaria la codificación? El lenguaje corriente permite establecer una
correspondencia entre las entidades y sus atributos y las expresiones usuales. Pero esta
correspondencia no es siempre de empleo cómodo:
• Un concepto puede ser designado por varias expresiones diferentes.
• Una misma expresión puede dar lugar a varias interpretaciones.
• El lenguaje corriente es a menudo difuso.
La codificación suple estas insuficiencias del lenguaje corriente:
• Los códigos son concisos.
• Los códigos son precisos: a una entidad le corresponde un único código, a un código le
corresponde una única entidad (o ninguna si el código está vacante).
• La codificación y decodificación son seguras.
Retomemos el Ejemplo 1. Si bien el artículo ya está identificado por una clave (su número
de pieza), los valores de varios atributos están expresados en forma de texto, lo que puede
causar dificultades. Así por ejemplo, si se quiere clasificar los artículos por tipo de material la
expresión “Acero SAE 1050” es clara para el lenguaje corriente pero puede no serlo para la

1
El concepto de codificación es profundamente estudiado en la Teoría de la Información y Codificación,
fundamentalmente para resolver el problema de “transmitir mensajes confiables por canales no confiables” que
aparece en telecomunicaciones. Sin embargo el enfoque que nos interesa aquí –si bien está relacionado– es
distinto: se trata de la identificación de entidades, y de sus atributos, de forma concisa, precisa y segura para
facilitar su clasificación.

4 Clasificación y Codificación de Productos.  2012 R. Morán.


clasificación automática. En efecto, bastará que en dos artículos diferentes del mismo material
esta expresión tenga alguna diferencia, por insignificante que sea (por ejemplo “Acero SAE
1050” en uno y “acero SAE 1050” en otro) para que no sean identificados como el mismo
material. Estos problemas se pueden evitar asignado un código al material. Supongamos, por
ejemplo, que con dos dígitos decimales (de 00 a 99) podamos codificar todos los materiales
necesarios, y que el código 54 corresponda a “Acero SAE 1050”. Todos los artículos de este
material tendrán el mismo código 54 como valor del atributo, que es mucho más conciso y
preciso. Análogamente, la información de uso podría codificarse: si un dígito decimal es
suficiente para todas las políticas de uso posibles (0 o en blanco: sin restricción, 1: solo por
pedido, 2: hasta agotar stock,…), los valores de este atributo podrían codificarse con evidente
ventaja en concisión, precisión y seguridad. Sin embargo, se debe observar que es necesario
disponer ahora, en cada caso, de una tabla o diccionario que establezca la relación entre los
códigos asignados y los correspondientes valores.
El código de una entidad es su identificación de cabecera, una serie de caracteres que
permiten su fácil búsqueda y localización en listados y bases de datos. Es muy importante
tener en cuenta siempre que la estructura del código depende de los objetivos que se
pretendan alcanzar. Algunos ejemplos de diferentes objetivos para la codificación de
productos son los siguientes:
• Identificar los artículos en los planos. En este caso el código puede ser un simple número
de pieza.
• Identificar los artículos en el nomenclador (lista de materiales, catálogo de productos).
Podría ser necesario un código que permita definir familias homogéneas desde el punto de
vista de su compra.
• Identificar los artículos en los inventarios. El código debería permitir determinar su
ubicación física (número de almacén, estantería, contenedor, etc.).
• Identificar los materiales y artículos a lo largo del proceso de producción. Podría ser útil un
código que permita identificar la orden de fabricación y los componentes a fabricar o
armar.
• Identificar los productos terminados. El código debería adaptarse a los requerimientos de
almacenaje y distribución de los mismos.
• Identificar artículos y materiales no directos de producción, como maquinaria, repuestos,
etc. En principio podría parecer suficiente una simple numeración correlativa, sin embargo
un análisis más profundo de los requerimientos de clasificación podría conducir a códigos
más complejos.
• La Tecnología de Grupos es un sistema de racionalización de la producción que se basa en
explotar las similitudes de diseño y de fabricación de las piezas agrupándolas en familias.
Para realizar esta clasificación en forma automática el código debe permitir identificar las
características en las que se basa el agrupamiento.
• Identificar productos a lo largo de toda la cadena logística, con individualización del
fabricante, forma de embalaje, lote, fecha de fabricación, etc. El código requiere
información complementaria de la del artículo en sí.
Estos ejemplos ponen de manifiesto tanto la importancia como la complejidad del
problema de establecer una codificación eficaz y eficiente de las entidades, dada la
multiplicidad de objetivos que se pueden perseguir dentro de una misma empresa. Los dos

Clasificación y Codificación de Productos.  2012 R. Morán. 5


últimos casos son de particular importancia y los trataremos especialmente en los puntos
siguientes.
Cabe destacar desde ya la importancia de una buena elección del sistema de codificación.
Una vez adoptado un sistema el mismo es utilizado en prácticamente todas las áreas de la
empresa en los distintos sistemas de información y alcanza a clientes y proveedores a través
de catálogos y listados. Además los usuarios se acostumbran a la codificación y llegan a
memorizar los códigos de uso más frecuente. Por estas razones, cuando se revela que el
sistema de codificación en uso es inadecuado para los objetivos perseguidos y se lo debe
reemplazar, siempre es necesario mantener el viejo sistema para referencia de los distintos
usuarios a través de tablas de equivalencias, con la complejidad que todo esto significa.
El cambio de sistema de codificación es siempre muy costoso. Por lo tanto, la adopción de
un sistema de codificación debe ser precedida de un profundo análisis de los requerimientos
en función de los objetivos perseguidos, para asegurar que el sistema elegido tenga alta
probabilidad de perdurar en el tiempo. Esto también exige que esté claramente definida dentro
de la empresa la responsabilidad por el establecimiento y mantenimiento del sistema de
codificación.

2.1 Definiciones
El conjunto de entidades (artículos, conceptos, etc.) a codificar es el nomenclador o
catálogo.
Un código es una secuencia de caracteres que identifica unívocamente un elemento del
nomenclador (o ninguno si la secuencia no es utilizada).
El conjunto de caracteres o símbolos con los que se construyen los códigos es el alfabeto.
En la codificación de artículos el alfabeto es normalmente el conjunto de los dígitos
numéricos, el de las letras, el de los dígitos y las letras (caracteres alfanuméricos) o estos más
algunos caracteres especiales.
Un código es numérico si el correspondiente alfabeto está formado únicamente por los 10
dígitos decimales; es alfabético si únicamente utiliza letras o estas y algunos caracteres
especiales, como el guión, la barra, el asterisco, etc.; y es alfanumérico si el alfabeto es el
conjunto de los dígitos decimales y las letras, incluidos algunos caracteres especiales.
Un código es entonces una n-upla de símbolos del alfabeto, donde n es la longitud del
código y que puede ser variable. Por ejemplo, en la Clasificación Decimal Universal (CDU)
ya mencionada, los códigos son de longitud variable. Sin embargo, desde el punto de vista
práctico, para la codificación de artículos en la industria se prefiere que la longitud de los
códigos sea fija. Cuando la longitud es fija se la denomina también dimensión del código.
En general, un sistema de codificación o, simplemente, una codificación 2 es una
aplicación inyectiva del conjunto nomenclador en el conjunto de las n-uplas del alfabeto (n
cualquiera y variable), puesto que dos elementos distintos no deben tener el mismo código,
pero puede haber n-uplas del alfabeto no asignadas a ningún elemento, es decir se deben
satisfacer las condiciones de unicidad y completitud de los códigos. Desde el punto de vista
práctico, sin embargo, la aplicación es muchas veces biyectiva.

2
En la Teoría de la Información y Codificación se llama “código” lo que aquí hemos denominado “sistema de
codificación” o “codificación”. Sin embargo hemos preferido esta denominación porque, en el caso de artículos
o productos, el término código está ampliamente difundido en el lenguaje corriente para referirse a la
identificación del artículo o de valores de sus atributos.
6 Clasificación y Codificación de Productos.  2012 R. Morán.
La potencialidad o capacidad (teórica) de un sistema de codificación es la cantidad
máxima de elementos que se pueden codificar con él. Por ejemplo, en una codificación con
códigos de longitud fija de cinco dígitos decimales (de 00000 a 99999) se tiene una
potencialidad de 105 = 100000. La potencialidad efectiva es frecuentemente menor debido a
que, en general, siempre hay restricciones que hacen que algunos códigos no sean asignados.
El grado de saturación del sistema de codificación es la relación entre la cantidad de
elementos codificados y la potencialidad. Por ejemplo, si una empresa comercializa 12000
artículos distintos y los quiere codificar con un código numérico de longitud fija, los códigos
deberán tener como mínimo cinco dígitos (de 00000 a 99999), cuya potencialidad es 100000.
El grado de saturación resulta: 12000 / 100000 = 0,12 (12 %).
La dimensión del código está determinada por las necesidades mínimas (dadas por la
cantidad total de elementos por codificar), la futura expansión prevista y la facilidad de uso.
En general debe fijarse de manera que la saturación inicial sea baja (menor al 20 %) para que
el sistema tenga capacidad de crecimiento.
Los códigos alfanuméricos tienen mayor potencialidad que los numéricos, para una misma
dimensión, pero deben diferenciarse claramente dos casos:
a) Códigos en los que tanto los caracteres alfabéticos como los numéricos son los “dígitos” de
un sistema de numeración. Por ejemplo, considerando únicamente las letras mayúsculas y
descartando las letras I, O y Q, porque se pueden confundir con los números 1 y 0, y la Ñ,
porque no se puede representar en algunos sistemas, quedan 23 letras y los 10 dígitos
numéricos. Luego los 33 caracteres {0, 1,…, 9, A,…, H, J,…, N, P, R,…, Z} pueden ser
considerados como los símbolos de un sistema de numeración de base 33. Para una
dimensión n la potencialidad de este código es 33n, mientras que para un código numérico
sería 10n. Por ejemplo, el código 8A6X equivale al número 8 × 333 + 10 × 332 + 6 × 331 +
30 × 330 = 298614 en sistema decimal.
Los códigos con esta estructura son muy complejos y raramente utilizados. A veces se
recurre a ellos como expansión de uno numérico que ha llegado a su total saturación, pero en
este caso es preferible analizar cuidadosamente los requerimientos del sistema y pasar a una
nueva codificación numérica. Por otra parte, en estos códigos es posible que aparezcan, por
azar, nombres propios (por ejemplos marcas) que podrían causar confusiones, y hasta palabras
desagradables que obviamente se querrían evitar, todo lo cual requeriría controles especiales
que aumentarían todavía más la complejidad.
b) Códigos esencialmente numéricos en los que se utilizan caracteres alfabéticos con algún
significado especial, casi siempre por razones mnemotécnicas y también de concisión. Por
ejemplo, si en un código las líneas de productos se identifican con letras mayúsculas, se
pueden representar 23 líneas con un solo carácter en lugar de las 10 que se tendrían con un
dígito numérico. Este caso aparece con mucha frecuencia en la práctica.
Como regla general, los códigos numéricos son siempre preferibles a los alfanuméricos.
Cuando son cortos (digamos, de no más de seis dígitos) los usuarios pueden memorizarlos
con el uso.
La codificación se materializa a través de un diccionario que establece la correspondencia
entre los elementos del nomenclador y los códigos que los identifican. Es claro que un código
no tiene real sentido hasta que no sea interpretado (esto es, decodificado), es decir hasta que
no se encuentre el concepto relacionado en el diccionario.
En resumen, podemos decir que codificar es:

Clasificación y Codificación de Productos.  2012 R. Morán. 7


1. Establecer el nomenclador de elementos por codificar.
2. Definir el alfabeto y el conjunto de códigos.
3. Establecer la correspondencia entre elementos del nomenclador y códigos, es decir un
diccionario.
La estructura de los códigos puede ser desde un simple número de orden correlativo, sin
ninguna significación, hasta una serie de caracteres, o de grupos de caracteres, cada uno de
ellos con un determinado significado. El grado de significación contenido en los códigos es
una característica muy importante que marca diferencias fundamentales. Desde este punto de
vista se los puede clasificar en tres tipos:
• Códigos asignados o no significativos. El código es totalmente independiente de los
atributos del artículo codificado, identifica el artículo como un todo. Es el caso, muy
utilizado en la práctica, de las claves creadas. Por ejemplo, un número asignado en forma
secuencial a los artículos.
• Códigos generados o significativos. El código se genera en función de los atributos. Se
incorpora la codificación de los atributos que sean necesarios para las distintas
clasificaciones, en la estructura del código del artículo.
En general los códigos asignados son más cortos que los significativos. Para reducir la
dimensión de los significativos se debe recurrir a alfabetos con mayor número de
caracteres; el óptimo se tendría cuando cada atributo se pueda codificar con un solo
carácter.
• Códigos mixtos. Combinan las características de los dos anteriores, es decir tienen partes
significativas y partes no significativas. Esta alternativa es muy utilizada en las
aplicaciones prácticas.
Veamos las principales características de estos tres tipos de códigos.

2.2 Códigos asignados (o no significativos)


La codificación más simple consiste en fijar una correspondencia arbitraria entre los
artículos y los códigos. Estos códigos se llaman asignados o no significativos, y son de
longitud fija, eligiéndolos con el número apropiado de caracteres. El código del Ejemplo 1
corresponde a este tipo.
Dado que el código no contiene ninguna información sobre los atributos, para las
clasificaciones que sean necesarias los atributos correspondientes se deberán codificar
independientemente. Los códigos de estos atributos también serán asignaciones no
significativas. Por lo tanto, por medio del código no se pueden conocer los atributos, es decir
el código no permite la decodificación directa; se debe recuperar primero la información
necesaria sobre el artículo y, luego, con los códigos de los atributos que interesan, sus
respectivos valores.
El conocimiento de las propiedades descriptivas (atributos) del artículo no facilita la
codificación, y el conocimiento del código no aporta ninguna información sobre el artículo en
tanto no se haya consultado el diccionario.
Estos códigos son, en general, secuenciales en el sentido de que se asignan en forma
consecutiva dentro de un sistema de numeración cualquiera. La forma básica de asignación es
la secuencial pura, en la que se asignan los códigos en forma consecutiva a todos los
artículos dentro de un determinado sistema de numeración. La correspondencia puede

8 Clasificación y Codificación de Productos.  2012 R. Morán.


establecerse tomando los artículos al azar o, lo que es equivalente, en el orden en que van
apareciendo. Un ejemplo típico es el número de Documento Nacional de Identidad (DNI),
cuya potencialidad es de 108.
En algunos casos los artículos se ordenan con algún criterio antes de establecer la
correspondencia, pero como los artículos nuevos se agregarán al final, en general estos ya no
verificarán la clasificación previa. Para mantener alguna forma de clasificación previa se
pueden introducir algunas variantes como las siguientes:

a) Asignación con ley de formación


Se asignan los códigos dentro de un sistema de numeración en forma consecutiva pero
siguiendo una cierta ley de formación. Por ejemplo, supongamos que en la identificación de
las personas se asignaran números consecutivos pero de la siguiente manera: los impares para
los varones y los pares para las mujeres. Otro ejemplo típico es la asignación de los números
con intervalos constantes (por ejemplo, de 10 en 10, con lo que el grado de saturación inicial
sería 10 %). En este caso la densidad de la codificación (intervalos de códigos no asignados)
es constante. La ventaja es que permite intercalar artículos nuevos de manera de satisfacer
algún criterio de clasificación.

b) Asignación por intervalos


Se pueden clasificar los artículos en un cierto orden para formar grupos (por ejemplo por
tipo de artículo), y luego asignar a cada grupo un intervalo de códigos consecutivos. Por
ejemplo, el intervalo de 0000 a 0999 para la marca A, de 1000 a 1999 para la marca B, etc.
Dentro de cada intervalo la asignación es secuencial. La amplitud de los intervalos debe
fijarse de manera de tener un determinado grado de saturación inicial, y por lo tanto puede no
ser igual para todos los grupos.

c) Asignación por grupos de codificación


Hay casos en los que la responsabilidad de la codificación está a cargo de dos o más
grupos de trabajo descentralizados y es fundamental evitar duplicaciones. Entonces se puede
asignar un intervalo de códigos a cada grupo. Por ejemplo se le asignan los números de 00000
a 49999 a un grupo y desde 50000 a 99999 al otro.
Es importante observar que en todos estos últimos casos el código tiene una cierta
significación por cuanto queda identificada alguna característica de los artículos en forma
genérica (el sexo, la marca, el grupo de codificación, etc.), pero el código no se genera a partir
de los atributos.

2.3 Códigos generados (o significativos)


El código se genera a partir de los atributos. La codificación de los atributos necesarios
para las distintas clasificaciones se incorpora a la estructura del código del artículo. Se dice
entonces que el código es significativo o generado.
La estructura consiste en una secuencia de caracteres, o de grupos de caracteres, cada uno
de los cuales tiene un significado determinado. Si indicamos con X un grupo genérico
(formado por uno o varios caracteres) la estructura se puede representar como en la Figura 2
(página siguiente).

Clasificación y Codificación de Productos.  2012 R. Morán. 9


El primer grupo es llamado fundamental porque en general codifica el atributo de mayor
orden en la clasificación, por ejemplo las líneas que agrupan los artículos. Los demás son los
subgrupos porque codifican atributos de
menor orden. Código: XXX … X
Estos códigos se pueden decodificar en el
sentido de que, a partir del código del Subgrupo de kº orden
artículo, es posible determinar sus atributos
Subgrupo de 2º orden
y, en algunos casos, hasta rangos de valores
de los mismos. Subgrupo de 1er orden

Se podría pensar entonces en utilizar los Grupo fundamental


valores de los atributos directamente para
formar el código, que sería totalmente Figura 2
descriptivo y no necesitaría decodificación.
Esto es aplicable únicamente en casos muy simples, con pocos artículos y pocos atributos
como cuando se trabaja con marcas y modelos muy conocidos.
En general, utilizar directamente los valores de los atributos es muy engorroso, complejo y
hasta imposible por las ambigüedades que se podrían presentar. Por lo tanto, los atributos
deben ser convenientemente codificados para integrar el código del artículo. Lo más usual es
que los códigos de los atributos sean códigos asignados. Por ejemplo, si un subgrupo
corresponde al material (atributo) del artículo, a los distintos materiales se les asigna un
número, que es el código del material. Es decir, el código del artículo es significativo porque
se estructura con los códigos de los atributos, pero estos individualmente son asignados. Es
muy importante distinguir esta diferencia.
En estos códigos la determinación de la dimensión del código requiere un cuidadoso
análisis porque se debe tener en cuenta la potencialidad de los distintos grupos. En este
sentido es interesante observar que hay muchas aplicaciones en las que los grupos tienen
distintas longitudes, es decir distinta potencialidad, pero de manera tal que la longitud total
del código es fija.
Dado que el código está formado por los códigos de los atributos elegidos para la
clasificación, es posible que dos artículos distintos coincidan en estos atributos y por lo tanto
resultaría para ellos el mismo código (la diferencia podría estar en atributos que no forman
parte del código). Es entonces indispensable completar la parte significativa de los códigos
con números asignados para diferenciar los artículos, resultando códigos mixtos. Esta
situación se presenta frecuentemente en la práctica.
En estos códigos, cuando los subgrupos están formados por más de un carácter, se los suele
separar con puntos o guiones para facilitar la lectura e identificación de los mismos por parte
de los usuarios, pero esos separadores no forman parte de la estructura del código.
En los códigos generados se distinguen dos estructuras básicas, de cadena y jerárquica, y
una combinación de ambas llamada híbrida.

2.3.1 Estructura de cadena


La interpretación de cada grupo en la secuencia es fija, totalmente independiente del valor
del precedente. Se los llama códigos cadena (o de representación fija o de lógica fija) y
también policódigos. Su principal ventaja es la facilidad en la codificación. Como desventajas
se tiene que, en general, son más largos que los jerárquicos para la misma información y la
comparación de artículos a través de los códigos es más dificultosa.

10 Clasificación y Codificación de Productos.  2012 R. Morán.


Ejemplo 2
Supongamos una empresa comercializadora de repuestos de motor que utiliza un código
definido de la siguiente forma:
• Grupo fundamental. Líneas de productos (camisas de cilindros, pistones, aros de pistón,
etc.): una letra mayúscula (A a Z).
• Subgrupo de 1er orden. Modelo de motor, independiente de la línea: tres dígitos (000 a
999).
• Subgrupo de 2º orden. Proveedor, independiente de la marca y el modelo: dos dígitos
(00 a 99).
Así el código A13726 identifica el artículo de la línea A: Aros de pistón; modelo 137:
motor KB8; del proveedor 26: Aros ABC S.A. Análogamente, el código C13742 podría ser el
de las camisas de cilindro (línea C), para el mismo motor, fabricadas por el proveedor 42.

2.3.2 Estructura jerárquica


La interpretación de cada grupo sucesivo depende del valor del precedente. Son llamados
códigos jerárquicos (o de representación variable o de lógica variable) y también
monocódigos. La principal ventaja del esquema jerárquico es que para una misma longitud
total el código contiene más información que el de cadena.
Además permite utilizar partes del código para obtener información en diferentes niveles
de la estructura. Por ejemplo, es fácil obtener el conjunto de los artículos tales que ciertos
grupos (atributos) tengan determinados códigos. Sin embargo estos códigos son más difíciles
de construir y de modificar que los de cadena.

Ejemplo 3
Codificación Decimal pura
Todo el conjunto de elementos a codificar se divide en 10 clases o grupos principales que
se identifican por el primer dígito del código de 0 a 9 (grupo fundamental). Cada una de estas
clases se subdivide a su vez en 10 subclases o subgrupos identificados por el segundo dígito
del código de 0 a 9 (subgrupo de 1er orden), y así sucesivamente.
Las principales ventajas son la simplicidad y uniformidad; los subgrupos son fáciles de
identificar. La principal desventaja es la rigidez, todos los grupos tienen la misma cantidad de
elementos. Las 10 posiciones disponibles dentro de cada grupo pueden ser insuficientes para
ciertos criterios de clasificación o bien excesivas, con lo que es difícil alcanzar una buena
homogeneidad. Esta última observación lleva a códigos en los que cada subgrupo se puede
codificar con más de un dígito. Por ejemplo: un dígito para el grupo fundamental y dos dígitos
para el primer subgrupo, con lo que cada categoría principal se puede subdividir en cien
subcategorías, etc. El código deja de ser estrictamente decimal.

Un ejemplo clásico de clasificación decimal es el siguiente.

Ejemplo 4
Codificación Decimal Universal (CDU)
Es la conocida clasificación utilizada en las bibliotecas. Se basa en la Clasificación
Decimal de Dewey propuesta en 1873 por Melvil Dewey en su tesis. Divide el conjunto del
Clasificación y Codificación de Productos.  2012 R. Morán. 11
saber en 9 clases principales, indicadas con los dígitos 1 a 9 (el 4 vacante), y el 0 para
generalidades:
0 Generalidades. Ciencia y conocimiento.
1 Filosofía. Psicología.
2 Religión. Teología.
3 Ciencias Sociales.
4 (Vacante).
5 Matemática y Ciencias Naturales.
6 Ciencias Aplicadas. Medicina. Tecnología.
7 Bellas Artes. Juegos. Espectáculos. Deportes.
8 Lingüística. Filología. Literatura.
9 Geografía. Biografías. Historia.
Este primer dígito es el grupo fundamental. El segundo dígito, subgrupo de 1er orden,
indica la subdivisión de cada una de estas clases en 9 categorías y así sucesivamente. El
significado de cada subgrupo depende del significado del subgrupo de orden superior. Para
facilitar la lectura los dígitos se separan en grupos de tres por medio de puntos. El código
resulta de longitud variable aunque cada subgrupo es de longitud fija (un dígito). Por ejemplo:
6 Ciencias aplicadas. Medicina. Tecnología.
62 Ingeniería. Tecnología en general.
621 Ingeniería mecánica en general. Tecnología nuclear. Electrotecnia. Maquinaria.
621.3 Ingeniería Eléctrica. Electrotecnia.
621.39 Telecomunicaciones. Telegrafía. Telefonía. Radiocomunicación. Tecnología y
equipo del video. Telecontrol.
621.396 Aparatos y métodos de radiocomunicación. Radiotecnia.
621.396.7 Estaciones emisoras y receptoras de radio.
Es claro que todos los libros sobre un mismo tema tendrán la misma codificación decimal.
Por lo tanto, para diferenciarlos se les agrega una parte no significativa generalmente formada
por las iniciales del autor y un número secuencial.
Esta codificación es básicamente jerárquica, pero el sistema completo incluye un conjunto
de caracteres especiales, que permiten expresar distintas relaciones y situaciones particulares,
incorporando la estructura de cadena. Esto le da al código muchas más posibilidades de las
que surgen de la simple estructura decimal, transformándose en híbrido. No entraremos aquí
en estos detalles porque esta codificación no es aplicable a productos de la industria.3

2.3.3 Códigos híbridos


Son los códigos que combinan la estructura jerárquica con la de cadena. Por ejemplo, un
grupo fundamental con un subgrupo subordinado (dependiente), seguido de otros subgrupos
en cadena. Son de gran utilidad práctica porque explotan las ventajas de los dos sistemas y
aparecen en todo tipo de aplicaciones. Los veremos en la clasificación de piezas para diseño y
producción y en la identificación de productos comerciales en las cadenas logísticas.

3
El lector interesado puede recurrir a la bibliografía especializada y al ente rector del sistema: Universal
Decimal Classification Consortium (http://www.udcc.org/).
12 Clasificación y Codificación de Productos.  2012 R. Morán.
2.4 Claves de control
En el procesamiento de la información se pueden alterar los códigos de los artículos por
errores: en el ingreso manual de los datos, en la lectura automática, de transmisión, etc. Estos
errores pueden ser particularmente graves cuando implican la identificación de otro artículo
distinto del que se pretendía identificar.
Los códigos de barras, que veremos más adelante, tienen por finalidad fundamental
aumentar la velocidad de lectura y reducir sustancialmente los errores de trascripción. No
obstante, dado que siempre pueden producirse errores, es necesario controlar los códigos. La
forma más común de control es a través del agregado de una clave de control al código, que
se calcula a partir de los caracteres que componen el propio código con un determinado
algoritmo.
La clave de control resume de alguna manera la información del código y pasa a formar
parte de este. Esta clave es calculada automáticamente cuando se genera el código y agregada
al final del mismo. Cada vez que el código (con clave) se ingresa, recupera o transmite, se
verifica la clave; esto es, se la recalcula aplicando el algoritmo a los caracteres del código (sin
la clave) y se la compara con la recibida, si no coinciden se está en presencia de un error.
Se pretende que la clave de control sea condensada, es decir de longitud mínima, y por lo
tanto no contendrá toda la información del código. Esto significa que varios códigos distintos
pueden tener la misma clave de control. En consecuencia, si una clave de control resulta
válida no quiere decir que el código sea válido, solamente es altamente probable que lo sea.
Por el contrario, si una clave resulta no válida entonces el conjunto código + clave es inválido.
Se debe distinguir entre códigos detectores y códigos autocorrectores. Las claves de
control que estamos tratando son claves detectoras: detectan los errores más probables pero no
dicen cuál es error; para encontrar y corregir el error se debe revisar el código. Los códigos
autocorrectores detectan y corrigen (hasta cierto punto) los errores, como veremos luego.
Indicaremos con δ la clave de control en forma genérica. Frecuentemente la clave consta
de un solo carácter alfanumérico, denominado carácter de control (CC) o carácter de
verificación, o de un solo dígito numérico, llamado dígito de control (DC) o dígito de
verificación.
Puesto que con estas restricciones una clave no controla un código de manera completa, se
la debe elegir de forma que detecte los errores más frecuentes. Los errores más frecuentes son
los de trascripción:
a) Error sobre un carácter o dígito: por ejemplo 2343 en lugar de 2843.
b) Permutación de dos caracteres o dígitos consecutivos, que llamaremos transposición
simple. Por ejemplo 2834 en lugar de 2843.
c) Permutación de dos dígitos no consecutivos, llamada transposición doble. Por ejemplo
2348 en lugar de 2843.
d) Errores específicos del código utilizado: por ejemplo permutación del número de año y
de mes en un código que contiene fechas.
Las claves deben ser concebidas de manera de controlar prioritariamente estos errores.

Clasificación y Codificación de Productos.  2012 R. Morán. 13


2.4.1 Claves “módulo N”
El tipo de clave más utilizado es el llamado “módulo N”. Para controlar el conjunto de
dígitos del código en sí mismo (errores sobre los dígitos) y en el orden (permutaciones), se
debe elegir una función de esos dígitos que le haga jugar a cada uno de ellos un rol diferente.
La función más simple de este tipo es la función lineal. Sean ak , ak–1, … , a1 los dígitos del
código (donde a1 representa las unidades, a2 las decenas,…, ak el de mayor significación), y
sean wk, wk–1,…, w1 coeficientes de ponderación (enteros) apropiados. La clave se calcula
como:
S = ak wk + ak −1wk −1 + L + a2 w2 + a1w1 (1)
Como el número entero S puede ser grande se busca un procedimiento para reducirlo, sin
que pierda demasiado de su valor de control. El procedimiento más utilizado es dividir el
número S por un número N entero positivo, fijo y convenientemente elegido, denominado
módulo, y tomar el resto de la división, R, para determinar la clave de control. Si indicamos
con Q el cociente entero de S por N, entonces R es tal que
S = N ×Q + R (2)
y se dice que “S es congruente con R módulo N”, que también se expresa “S módulo N = R”.
Como clave de control se toma directamente δ = R o bien δ = N – R.
Bajo estas consideraciones, para definir un sistema de control se debe elegir el módulo N y
los coeficientes de ponderación wj . El análisis aritmético del problema muestra que conviene
elegir para estos valores números primos y además que los wj sean diferentes entre sí.
Si el código es alfanumérico, los “dígitos” aj pueden ser letras. En este caso, para el cálculo
de S se deben tomar los equivalentes decimales de las letras. Por ejemplo, si el alfabeto es
{0, 1,…, 9, A, B,…, Z} entonces A es equivalente a 10, B a 11, etc. Este es otro problema en
el que se manifiesta la complejidad de los códigos alfanuméricos. En lo que sigue tomaremos
como ejemplos únicamente códigos numéricos.
Elección de N. Dado que 0 ≤ R ≤ N – 1, es evidente que la clave será tanto más potente
cuanto más grande sea N, en el sentido de que habrá más claves diferentes (número de clases
residuales más grande),4 pero para que sea breve (un solo carácter o dígito si fuera posible)
debe ser N lo más pequeño posible. El valor que se adopte será entonces una solución de
compromiso entre potencia y brevedad.
Por ejemplo, si se consideran caracteres alfabéticos para la clave y se descartan las letras
I, O, Q y Ñ (la I porque se puede confundir con el 1, la O y la Q con el 0 y la Ñ porque puede
no ser representable en el sistema informático), el módulo puede tomar el valor N = 23, que es
un número primo. Si se toma como clave el resto, es decir δ = R, entonces si R = 0 la clave es
δ = A, si R = 1 es δ = B,…, si R = 22 es δ = Z. Para tener una clave de un solo dígito
numérico debe ser N = 10, pero no es primo.

4
Dos números enteros S y S′ se llaman congruentes módulo N, y se indica S ≡ S′ mod. N, cuando divididos por
N dan el mismo resto. Es decir, si S = N × Q + R y S′ = N × Q′ + R entonces S ≡ S′ mod. N. Dos enteros
congruentes no se pueden identificar por el resto que se obtiene al dividirlos por el módulo N. Entonces se los
puede clasificar por este resto, quedando así definidas las clases residuales respecto del módulo N. La clase
residual R es la clase de los enteros que cumplen S = N × Q + R para cualquier Q. Dos enteros congruentes
pertenecen a la misma clase y son considerados como diferentes representantes de la misma clase o resto. Como
R = 0, 1, 2,…, N – 1, hay N clases residuales. Por ejemplo, respecto del módulo N = 2 hay únicamente dos clases
residuales: resto 0 y resto 1; son los números pares y los impares.
14 Clasificación y Codificación de Productos.  2012 R. Morán.
Elección de las ponderaciones. Hay diversas formas de elegir estos coeficientes. La más
simple para códigos numéricos es: wj = 10 j–1 (j = 1, 2,…, k). El valor de S es evidentemente el
mismo valor del código. En este caso si bien son todos diferentes no son todos números
primos. En general, para simplificar la asignación de estos coeficientes, no se cumple que
sean todos diferentes ni números primos.

Ejemplo 5
Sea el código 112978 y supongamos N = 23 (el carácter de control será una de las 23 letras
mencionadas) con las ponderaciones wj = 10 j–1 (j = 1, 2,…, k). Entonces:
Código: 1 1 2 9 7 8
Ponderaciones: 100000 10000 1000 100 10 1
Productos: 100000 10000 2000 900 70 8
Suma: S= 112978
Módulo: N= 23
Cociente: Q= 112978 / 23 = 4912 Resto: R=2
Es decir, S módulo 23 = 2. Como R = 2 la clave es δ = C. El código con clave será escrito
como 112978C. A veces, para facilitar la lectura, se separa la clave por un guión o una barra:
112978-C o 112978/C, pero estos caracteres no forman parte de los códigos.

Ejemplo 6
Supongamos ahora el mismo código, pero con N = 10 y las ponderaciones wj = j
(j = 1, 2,…, k). Resulta:
Código: 1 1 2 9 7 8
Ponderaciones: 6 5 4 3 2 1
Productos: 6 5 8 27 14 8
Suma: S = 6 + 5 + 8 + 27 + 14 + 8 = 68
Módulo: N = 10
Cociente: Q = 68 / 10 = 6 Resto: R=8
Es decir, S módulo 10 = 8. Como R = 8 el dígito de control es δ = 8. El código con clave
será escrito como 1129788.

Este dígito de control no detecta todos los errores de transposición dobles. Por ejemplo, en
el código 419003 con las ponderaciones 6, 5, 4, 3, 2, 1 el dígito de control resulta 8. Si se
permutan el 4 y el 9, el código 914003 tiene también dígito de control 8 y el error no es
detectado.
Las formas más utilizadas de dígitos de control para los códigos numéricos son las
siguientes.

Claves de control módulo 11


Las ponderaciones se toman:
w1 = w7 = w13 … = 2
w2 = w8 = w14 … = 3
w3 = w9 = w15 … = 4

Clasificación y Codificación de Productos.  2012 R. Morán. 15


w4 = w10 = w16 … = 5
w5 = w11 = w17 … = 6
w6 = w12 = w18 … = 7
El valor de S se divide por el módulo N = 11 (que es un número primo) y la clave es
δ = N – R.

Ejemplo 7
Sea el código 61938425. Entonces:
Código: 6 1 9 3 8 4 2 5
Ponderaciones: 3 2 7 6 5 4 3 2
Productos: 18 2 63 18 40 16 6 10
Suma: S = 18 + 2 + 63 + 18 + 40 + 16 + 6 + 10 = 173
Módulo: N = 11
Cociente: Q = 173 / 11 = 15 Resto: R=8
Como R = 8 el dígito de control es δ = N – R = 11 – 8 = 3. El código con clave es
619384253.

Este método detecta todos los errores de números y las transposiciones simples y dobles,
que representan el 99 % de los errores de trascripción, pero δ puede resultar de dos cifras. En
efecto, si el resto de la división es 0 o 1, δ será 11 o 10 respectivamente.
Se presentan entonces las siguientes alternativas:
i) Trabajar con una clave de dos cifras.
ii) Mantener la clave de un solo carácter usando letras mayúsculas para estos casos
especiales (por ejemplo δ = A para representar el 10, y δ = B para el 11).
iii) Teniendo en cuenta que nunca resulta una clave igual a cero, dado que 0 ≤ R ≤ 10 y por lo
tanto 1 ≤ N – R ≤ 10, se puede hacer lo siguiente: Si N – R = 0 entonces δ = 0; si N –
R > 0 entonces δ = N – R. De esta forma la única clave de dos cifras es δ = 10 y para ella
se utiliza una letra, por ejemplo δ = X, de manera que la clave es de un solo carácter.
Esta última forma es muy utilizada.

Ejemplo 8
Consideremos nuevamente el código 32714.
Código: 3 2 7 1 4
Ponderaciones: 6 5 4 3 2
Productos: 18 10 28 3 8
Suma: S = 18 + 10 + 28 + 3 + 8 = 67
Módulo: N = 11
Cociente: Q = 67 / 11 = 6 Resto: R=1
Como R = 1 la clave es δ = N – R = 11 – 1 = 10 que se representa por X. El código
completo resulta 23714X.

16 Clasificación y Codificación de Productos.  2012 R. Morán.


El código ISBN original de 10 dígitos utilizaba esta clave módulo 11, pero con
ponderaciones de 2 a 10.

Ejemplo 9
Código ISBN: 0 1 3 8 5 2 3 8 6
Ponderaciones: 10 9 8 7 6 5 4 3 2
Productos: 0 9 24 56 30 10 12 24 12
Suma: S = 0 + 9 + 24 + 56 + 30 + 10 + 12 + 24 + 12 = 177
Módulo: N = 11
Cociente: Q = 177 / 11 = 16 Resto: R=1
Como R = 1 el dígito de control es δ = N – R = 11 – 1 = 10 que se representa por X. El
código ISBN con clave es 0-13-852386-X.

Más adelante veremos que este código ha pasado a formar parte del estándar GTIN-13.

Claves de control módulo 10


Para evitar dígitos de verificación no numéricos se suele tomar N = 10 y utilizar distintas
variantes para las ponderaciones.
Caso 1. Sean las siguientes ponderaciones:
w1 = w3 = … = w2k+1 = 2
w2 = w4 = … = w2k = 1
El valor de S no es la suma de los productos aj × wj , como indica la (1), sino la suma de los
dígitos de estos productos. Como dígito de control se toma el complemento a N de R si R ≠ 0
y directamente R si es nulo. Esto es: Si R ≠ 0 entonces δ = N – R; si R = 0, entonces δ = 0.

Ejemplo 10
Para el código 32714 resulta:
Código: 3 2 7 1 4
Ponderaciones: 2 1 2 1 2
Productos: 6 2 14 1 8
Suma: S = 6 + 2 + (1 + 4) + 1 + 8 = 22
Módulo: N = 10
Cociente: Q = 22 / 10 = 2 Resto: R=2
Como R = 2 el dígito de control es δ = N – R = 10 – 2 = 8. El código con clave es 237148.

Este método solamente detecta un error en un dígito o una transposición simple, pero no
las transposiciones dobles. Por ejemplo, si se permutaran los dígitos 3 y 7 el código 72314
(erróneo) tendría el mismo dígito de control (8) y el error no sería detectado.
Caso 2. Para simplificar el cálculo un método muy utilizado, que aplica directamente la
expresión (1), es el siguiente. Las ponderaciones son:
w1 = w3 = … = w2k+1 = 3
w2 = w4 = … = w2k = 1

Clasificación y Codificación de Productos.  2012 R. Morán. 17


El dígito de control se calcula igual que antes, es decir: Si R ≠ 0 entonces δ = N – R; si
R = 0, entonces δ = 0.

Ejemplo 11
Para el mismo código 32714 resulta:
Código: 3 2 7 1 4
Ponderaciones: 3 1 3 1 3
Productos: 9 2 21 1 12
Suma: S = 9 + 2 + 21 + 1 + 12 = 45
Módulo: N = 10
Cociente: Q = 45 / 10 = 4 Resto: R=5
Como R = 5 el dígito de control es δ = N – R = 10 – 5 = 5. El código con clave es 237145.

Este método detecta todos los errores en un dígito y, obviamente, no detecta ninguna
transposición doble. Además es importante observar que, dado que la diferencia entre dos
ponderaciones sucesivas es par, tampoco detecta todas las transposiciones simples. En efecto,
si la diferencia entre dos dígitos consecutivos es 5 y se permutan, el dígito de verificación es
el mismo.

Ejemplo 12
Código: 4 1 9 3 8 3
Ponderaciones: 1 3 1 3 1 3
Productos: 4 3 9 9 8 9
Suma: S = 42
Módulo: N = 10
Cociente: Q = 42 / 10 = 4 Resto: R=2
Es decir, S módulo 10 = 2. Como R = 2 el dígito de control es δ = 8. El código con dígito
de control es 4193838.
Si se permutan los dígitos 3 y 8 del código, cuya diferencia es 5, se obtiene el mismo dígito
de control. En efecto:
Código: 4 1 9 8 3 3
Ponderaciones: 1 3 1 3 1 3
Productos: 4 3 9 24 3 9
Suma: S = 52
Módulo: N = 10
Cociente: Q = 52 / 10 = 5 Resto: R=2
Como R = 2 el dígito de control es δ = 8 y el error no es detectado.

No obstante estas limitaciones, por su sencillez este método es uno de los más utilizados.
Como veremos más adelante, es el método estándar que utiliza la Organización GS1 para sus
códigos numéricos. Por esta razón, en todo lo que sigue, con la expresión “dígito de control
módulo 10” nos referiremos a este último caso.
Finalmente, un caso interesante es el del carácter de control del Código de Barras 128. Este
código trabaja con 107 caracteres y utiliza una clave de control módulo 103. Veremos su
cálculo al estudiar el código.
18 Clasificación y Codificación de Productos.  2012 R. Morán.
2.5 Códigos autocorrectores
En la Teoría de la Información y Codificación la codificación de la información tiene por
objetivo fundamental resolver el problema de “transmitir mensajes confiables por canales no
confiables”, que se presenta en telecomunicaciones. Los códigos autocorrectores detectan y
corrigen (hasta cierto punto) los errores mediante el agregado de información redundante: en
la codificación de los datos, en el emisor, se incorpora información adicional que permite
regenerar luego, en el receptor, los datos alterados durante la transmisión.
En la codificación de productos se puede asimilar la transmisión de un mensaje con todo lo
que sucede desde que se genera un código y se lo coloca en el artículo (representado por un
código de barras, por ejemplo), hasta que es escaneado para su decodificación, esto es:
impresión del código, manipuleo, transporte y almacenamiento del producto, etc.; situaciones
en las que se puede dañar el código. Por lo tanto se puede pensar en agregar información
adicional al generar el código o su representación, de manera tal que se logren corregir errores
al leerlo posteriormente. Este concepto de códigos autocorrectores se aplica en ciertos tipos de
códigos de barras, como veremos más adelante.
Los códigos autocorrectores más utilizados para estas aplicaciones son los de Reed-
Solomon (RS). Son códigos de corrección de errores en los datos transmitidos sobre un canal
de comunicaciones.5
Los códigos RS tienen aplicaciones muy variadas. Por ejemplo, son utilizados en los discos
compactos, donde pueden corregir completamente errores de hasta 4000 bits, esto es
aproximadamente 2,5 mm en la superficie del disco, y en la codificación digital de fotografías
enviadas por sondas espaciales.
Un código RS es un código de bloques lineales. Cada bloque consta de n símbolos, de los
cuales k símbolos son de información, y d símbolos de detección y corrección de errores. El
valor de n = k + d es la longitud del bloque, en número de símbolos. El valor de k es la
dimensión del código y d es la medida de la redundancia del código. La capacidad de
corrección de errores de un código RS está determinada por el valor de d. La elección de d es
decisión del diseñador del código y puede elegirse dentro de amplios límites. Respecto de los
errores se deben distinguir dos situaciones distintas:
• Borradura (error de rechazo). Es un símbolo desaparecido o no decodificable, donde la
ubicación es conocida pero no el valor. Por ejemplo, cuando en un código de barras el
escáner no puede reconocer un símbolo de barras porque está dañado, es una borradura
porque la ubicación es conocida.
• Error (error de sustitución). Es un símbolo mal decodificado, donde tanto la ubicación
como el valor son desconocidos.
Un código RS puede detectar hasta d símbolos erróneos (errores y borraduras) y corregir
hasta ⌊d / 2⌋ símbolos con errores, o hasta d símbolos con borraduras, y toda combinación de
errores y borraduras en tanto se satisfaga la relación
e+2t≤d (3)
donde t es el número de símbolos con errores y e el de símbolos con borraduras en el bloque.
Cabe destacar que un símbolo es erróneo (error o borradura) ya sea que tenga uno o varios
elementos componentes alterados, esto es, si múltiples elementos en un símbolo son erróneos
5
Cf. Reed, Irving S.; Solomon, Gustave (1960), “Polynomial Codes over Certain Finite Fields”, Journal of the
Society for Industrial and Applied Mathematics (SIAM) 8 (2): 300–304.
Clasificación y Codificación de Productos.  2012 R. Morán. 19
solamente cuentan como un solo error. Esta propiedad de los códigos RS los hace
especialmente apropiados para aplicaciones en los códigos de barras, en los que los símbolos
pueden tener múltiples daños.

Ejemplo 13
En muchas aplicaciones prácticas de RS es común usar 2m símbolos. En este caso cada
símbolo puede ser representado por m bits. El emisor envía los datos como bloques
codificados de n = 2m – 1 símbolos cada uno. El número k de símbolos de datos en cada
bloque (k < n) es un parámetro de diseño. Los restantes d = n – k símbolos del bloque son
símbolos de paridad que utiliza RS para detectar y corregir errores; puede corregir hasta
⌊d / 2⌋ símbolos erróneos por bloque. Por ejemplo, con símbolos de 8 bits se tienen n = 28 – 1
= 255 símbolos por bloque. Un valor común para k es k = 223 símbolos de datos por bloque,
con d = 32 símbolos de paridad, y es capaz de corregir hasta d / 2 = 16 símbolos con errores
por bloque.

En general, en la codificación de productos el código del artículo es el bloque, k el número


de símbolos de datos en el código y d el número de símbolos agregados que RS utiliza para
detectar y corregir errores. Se elige d según el nivel de corrección pretendido, cuanto más
grande sea d mayor es el nivel de corrección pero también es mayor la longitud del código. Lo
que se entiende por símbolo depende del tipo de código que se trate, como veremos en su
momento.
La teoría de los códigos RS y los algoritmos para generar los símbolos de detección y
corrección no serán expuestos aquí. El lector interesado en el tema debe consultar la
bibliografía especializada.6

2.6 Características de la codificación


Las características esenciales que debe tener todo buen sistema de codificación son las
siguientes.
• Precisión. Sin ella la codificación pierde su razón de ser. Cada artículo debe tener un único
código que lo identifique.
La precisión no es simple de garantizar, dado que el catálogo de los artículos varía en el
tiempo. Es muy importante entonces asignar claramente las responsabilidades en el sistema de
codificación con un diccionario centralizado.
• Estabilidad. La modificación o el cambio de los criterios de codificación siempre causa
graves dificultades porque implica:
Establecer un nuevo diccionario.
Actualizar las bases de datos.
Modificar los programas.
Advertir y capacitar a todos los usuarios.
Las principales causas que afectan la estabilidad de una codificación son: la insuficiente
potencialidad de los códigos, especialmente en los significativos, y la necesidad de modificar
los elementos significativos en la definición del código.
6
Cf., por ejemplo, Richard E. Blahut, Algebraic Codes for Data Transmission, Cambridge University Press,
2011. ISBN 9780521556590.
20 Clasificación y Codificación de Productos.  2012 R. Morán.
La estabilidad también exige que esté claramente definida dentro de la empresa la
responsabilidad por el establecimiento y mantenimiento del sistema de codificación, con
procedimientos perfectamente detallados.
• Concisión. Simplifica el procesamiento y la transmisión de datos, especialmente en los
procesos manuales que siempre existen. Por lo tanto es recomendable usar la menor
cantidad de dígitos posibles, reducir al mínimo los caracteres alfabéticos y evitar el uso de
caracteres especiales.
• Comodidad de empleo. Los códigos más cómodos son los significativos porque facilitan
el reagrupamiento de los artículos según distintas necesidades.
• Facilidad de asignación. Cuanto más simple es el sistema de codificación más fácil es el
proceso de asignación de los códigos. No obstante, cuando las necesidades de clasificación
requieren sistemas más complejos las operaciones necesarias para asignar un código a un
artículo pueden ser complicadas. Lo más común es centralizar la responsabilidad de la
asignación en un organismo único.
• Seguridad. Los errores de lectura, transcripción y transmisión de la información pueden
tener consecuencias graves, se deben utilizar claves de control para verificar la veracidad
de los códigos.

2.7 Criterios de codificación


Hemos visto que hay diferentes criterios de codificación básicos que, además, pueden
combinarse. La preferencia por alguna de las alternativas posibles depende de las necesidades
y objetivos de la empresa. Es posible:
• Utilizar códigos no significativos y asignar la descripción de los atributos a otros campos
de información que no forman parte del código. Para las clasificaciones necesarias en las
distintas aplicaciones se deberán usar esos campos.
• Usar códigos significativos (híbridos en la mayoría de los casos), preferentemente
numéricos, que contengan en su estructura todos los grupos necesarios. Es la alternativa
más delicada desde el punto de vista de la estabilidad.
• Aplicar una codificación mixta con por lo menos un grupo significativo, en general el
grupo fundamental, y para el resto una numeración secuencial no significativa. Esta
alternativa requiere, como en el primer caso, el uso de campos de clasificación que no
forman parte del código.
Sin embargo, la complejidad de los procesos industriales y logísticos globalizados hace
que, en la actualidad, sea prácticamente imposible pretender un sistema de clasificación único
que cubra todas las necesidades de las empresas. Puede ser necesario entonces utilizar
sistemas de codificación independientes para distintas aplicaciones. Por ejemplo, un sistema
para la clasificación de piezas en función de los requerimientos de producción y otro para los
productos comerciales, adaptado a las exigencias de las cadenas logísticas. Además, la
codificación de los productos puede estar condicionada también por los sistemas ERP
(Enterprise Resources Planning) y CAD/CAM (Computer Assisted Design / Computer
Assisted Manufacturing).

Clasificación y Codificación de Productos.  2012 R. Morán. 21


3 CLASIFICACIÓN Y CODIFICACIÓN EN TECNOLOGÍA DE GRUPOS
La Tecnología de Grupos (GT: Group Technology) es un sistema de racionalización de la
producción que se basa en el agrupamiento de las piezas por similitud de diseño y fabricación.
Se forman grupos o familias con las piezas similares por:
• Atributos de diseño (forma, tamaño, etc.)
• Atributos de fabricación (proceso de fabricación para realizar la pieza).
Las ventajas del agrupamiento en familias son básicamente las siguientes:
• En diseño. El diseño se facilita cuando se parte de productos similares existentes.
• En producción. La similitud de los procesos de las piezas de una misma familia permite
disponer los equipos en células para procesar toda la familia.
Con la disposición de los equipos en células se logran importantes reducciones de los
tiempos de puestas a punto y de producción (lead-times), del movimiento de materiales y de
los stocks en proceso. Esto facilita la programación de la producción, el control del
herramental y la estandarización de los procesos.
En GT un problema muy importante es la clasificación de las piezas para la definición de
las familias. Piezas similares por diseño (forma, tamaño, etc.), pueden no ser similares por
proceso (distinto material, tolerancias, etc.) y viceversa. El agrupamiento en familias depende
entonces del objetivo perseguido, diseño o fabricación, y para realizarlo los métodos que se
pueden utilizar son:
a) Inspección visual de las piezas o planos de las mismas. Es un método manual, que debe ser
realizado por personal especializado. Es el menos seguro (personas distintas definen
familias distintas).
b) Análisis del flujo de producción. Es la identificación de familias analizando las Hojas de
Ruta de las piezas; piezas con igual o similar secuencia de operaciones y máquinas forman
una familia. Es un método rápido y eficaz para la fabricación celular y se ha desarrollado
software de apoyo. Una posible desventaja es que puede haber inconsistencias en las hojas
de ruta existentes.
c) Sistemas de codificación y clasificación. Es el método más caro y el que más tiempo de
implementación requiere, porque para realizar la clasificación en familias en forma
automática el código debe permitir identificar los atributos de las piezas en los que se basa
el agrupamiento, pero es el más potente y consistente.
Respecto de los sistemas de clasificación y codificación en GT, que son los que interesa
analizar aquí, las dos principales áreas de la empresa que los utilizan son diseño y producción.
Por esta razón estos sistemas pertenecen a alguna de estas categorías:
• Sistemas basados en los atributos de diseño de las piezas.
• Sistemas basados en los atributos de fabricación de las piezas.
• Sistemas basados en ambos atributos.
Se han desarrollado muchos sistemas de clasificación y codificación de piezas con estas
características. Como ejemplo veremos la estructura básica de uno de ellos y luego las
características de algunos otros entre los más conocidos.

22 Clasificación y Codificación de Productos.  2012 R. Morán.


3.1 Sistema Opitz
Es uno de los sistemas pioneros, y probablemente el más conocido. Fue desarrollado por el
profesor H. Opitz de la Universidad de Aachen en Alemania para la clasificación y
codificación de piezas mecánicas.
Este sistema utiliza un código básico de nueve dígitos que puede ser extendido agregando
cuatro dígitos más. Los nueve dígitos básicos son para información tanto de diseño como de
fabricación y se dividen en dos grupos. Los primeros cinco dígitos constituyen el código de
forma, o geométrico, y describen los atributos primarios de diseño de la pieza. Los cuatro
dígitos siguientes forman el código suplementario, que indica algunos de los atributos para
uso en fabricación (dimensiones, material, forma inicial de la materia prima, precisión). La
Figura 3, del manual publicado por Opitz,7 muestra la estructura general del código.

Figura 3

El primer dígito indica la clase de pieza: de revolución o no, donde:


• Las piezas de revolución se imaginan contenidas en un cilindro de largo L y diámetro
D.
• Las piezas no de revolución se suponen contenidas en un prisma rectangular de
dimensiones A, B y C, tales que A > B > C.
Los restantes dígitos del código de forma o geométrico son: el segundo para la forma
externa general, el tercero para el mecanizado de revolución, el cuarto el mecanizado plano
superficial y el quinto para agujeros, dientes o formas adicionales. Los cuatro dígitos del
código suplementario indican dimensiones, material, forma inicial de la materia prima y
precisión. La estructura del código es claramente híbrida, con un grupo fundamental
jerárquico y los demás en cadena.
Veamos un par de ejemplos tomados del manual publicado por Opitz.

7
Opitz, H., A Classification System to Describe Workpieces, Oxford (UK): Pergamon Press, 1970.
Clasificación y Codificación de Productos.  2012 R. Morán. 23
Ejemplo 14
La pieza de la Figura 4 es de revolución con L = 80 y D = 240, es decir L/D = 1/3 < 0,5;
luego,, de acuerdo con la tabla de Figura 3, el primer dígito es 0.
Para determinar los cuatro dígitos restantes del código
de forma debemos entrar en la hoja del manual que
corresponde al primer dígito 0, que es la de Figura 5 (es la
misma para el primer dígito 0, 1 y 2).
Como es una pieza escalonada externamente en un
extremo, sin elementos de forma, el segundo dígito es 1.
La forma
ma interna es también escalonada con una ranura
funcional, luego el tercer dígito es 3. El cuarto dígito es 1
porque tiene una superficie plana exterior en una
dirección. Finalmente, dado que no tiene dientes de
engranaje y tiene un agujero con centro en un u círculo
Figura 4
concéntrico, el quinto dígito es 2.
El código de forma es: 01312.

Figura 5

Para obtener los cuatro dígitos del código suplementario la tabla es la de Figura 6 de la
página siguiente.
Puesto que 160 < D < 250 el primer dígito es 4.
Supongamos ahora que la pieza es de acero común (carga de rotura < 37 Kg/mm2), sin
tratamiento térmico, que se mecaniza a partir de un pieza pre-procesada.
procesada. El segundo dígito es
2 y el tercero 9.

24 Clasificación y Codificación de Productos.


Produc  2012 R. Morán.
La precisión debe ser codificada por la empresa, según las normas que correspondan, en
niveles de 2 a 5. Se refieren tanto a tolerancias como a terminación superficial. En este
ejemplo no hay precisión
isión especificada, de manera que el cuarto dígito es 0.
El código completo del ejemplo, con las suposiciones hechas, sería: 013124290.

Figura 6

Ejemplo 15
La pieza de la Figura 7 es plana con A = 425, B = 250 y C = 80. Luego A/B < 3 y A/C > 4,
resultando que el primer dígito es 6. La tabla del manual que corresponde es la
l de Figura 8, en
la página siguiente.
Como tiene componentes planos (no
es totalmente plana) y es rectangular con
pequeñas desviaciones de fundición, el
segundo dígito es 5. Tiene dos orificios
principales
es paralelos, el tercer dígito es
4. Como las superficies planas son
escalonadas y en ángulos rectos, el
cuarto dígito es 4. No tiene dientes ni
formas, y los agujeros auxiliares están
en una misma dirección y relacionados
por el patrón de perforado, luego el
Figura 7 quinto dígito es 3. El código es 65443.
Los cuatro dígitos del código
suplementario se obtienen de la misma tabla de la Figura 6. Como A = 425 el primer dígito es
6. Si suponemos que la pieza es de fundición gris, el segundo dígito es 0 y el tercero 7. No
hay precisión especificada y el cuarto dígito es 0.
Con estas suposiciones el código completo sería: 654436070.
Clasificación y Codificación de Productos..  2012 R. Morán. 25
Figura 8

En todos los casos, los cuatro dígitos extras (opcionales) que forman el código secundario
deben ser definidos por la empresa, si desea utilizarlos, para satisfacer necesidades
particulares. Por ejemplo, se pueden usar para identificar las operaciones de producción y su
secuencia (proceso).

3.2 Otros sistemas


Entre los sistemas más conocidos se pueden citar los siguientes.8
MICLASS. Desarrollado por TNO de Holanda, el código es de estructura de cadena y
puede tener entre 12 y 30 dígitos. Los 12 primeros son un código universal aplicable a
cualquier pieza. Se dispone de hasta 18 dígitos adicionales para ser aplicados en la
codificación de datos específicos de la empresa como, por ejemplo, tamaño del lote, tiempo
por pieza, costo, y secuencia de operaciones. Los 12 primeros dígitos corresponden a:
1 Forma principal.
2y3 Elementos de forma.
4 Posición de los elementos de forma.
5y6 Principales dimensiones.
7 Relación de dimensiones.
8 Dimensiones auxiliares.
9 y 10 Códigos de tolerancia.
11 y 12 Códigos de material.
Una de las ventajas del sistema MICLASS es que las piezas pueden ser codificadas usando
un software interactivamente. Para clasificar una determinada pieza el usuario responde una

8
Cf., por ejemplo, C. C. Gallagher y W. A. Knight, Group Technology Production Method in Manufacture, UK:
Ellis Horwood, 1986.
26 Clasificación y Codificación de Productos.  2012 R. Morán.
serie de preguntas y el sistema realiza la selección del código adecuado para la pieza en
función de las respuestas. El número de preguntas depende de la complejidad de la pieza y se
encuentra entre 7 y 20.
MULTICLASS. Es la versión más nueva de MICLASS y fue realizado por OIR
(Organisation for Industrial Research). La estructura es totalmente jerárquica de hasta 30
dígitos.
KK-3. Fue un emprendimiento de la Sociedad Japonesa para la Promoción de Máquinas
Industriales (JSPMI,1980). Tiene como propósito principal la clasificación del maquinado de
piezas en forma general. Usa un sistema de 21 dígitos decimales para codificar principalmente
las operaciones de corte y rectificado.
DCLASS. Desarrollado en 1980 por D. K. Allen y P. R. Smith en la Universidad de
Briham. Es un sistema jerárquico de ocho caracteres alfanuméricos, basado en cinco
estructuras de árbol para generar los códigos para componentes, materiales, procesos,
máquinas y herramental.
CODE. Producto de MDSI (Manufacturing Data Systems, Inc.). Utiliza ocho caracteres
hexadecimales con una estructura híbrida, similar a la del sistema Opitz. Puede ser ampliado a
doce caracteres.
Vuoso-Praha. Consta de cuatro dígitos, tres de los cuales son grupos jerárquicos para
clasificar la forma de la pieza, incluyendo tamaño y proporciones, y el cuarto para el material.
La estructura es híbrida. Es utilizado para clasificaciones aproximadas para identificar el tipo
de equipamiento que produciría la pieza.
Aunque los formatos de estos sistemas son diferentes, con la excepción de Vuoso-Praha,
todos resumen la información en seis características básicas de las piezas: forma general,
forma específica basada en perfiles principales, posición, dimensiones, tolerancias y material.
No obstante estas características generales, ninguno de estos sistemas ha sido adoptado
universalmente. La razón principal es que en muchos casos, a pesar de la complejidad de los
mismos, el grado de detalle que manejan no es suficiente para satisfacer los requerimientos
del tipo de industria o de la empresa. Es decir, para una aplicación determinada, los sistemas
que se proveen como paquetes comerciales pueden resultar, a la vez, muy complejos e
insuficientes. Por esta causa muchas aplicaciones de GT han sido realizadas con sistemas de
codificación específicamente desarrollados para las necesidades de la empresa. Por otra parte,
los sistemas CAD/CAM actuales incluyen su propia forma de codificación.
En particular, para la formación de familias para la fabricación celular la codificación
presenta dificultades. En efecto, dos piezas pueden ser muy parecidas en forma y material y
tener procesos diferentes por detalles de precisión, tamaños de los lotes a producir, etc.; y
viceversa, piezas con diferente forma y material pueden tener similar proceso. Para que un
sistema de codificación fuese capaz de diferenciar todas las características de las piezas, para
todo tipo de industria, debería ser tan amplio que su aplicación resultaría inviable.
Para la fabricación celular el análisis del flujo del proceso constituye el mejor método
porque es el único que permite llegar directamente a la formación de familias de piezas y
grupos de máquinas. No obstante, el método no es viable en el caso de planificación de
nuevas plantas ni en el de renovación de maquinaria.
Cuando se trata del proyecto de una nueva planta con un producto ya definido, la
formación de familias a través de la codificación resulta no solo la única vía para la aplicación

Clasificación y Codificación de Productos.  2012 R. Morán. 27


de la GT, sino también una herramienta interesante para la generación de la información
necesaria para seleccionar la maquinaria, herramental, etc.
Además, la codificación aporta soluciones particularmente importantes para la reducción
de la variedad en el diseño de piezas y la normalización interna.

4 IDENTIFICACIÓN DE ARTÍCULOS EN EL SISTEMA GS1


Las necesidades de codificación de los productos para fines comerciales son muy antiguas,
pero lo que impulsó importantes desarrollos fue la posibilidad de lectura electrónica de los
códigos a través de una simbología apropiada: los códigos de barras y los códigos
electrónicos. En este sentido, el primer sistema fue el UPC (Universal Product Code), creado
en 1973 en EE.UU. y utilizado también en Canadá, gestionado por el UCC (Uniform Code
Council). Luego surgió el sistema EAN (European Article Number), que posteriormente pasó
a llamarse International Article Number, sin cambiar las siglas. En 2005 fue oficialmente
lanzada la Organización GS1,9 como sucesora de las organizaciones EAN y UCC, y las
Organizaciones Miembros de los distintos países adoptaron el nuevo nombre: GS1<nombre
del país>, por ejemplo, GS1 Argentina.10
En las siglas, GS (Global Standards) representa el objetivo de la organización en cuanto
sistema de estándares global y el “1” destaca que es una única organización mundial. GS1
gestiona un sistema global de estándares para las cadenas logísticas.
Los estándares GS1 facilitan la comunicación nacional e internacional entre todos los
participantes de las cadenas de abastecimiento y demanda, incluyendo los proveedores de
materias primas, fabricantes, mayoristas, distribuidores, minoristas y consumidores finales.
El sistema GS1 es un conjunto de estándares que permite la administración eficiente de las
cadenas de distribución, multisectoriales y mundiales, mediante la identificación precisa de
productos, unidades de embarque, localizaciones, bienes y servicios. Incluye estándares para
comunicación de datos y el comercio electrónico. El sistema contempla diferentes áreas de
aplicación que incluyen artículos comerciales, unidades logísticas, bienes y localizaciones, y
está diseñado para ser utilizado en cualquier industria, en el sector comercial y en el sector
público.
Desde el punto de vista de la identificación, GS1 define atributos estandarizados para ser
utilizados como claves para referirse a entidades específicas, llamados claves, códigos o
identificadores GS1. En general son claves creadas.
Los identificadores GS1 se complementan con otros atributos, también definidos por los
estándares GS1, propios de la entidad o creados, llamados datos complementarios. Tanto el
identificador como los atributos complementarios se identifican mediante Identificadores de
Aplicación GS1 (AI: Application Identifiers). Cada AI está formado por dos, tres o cuatro
dígitos que definen el formato y la estructura de los datos que le siguen, es decir, constituyen
a su vez un código con estructura jerárquica, con el formato <AI><Datos>. Estos códigos
jerárquicos se pueden concatenar para formar un código en cadena, que es el código de la
entidad, en la forma: <AI><Identificador GS1><AI><Datos complementarios><AI><Datos
complementarios>. Así, en el código de una entidad puede haber datos de distinta naturaleza,
característica que le da una gran versatilidad.

9
http://www.gs1.org
10
http://www.gs1.org.ar
28 Clasificación y Codificación de Productos.  2012 R. Morán.
En el sistema GS1 todos los códigos pueden ser representados mediante portadores de
datos (data carriers). Los portadores de datos dependen de la tecnología disponible;
actualmente los más utilizados son los códigos de barras y las etiquetas para códigos
electrónicos e identificación por radiofrecuencia EPC/RFID (Electronic Product Code /
Radio-Frequency Identification).
Los códigos de barras son simbologías, lineales o bidimensionales, para representar
caracteres numéricos o alfanuméricos en un formato legible por escáneres y permitir así la
captura automática de datos en distintos puntos de la cadena logística, con una mejora enorme
en la velocidad y exactitud en las comunicaciones.
Conceptualmente es muy importante diferenciar los códigos de las entidades de los medios
utilizados para representarlos, los portadores de datos. Por esta razón los trataremos por
separado, si bien algunos códigos están estrechamente vinculados con, por ejemplo, una
determinada simbología de código de barras.
Comenzaremos viendo los Códigos Identificadores GS1 y luego los Identificadores de
Aplicación. Por las aplicaciones que nos interesan –la identificación de productos– nos
limitaremos a los principales códigos de identificación y los AI más comunes.11 Los
portadores de datos, por las razones mencionadas antes y porque algunos son aplicables
también a códigos que no forman parte de los estándares GS1, serán tratados por separado.

4.1 Códigos Identificadores GS1


Para la identificación de las entidades el sistema GS1 tiene los siguientes códigos:
• GTIN: Global Trade Item Number.
• GLN: Global location Number.
• SSCC: Serial Shipping Container Code.
• GRAI: Global Returnable Asset Identifier.
• GIAI: Global Individual Asset Identifier.
• GSRN: Global Service Relation Number.
• GDTI: Global Document Type Identifier.
• GSIN: Global Shipment Identification Number.
• GINC: Global Identification Number for Consignment.
Los tres primeros son los únicos que trataremos.

4.1.1 Código GTIN


El código GTIN (Global Trade Item Number) es el estándar fundamental de GS1 para la
identificación de ítems. Es una identificación mundial única. Los ítems pueden ser productos
que son vendidos, despachados y entregados en distintos puntos de las cadenas logísticas.
Incluye desde las materias primas hasta los productos para el consumidor final y también
servicios, todos con sus correspondientes características predefinidas.

11
El lector interesado en los demás estándares, así como en los aspectos legales y técnicos, puede consultar con
la Organización GS1 (http://www.gs1.org).
Clasificación y Codificación de Productos.  2012 R. Morán. 29
Los artículos se codifican con un GTIN utilizando cuatro estructuras posibles: GTIN-13,
GTIN-12, GTIN-8 y GTIN-14 que tienen, respectivamente, 13, 12, 8 y 14 dígitos. En todos
los casos el último dígito es el de control módulo 10. La elección de la estructura depende de
la naturaleza del artículo y del alcance de las aplicaciones del usuario.
El código GTIN-13 se utiliza para la identificación de artículos para su posterior escaneo
en los puntos de venta minorista (cajas registradoras). Si los artículos son muy pequeños,
excepcionalmente se puede utilizar un código GTIN-8. El código GTIN-12 está destinado al
mercado de EE.UU. y Canadá, aunque desde enero del 2005 aceptan también los códigos
GTIN-13. Las unidades comerciales que contienen productos idénticos tales como una caja de
cartón corrugado, un cajón, un palé (pallet) con faja o cubierta, etc., siempre y cuando no
pasen como tales por un punto de venta minorista, se pueden identificar para fines logísticos
con códigos GTIN-14. Cada artículo individual en esos contenedores tendrá su código GTIN-
13 (o GTIN-8).
Desde el punto de vista del procesamiento de datos los códigos GTIN se pueden almacenar
todos en un campo de 14 dígitos, completando con ceros a la izquierda los de 8, 12 y 13
dígitos. Obsérvese que este agregado de ceros a la izquierda no altera el dígito de control y
por lo tanto se puede pensar en una representación única de 14 posiciones para las cuatro
estructuras en las bases de datos. No obstante, en la simbología de códigos de barras, el
código GTIN-14 tiene representaciones que pueden no ser aceptadas por los escáneres de los
puntos de venta minorista.
Veamos estos códigos más en detalle.

4.1.1.1 Código GTIN-13


Es el código más conocido en los artículos de venta minorista. El grupo fundamental del
código son los primeros dos o tres dígitos que constituyen el Prefijo GS1, asignado por GS1
a cada Organización Miembro (OM). No significa que el artículo fue producido o distribuido
en el país al que le corresponde el prefijo; únicamente indica la OM que asignó el Número de
Empresa. A la Argentina se le asignaron los prefijos 778 y 779.
El subgrupo de 1er orden es el Número de Empresa GS1, que sigue al Prefijo GS1 y es
asignado por la OM. En la Argentina es GS1 Argentina. Este número no identifica
necesariamente al fabricante del producto, sino al propietario de la marca. Por propietario de
la marca se entiende la empresa que decidirá la apariencia que tendrá el producto ante el
consumidor final, incluyendo marca, nombre comercial, presentación, etc.; puede ser un
distribuidor o un importador.
El prefijo GS1 y el Número de Empresa conforman el Prefijo de Empresa GS1, que es un
identificador único para la empresa en el mundo. En general tiene de 6 a 10 dígitos
dependiendo del país en que se haya asignado, es decir del Prefijo GS1, y de las necesidades
de la empresa. En la Argentina existen dos formatos de 7 y 9 dígitos (el número de empresa
puede tener 4 o 6 dígitos).
El subgrupo de 2° orden es la Referencia del Artículo, que tiene de 1 a 6 dígitos, también
dependiendo del país y de manera tal que con el Prefijo de Empresa GS1 totalice 12 dígitos.
Es un número asignado por la empresa para identificar sus artículos. La manera más sencilla
de asignarlos es mediante una numeración secuencial completando con ceros a la izquierda, es
decir 000, 001,002, 003, etc. En la Argentina es de 3 o 5 dígitos según la cantidad de
productos que la empresa tenga intención de registrar. Para 1000 o más productos el número
de empresa tendrá 4 dígitos (también completado con ceros a la izquierda si fuese necesario) y

30 Clasificación y Codificación de Productos.  2012 R. Morán.


la referencia de artículo 5 dígitos. Para menos de 1000 productos, 6 y 3 dígitos
respectivamente.
El subgrupo de 3er orden es el Dígito de control módulo 10.
El código es jerárquico, con grupos de longitud variable, y constituye un identificador
único del artículo en el mundo.
El código GTIN-13 se representa mediante la simbología de código de barras EAN-13,
como portador de datos, para el escaneo en los puntos de venta, almacenamiento, etc.

Ejemplo 16
En el código 7791234001231, el prefijo 779 corresponde a GS1 Argentina, 1234 es el
número de empresa, de manera que 7791234 es el prefijo de empresa GS1, único en el
mundo, y 00123 es la referencia de un artículo particular dentro de la empresa. El último 1 es
el dígito de control módulo 10.

Si en la venta minorista un mismo artículo se comercializa en diferentes presentaciones


(por ejemplo cajas con distintas cantidades), cada una de ellas es un artículo distinto y por lo
tanto deberá tener su propio código GTIN-13.

Casos especiales
Las publicaciones tales como libros, diarios y revistas requieren una consideración especial
debido a que sus codificaciones preexistentes se incorporan al código GTIN-13 y utilizan la
misma simbología de códigos de barras. Veamos los casos del código ISBN para libros y del
ISSN para publicaciones seriadas.

Código ISBN
El código ISBN (International Standard Book Number), controlado por la International
ISBN Agency,12 está basado en la norma ISO 2108 y tiene por objeto “coordinar y normalizar
internacionalmente el uso de los números para libros, de modo tal que cada ISBN identifique
un título, o edición de un título, de un editor determinado, y sea único para ese título o
edición”. Este sistema permite que cada título publicado tenga un número de identificación
único en el mundo, que se aplica independientemente del destino que el editor asigne al libro:
venta, distribución gratuita o circulación en círculos específicos.
Originalmente el código constaba de diez dígitos, pero a partir del 1 de enero de 2007 se le
agregó un prefijo de tres dígitos para adaptarlo a la estructura del código GTIN-13 y utilizar la
simbología del código de barras EAN-13. Los 13 dígitos del nuevo código ISBN se dividen
en 5 grupos, tres de los cuales tienen longitud variable, separados por guiones o espacios. Los
guiones o espacios tienen por finalidad facilitar la lectura pero no forman parte del código. La
estructura es la siguiente.
Prefijo GS1 (siempre de 3 dígitos), es el grupo fundamental. En la actualidad solo puede
ser 978 o 979, este último se comenzará a utilizar cuando se agoten las posibilidades con 978
ampliando la potencialidad del código. Solamente indica que es un libro, no un país o región.
Identificador de país o grupo lingüístico, es el subgrupo de 1er orden. Indica el grupo
nacional, geográfico o lingüístico de las editoriales. Puede tener de 1 a 5 dígitos y es asignado
por la Agencia Internacional de ISBN de acuerdo con la probable producción de libros del
12
http://www.isbn.org
Clasificación y Codificación de Productos.  2012 R. Morán. 31
grupo: cuanto más grande es la producción de libros, más corto es el indicador del grupo
nacional. A la Argentina se le han asignado los indicadores 950 y 987.
Titular, es el subgrupo de 2° orden. Identifica un editor en particular dentro de un grupo
nacional, geográfico o lingüístico. Puede tener de 2 a 7 dígitos, dentro de rangos fijados. A las
editoriales con un gran volumen de producción se les asignan los indicadores más cortos y a
las de menor producción los más largos. Para la Argentina, con identificador de país 950, los
rangos establecidos para las editoriales son los siguientes: los editores con producción anual
mayor de 50 títulos tendrán un número de dos dígitos; los de 21 a 50 títulos, tres dígitos; y los
de menos de 21 títulos, cuatro dígitos.
Publicación, es el subgrupo de 3er orden. Identifica un título determinado o edición
particular de un título publicado por un editor dado. Puede tener hasta 6 dígitos, pero de
manera tal que con el país y el titular complete 9 dígitos. Si es necesario se rellena con ceros a
la izquierda.
Dígito de control, es el subgrupo de 4° orden. Se calcula con el método módulo 10.

Ejemplo 17
El código ISBN 978-950-673-833-4 significa lo siguiente:
978: Libro.
950: Argentina.
673: UNR Editora.
833: Título: Programación Lineal. Una introducción con extensiones a la Programación
Entera y a la Programación Cuadrática. 2ª edición.
4: Dígito de control.

Código ISSN
El ISSN (International Standard Serial Number) es un código numérico reconocido
internacionalmente para la identificación de las publicaciones seriadas como diarios, revistas,
informes periódicos, etc., basado en la norma ISO 3297. Está indisolublemente asociado con
el título de la publicación seriada y un cambio en el mismo puede implicar un cambio de
ISSN. Mientras el título no sufra cambios o variaciones, el ISSN se mantiene y debe
imprimirse en cada fascículo, volumen o iteración de la publicación seriada que identifica. El
organismo de control internacional es el ISSN International Centre,13 con sede en París.
El ISSN consta de siete dígitos para la identificación de la publicación seriada, no indica el
país de publicación ni el editor. Un octavo carácter es de control, calculado módulo 11 sobre
los siete anteriores, que puede ser representado por “X” si el valor es 10.
Para adaptarlo al formato GTIN-13 se le asignó el Prefijo 977. El segundo grupo es el
ISSN (siete dígitos); el tercer grupo, llamado Variantes, está formado por los dos dígitos
siguientes y pueden ser utilizados para indicar variantes del mismo título con diferente precio
o para identificar las diferentes entregas de un diario dentro de la semana. El título normal
tiene 00. El cuarto grupo es el dígito de control módulo 10. La simbología de códigos de
barras es la EAN-13.

13
http://www.issn.org
32 Clasificación y Codificación de Productos.  2012 R. Morán.
Ejemplo 18
El diario identificado con el número 0325094, para su edición de los días domingos, tiene
el siguiente ISSN: 9770325094077. El último dígito es el de control.

Dos o cinco símbolos EAN extras se utilizan para, por ejemplo, indicar el día de la semana
en los diarios, la semana del año en las revistas, etc. Estos símbolos extras, en cuyos detalles
no entraremos, deben estar ubicados a la derecha del código principal y en la misma línea.

4.1.1.2 Código GTIN-13 para uso interno


El código GTIN-13 puede utilizarse también para aplicaciones internas de la empresa. En
este caso el Prefijo GS1 es de dos dígitos, 20 al 29, asignado por la OM, seguido por un
número interno de 10 dígitos definido por la empresa, y el dígito de control módulo 10. Una
aplicación típica es en los productos que se venden por peso, como verduras, frutas, fiambres,
etc. El código debe incluir la referencia del artículo y el precio (o el peso) para que sean leídos
por la caja registradora.
En la Argentina el Prefijo GS1 es asignado por GS1 Argentina y determina si el producto
está codificado a través de su precio o de su peso. Los primeros 5 dígitos son el código del
artículo, usualmente denominado PLU (Price Look Up) porque con él se busca el precio
unitario en la base de datos, y los 5 restantes son para el importe o el peso, según indique el
Prefijo. En los importes las dos últimas cifras son centavos y en los pesos las tres últimas son
gramos.
Cuando el operador coloca el producto en la balanza e ingresa el PLU, el sistema recupera
la descripción del mismo, que aparece en pantalla para control del cliente, y el precio unitario
con el que calcula el precio de la compra. La balanza emite una etiqueta autoadhesiva con el
código, que contiene el PLU y el precio de la compra, en la simbología del código de barras
EAN-13. Además imprime la descripción del producto, el peso, el precio unitario, la fecha de
envasado, el nombre de la empresa, etc., para control del usuario. En la caja se escanea el
código, con el que el sistema recupera los demás datos, y en el ticket se imprime el código, la
descripción del artículo, el peso, el precio unitario y el importe de la compra.
Estos códigos son de uso interno únicamente y no pueden utilizarse fuera de la empresa.

Ejemplo 19
En el código 2000015015769, el prefijo 20 indica que es un código interno, 00015 es la
referencia del artículo y 01576 el precio: $ 15,76. El 9 es el dígito de control módulo 10.

4.1.1.3 Código GTIN-8


Este código, utilizado únicamente cuando el artículo es muy pequeño como para colocarle
el código GTIN-13, está formado por el Prefijo GS1, un número de artículo asignado por la
OM, que con el prefijo completa 7 dígitos, y el dígito de control. La simbología de código de
barras es la EAN-8.

4.1.1.4 Código GTIN-12


Es completamente similar del GTIN-13. Utiliza el Prefijo de Empresa UPC que es un
subconjunto del Prefijo de Empresa GS1. La simbología de código de barras es la UPC-A y
UPC-E.

Clasificación y Codificación de Productos.  2012 R. Morán. 33


4.1.1.5 Código GTIN-14
Las unidades comerciales que contienen productos idénticos, siempre y cuando no pasen
como tales por un punto de venta minorista, se pueden identificar para fines logísticos con
códigos GTIN-14. Este código está compuesto por un Indicador, como primer dígito,
seguido de los primeros 12 dígitos del código GTIN-13 de las unidades contenidas (es decir,
el GTIN-13 sin el dígito de verificación), y el dígito de control módulo 10, calculado ahora
sobre los 13 dígitos precedentes. Y análogamente si el código de las unidades contenidas es
GTIN-8, rellenándolo con ceros a la izquierda. Cada artículo individual en esos contenedores
tendrá su código GTIN-13 (o GTIN-8).
El Indicador marca el nivel de agrupamiento en el embalaje y es definido por la empresa.
Los dígitos 1 a 8 son para unidades comerciales de cantidad o medida fija y el 9 para los de
cantidad o medida variable. Lo más sencillo es asignarlo secuencialmente, es decir, 1, 2, 3…
para cada presentación distinta de la misma unidad de consumo. Por ejemplo, 1: caja de 24
unidades, 2: caja de 50 unidades, 3: caja de 100 unidades, etc. Las unidades dentro del
embalaje deben ser identificadas con los códigos habituales para venta minorista: GTIN-13 o
GTIN-8.

Ejemplo 20
Supongamos el artículo cuyo código GTIN-13 es 7791234000128. El código GTIN-14
para las cajas de 24 unidades sería 17791234000125 y el de las cajas de 50 unidades,
27791234000122. Cambian los dígitos de control.

El código GTIN-14 con dígito Indicador 9 es utilizado para identificar artículos con
unidades o medidas variables como, por ejemplo, frutas, verduras, carnes, cadenas, alfombras
en rollos, etc., no destinados a la venta minorista. En estos casos, para completar la
identificación del artículo, es imprescindible especificar las unidades o medidas del mismo.
La forma de realizarlo es a través de los Identificadores de Aplicación, como veremos luego.
Observación. Un código GTIN-14 con indicador 0 no representa ningún nivel de
agrupamiento, se refiere al artículo individual, y permite generalizar en 14 dígitos todos los
códigos GTIN (sin alterar el dígito de control). En este caso particular este código, mediante
algunas simbologías de códigos de barras, puede ser utilizado en puntos de venta minorista si
disponen de los escáneres apropiados.
Las simbologías de códigos de barras para GTIN-14 pueden ser ITF-14, GS1-128, GS1-
DataBar y GS1-DataMatrix, además de los códigos electrónicos para identificación por
radiofrecuencia (EPC/RFID).

4.1.2 Código GLN


El Número de Localización Global GLN (Global Location Number) es un número que se
utiliza para identificar de manera única una compañía u organización como entidad legal.
Asimismo se utiliza para identificar localizaciones físicas, como plantas, depósitos y hasta
estantes específicos en un almacenamiento, o áreas funcionales dentro de la organización,
como el departamento de compras o la sala de guardia de un hospital.
La estructura del código GLN es la misma del GTIN-13. El Prefijo de Empresa GS1 (es
decir el Prefijo GS1 y el Número de Empresa) es el mismo puesto que es la identificación
mundial única de la empresa. Luego sigue la Referencia de Localización, que es el número
asignado por la empresa a cada una de las localizaciones que desea identificar, y que completa

34 Clasificación y Codificación de Productos.  2012 R. Morán.


los doce dígitos rellenándolo con ceros a la izquierda si fuese necesario. El último dígito es el
de control módulo 10.
No hay posibilidad de confundir el GLN con el GTIN-13 porque las aplicaciones son
completamente separadas y, especialmente, por el uso de los Identificadores de Aplicación,
como veremos enseguida en los ejemplos.

4.1.3 Código SSCC


El Código Seriado de Contenedor de Embarque SSCC (Serial Shipping Container Code) es
el estándar GS1 diseñado para la identificación inequívoca de contenedores de embarque. Un
contenedor de embarque es un elemento de cualquier tipo (contenedores, palés, cajones, etc.)
utilizado para transporte y/o almacenamiento, que se puede gestionar independientemente del
resto a través de la cadena de abastecimiento.
El SSCC es utilizado para establecer un número único de serie para cada embalaje
individual de transporte y hacer posible el seguimiento global desde el vendedor hasta el
receptor final; identifica únicamente el contenedor, no los productos contenidos en él.
El SSCC se compone de 18 dígitos: el primero (desde la izquierda) es un dígito de
extensión, los 16 dígitos siguientes son para el Prefijo de Empresa GS1 y el número de Serie
de Referencia de la unidad logística, el último es el dígito de control. El Prefijo de Empresa
GS1 es el mismo de los códigos GTIN. El número de Referencia Seriada es asignado por la
empresa; la forma más sencilla de hacerlo es con numeración secuencial, rellenándolo con
ceros a la izquierda para completar los 16 dígitos. El dígito de control es módulo 10.
El dígito de extensión se usa para incrementar la capacidad del número de serie dentro del
SSCC y es asignado por la compañía. Se lo utiliza como indicador del tipo de embalaje, por
ejemplo: 0: Caja de cartón, 1: Palé (más grande que una caja), 2: Contenedor (más grande que
un palé), etc. El dígito 9 se puede utilizar para indicar un contenedor variable, es decir que el
embalaje contiene distintos productos.
El código de barras para el SSCC es el estándar GS1-128. El escaneo del SSCC de cada
unidad logística permite el rastreo y seguimiento individual del traslado físico de cada unidad,
proporcionando una conexión entre el movimiento físico de las unidades y su correspondiente
flujo de información. También brinda la oportunidad de implementar una amplia gama de
aplicaciones tales como el Cross Docking, el seguimiento del embarque, la recepción
automatizada, etc.
En muchos casos el SSCC debe ser acompañado de información adicional y para ello son
esenciales los Identificadores de Aplicación, como veremos en los próximos ejemplos.
Más allá de los Identificadores de Aplicación, a veces el SSCC solo no es suficiente para el
manejo de las unidades logísticas cuando en la cadena de abastecimientos participan distintas
empresas y, especialmente, si la unidad logística es además un artículo comercial que está
sujeto a la identificación como tal, por ejemplo con un código GTIN. En estos casos se
requiere una etiqueta para la unidad logística que contenga, además del SSCC, toda esta
información adicional. Estas etiquetas las veremos al tratar los códigos de barras.

4.1.4 Identificadores de Aplicación GS1


Los Identificadores de Aplicación (AI) son una forma estandarizada de codificar
información de distinta naturaleza en un único código para su comunicación y procesamiento.
Por esta razón estos códigos son ampliamente utilizados en logística; no son códigos para los
puntos de venta.
Clasificación y Codificación de Productos.  2012 R. Morán. 35
En la impresión para lectura de los usuarios los AI se escriben entre paréntesis, pero estos
no se codifican ni se representan en los portadores de datos.
Para estos códigos compuestos con AI se pueden aplicar las simbologías de códigos de
barras estándares GS1 que veremos más adelante. En particular, en el proceso de
representación en la simbología GS1-128 se agrega un carácter de control módulo 103 para la
totalidad del código, aparte de los dígitos de control que puedan tener los códigos parciales
que lo integran. Desde luego que todo este proceso, igual que el de decodificación, es
realizado por el software apropiado y es totalmente transparente para el usuario.
La Tabla 1 contiene las definiciones de los AI con sus formatos asociados, que se indican
con la siguiente convención:
a: caracteres alfabéticos.
n: caracteres numéricos.
an: caracteres alfanuméricos.
ax: x caracteres alfabéticos, longitud fija.
nx: x caracteres numéricos, longitud fija.
anx: x caracteres alfanuméricos, longitud fija.
a..x: hasta x caracteres alfabéticos, longitud variable.
n..x: hasta x caracteres numéricos, longitud variable.
an..x: hasta x caracteres alfanuméricos, longitud variable.
y: en los AI que se refieren a medidas indica la cantidad de cifras decimales a contar desde
el final del campo de datos hacia la izquierda.
Las fechas se expresan en el formato AAMMDD. Todo valor de AA en el intervalo [00,
50] se refiere a los años 2000 a 2050, mientras que valores en el intervalo [51, 99] indican
años entre 1951 y 1999. Si en una fecha se desea expresar solamente año y mes, en el campo
DD se debe colocar 00.
En la tabla, en la columna formato, el primer término indica la cantidad de dígitos
numéricos del AI (pueden ser 2, 3 o 4) y el segundo término el tipo y cantidad de caracteres
del campo que le sigue. Por ejemplo el AI 10 significa que el campo que le sigue es un
número de lote que puede tener hasta 20 caracteres alfanuméricos.

Identificadores de Aplicación
AI Descripción Formato
00 Código Seriado de Contenedor de Embarque (SSCC 1) n2+n18
01 Código GTIN 2 del artículo n2+n14
Número de artículo GTIN de productos contenidos dentro de otra unidad (acompañado
02 n2+n14
obligatoriamente del AI 37)
10 Número de lote o partida n2+an..20
11 Fecha de producción (AAMMDD) n2+n6
12 Fecha de pago (AAMMDD) n2+n6
13 Fecha de envasado (AAMMDD) n2+n6
15 Fecha de mínima duración (AAMMDD) n2+n6
17 Fecha de máxima duración (AAMMDD) n2+n6
20 Variante del producto n2+n2
21 Número de serie n2+an..20
22 HIBCC 3 – cantidad, fecha, lote y conexión n2+an..29
240 Identificación adicional del producto n3+an..30
241 Número de producto asignado por el cliente n3+an..30
242 Número de variación en Made-to-Order n3+n..6
250 Número de serie secundario n3+an..30

36 Clasificación y Codificación de Productos.  2012 R. Morán.


251 Referencia de origen de la entidad n3+an..30
253 Identificador Mundial de Tipo de Documento (GDTI 4) n3+n13+n..17
254 Componente de extensión de GLN 5 n3+n..20
30 Cantidad variable n2+n..8
310y Peso neto del producto en kilogramos n4+n6
311y Longitud de la 1ª dimensión del producto, en metros n4+n6
312y Ancho, diámetro o 2ª dimensión del producto, en metros n4+n6
313y Profundidad, espesor, altura o 3ª dimensión del producto, en metros n4+n6
314y Área del producto, en metros cuadrados n4+n6
315y Volumen neto del producto, en litros n4+n6
316y Volumen neto del producto, en metros cúbicos n4+n6
320y Peso neto del producto, en libras n4+n6
321y Longitud de la 1ª dimensión del producto, en pulgadas n4+n6
322y Longitud de la 1ª dimensión del producto, en pies n4+n6
323y Longitud de la 1ª dimensión del producto, en yardas n4+n6
324y Ancho, diámetro o 2ª dimensión del producto, en pulgadas n4+n6
325y Ancho, diámetro o 2ª dimensión del producto, en pies n4+n6
326y Ancho, diámetro o 2ª dimensión del producto, en yardas n4+n6
327y Profundidad, espesor, altura o 3ª dimensión del producto, en pulgadas n4+n6
328y Profundidad, espesor, altura o 3ª dimensión del producto, en pies n4+n6
329y Profundidad, espesor, altura o 3ª dimensión del producto, en yardas n4+n6
330y Peso bruto del contenedor, en kilogramos n4+n6
331y Longitud de la 1ª dimensión del contenedor, en metros n4+n6
332y Ancho, diámetro o 2ª dimensión del contenedor, en metros n4+n6
333y Profundidad, espesor, altura o 3ª dimensión del contenedor, en metros n4+n6
334y Área del contenedor, en metros cuadrados n4+n6
335y Volumen del contenedor, en litros n4+n6
336y Volumen del contenedor, en metros cúbicos n4+n6
340y Peso bruto del contenedor, en libras n4+n6
341y Longitud de la 1ª dimensión del contenedor, en pulgadas n4+n6
342y Longitud de la 1ª dimensión del contenedor, en pies n4+n6
343y Longitud de la 1ª dimensión del contenedor, en yardas n4+n6
344y Ancho, diámetro o 2ª dimensión del contenedor, en pulgadas n4+n6
345y Ancho, diámetro o 2ª dimensión del contenedor, en pies n4+n6
346y Ancho, diámetro o 2ª dimensión del contenedor, en yardas n4+n6
347y Profundidad, espesor, altura o 3ª dimensión del contenedor, en pulgadas n4+n6
348y Profundidad, espesor, altura o 3ª dimensión del contenedor, en pies n4+n6
349y Profundidad, espesor, altura o 3ª dimensión del contenedor, en yardas n4+n6
350y Área del producto, en pulgadas cuadradas n4+n6
351y Área del producto, en pies cuadrados n4+n6
352y Área del producto, en metros cuadrados n4+n6
353y Área del contenedor, en pulgadas cuadradas n4+n6
354y Área del contenedor, en pies cuadrados n4+n6
355y Área del contenedor, en metros cuadrados n4+n6
356y Peso neto del producto, en onzas troy n4+n6
357y Peso neto del producto, en onzas n4+n6
360y Volumen neto del producto, en cuartos n4+n6
361y Volumen neto del producto, en galones n4+n6
362y Volumen del contenedor, en cuartos n4+n6
363y Volumen del contenedor, en galones EE.UU. n4+n6
364y Volumen del producto, en pulgadas cúbicas n4+n6
365y Volumen del producto, en pies cúbicos n4+n6
366y Volumen del producto, en yardas cúbicas n4+n6
367y Volumen del contenedor, en pulgadas cúbicas n4+n6
368y Volumen del contenedor, en pies cúbicos n4+n6

Clasificación y Codificación de Productos.  2012 R. Morán. 37


369y Volumen del contenedor, en yardas cúbicas n4+n6
37 Cantidad n2+n..8
390y Pago total - área moneda única n4+n..15
391y Pago total - con código frecuente ISO n4+n3+n..15
392y Pago total - condiciones comerciales variables- área moneda única n4+n..15
393y Pago total - condiciones comerciales variables- código frecuente ISO n4+n3+n..15
400 Número de pedido del cliente n3+an..30
401 Número de consignación n3+an..30
402 Número de Identificación del envío n3+n17
403 Código de ruta n3+an..30
410 Expedir a (entregar a) punto operacional empleando GTIN-13 n3+n13
411 Facturar a (cargar en cuenta) punto operacional empleando GTIN-13 n3+n13
412 Comprado a (punto operacional donde se realiza la compra) empleando GTIN-13 n3+n13
413 Expedir para (entregar para – remitir a) punto operacional empleando GTIN-13 n3+n13
414 Punto operacional empleando GTIN-13 n3+n13
415 Punto operacional GLN de la línea de factura n3+n13
420 Expedir a (entregar a) código postal dentro de una única Autoridad Postal n3+n..20
421 Expedir a (entregar a) código postal precedido del código del país ISO (3 dígitos) n3+n3+an..12
422 País de origen del producto (código ISO del país) n3+n3
423 País del proceso inicial n3+n3+n..12
424 País de procesamiento n3+n3
425 País de desmontaje n3+n3
426 País de la cadena de proceso completa n3+n3
7001 Número de Inventario de la OTAN (NSN) n4+n13
7002 Clasificación de los cortes de carne CEPE / ONU n4+n..30
7003 Fecha de y tiempo de vencimiento n4+n10
7004 Potencia activa n4+n..4
703s Aprobación del procesador (con el código ISO del país) - s es el número de secuencia n4+n3+an..27
8001 Productos bobinados - anchura, longitud, diámetro del núcleo, dirección y empalmes n4+n14
8002 Número de serie electrónico para teléfonos móviles celulares n4+an..20
8003 Identificador Mundial de Bienes Retornables (GRAI 6) n4+n14+an..16
8004 Identificador Mundial de Bienes Individuales (GIAI 7) n4+an..30
8005 Precio por unidad de medida n4+n6
8006 Componente de un artículo n4+n14+n2+n2
8007 Número Internacional de Cuenta Bancaria (IBAN 8) n4+an..30
8008 Fecha y tiempo de producción n4+n8+n..4
8018 Número Global de Relación de Servicios (GSRN 9) n4+n18
8020 Número de referencia del pago n4+an..25
8100 Código de cupón extendido - NSC 10 + código de oferta n4+n1+n5
8101 Código de cupón extendido - NSC + código de oferta + fin del código de oferta n4+n1+n5+n4
8102 Código de cupón extendido - NSC (número de sistema precedido por 0) n4+n1+n1
8110 Identificación del código cupón (América del Norte) n4+n..30
90 Información mutuamente convenida entre las partes comerciales n2+an..30
91-99 Códigos internos de la empresa n2+an..30
1
SSCC: Serial Shipping Container Code.
2
GTIN: Global Trade Item Number.
3
HIBCC: Health Industry Business Communications Council.
4
GDTI: Global Document Type Identifier.
5
GLN: Global Location Number.
6
GRAI: Global Returnable Asset Identifier.
7
GIAI: Global Individual Asset Identifier.
8
IBAN: International Bank Account Number.
9
GSRN: Global Service Relation Number.
10
NSC: Numerical System Character.
Tabla 1
38 Clasificación y Codificación de Productos.  2012 R. Morán.
Ejemplo 21
En la Tabla 1 vemos que el AI 00 indica que los datos que siguen constituyen un SSCC de
longitud fija de 18 dígitos numéricos, por ejemplo (00)077912340000056989.
Después del AI 00 el primer 0 significa que es una caja de cartón, 7791234 es el Prefijo de
Empresa del fabricante, 000005698 el Número de Serie del contenedor, y el último 9 es el
dígito de control módulo 10 del SSCC.

Ejemplo 22
Supongamos un producto identificado con el siguiente código GTIN-14: 97791234000121.
El Indicador 9 significa que el artículo es de cantidad variable, el prefijo de Empresa es
7791234, la Referencia del Artículo es 00012 y el dígito de control es 1. En este caso de
cantidad variable es necesario especificar la cantidad o el peso. Por ejemplo, en un cajón de
frutas se debe indicar el peso.
Si bien el peso se podría especificar por separado, los AI permiten expresar toda la
información en un único código. En la Tabla 1 vemos que el AI para el GTIN de un artículo
es 01, con el formato de 2 dígitos para el AI y 14 dígitos para el GTIN (para los códigos
GTIN-13, 12 y 8 se los debe rellenar con ceros a la izquierda hasta completar 14 dígitos).
También encontramos que el AI 310y indica el peso neto en kilogramos, con un formato de 4
dígitos para el AI y 6 para el peso, donde y señala la cantidad de cifras decimales en el peso.
Supongamos entonces que nuestro producto es un cajón cuyo contenido neto es de 23,670
Kg. El código completo resulta entonces: (01)97791234000121(3103)023670.

Ejemplo 23
Supongamos el código (00)177912340056789128(21)2548MW. El contenedor es un palé y
el AI 21 significa que el campo que sigue es un número de serie del producto de longitud
variable y de hasta 20 caracteres alfanuméricos.

Ejemplo 24
En el código (10)JC-938(11)111215 el AI 10 indica que se trata del lote JC-938 y el 11 que
la fecha de fabricación fue el 15/12/2011.

Los ejemplos anteriores muestran solamente algunos casos de aplicación de los AI para
ilustrar su funcionamiento. Para la correcta interpretación de todos los AI se deben consultar
los manuales correspondientes en la organización GS1.
Finalmente, es muy importante remarcar la característica fundamental de los AI: permitir
reunir información de distinta naturaleza en un único código.

5 PORTADORES DE DATOS PARA CÓDIGOS


Recordemos que en la identificación y clasificación de productos lo esencial es la
codificación; los portadores de datos son medios que cambian con la evolución de las
tecnologías. Sin embargo, estos medios son imprescindibles para procesar los códigos en

Clasificación y Codificación de Productos.  2012 R. Morán. 39


forma automática, incrementando significativamente la velocidad, eficiencia y precisión en la
recolección y el ingreso de datos.
En muchos casos un mismo código puede ser representado por diferentes clases de
portadores, dependiendo del uso que se hará de él. En otros casos los medios portadores
condicionan la codificación; por ejemplo, no todas las simbologías de códigos de barras son
aplicables en códigos con Identificadores de Aplicación.
Los portadores más utilizados actualmente son los códigos de barras y las etiquetas para
códigos electrónicos e identificación por radiofrecuencia EPC/RFID (Electronic Product
Code / Radio-Frequency Identification).

5.1 Códigos de barras


Los códigos de barras permiten la lectura y transmisión de datos de artículos de todo tipo.
Leídos mediante escáneres apropiados, la información que contienen es decodificada e
ingresada en los sistemas de información de manera rápida, simple y segura. La velocidad de
lectura de un escáner es muchísimo más alta que la del ingreso manual de datos del mejor
operador humano. Respecto de la precisión, en el ingreso manual de datos se tiene, en
promedio, un error cada 300 digitaciones, mientras que en el escaneo esta proporción es del
orden de 1 en 3 millones.
Las aplicaciones de los códigos de barras, que inicialmente se reducían a los puntos de
venta minorista y el control de las existencias, se han extendido a otras áreas como el control
de trabajos en proceso, control de la calidad, ingreso de pedidos y despachos, seguimiento de
documentos y productos, control de acceso en zonas de seguridad, etc.
Los códigos de barras son una simbología para representar los códigos de las entidades.
Hay diferentes simbologías que tienen distintas características, como el conjunto de caracteres
que pueden representar y la eficiencia en la codificación.
Algunas simbologías están vinculadas exclusivamente con un determinado tipo de código,
y por eso se los presenta habitualmente en forma conjunta en la bibliografía. Sin embargo,
dado que otras simbologías son de uso completamente general, aplicables a distintos tipos de
códigos, y por las razones ya expuestas sobre los códigos y los medios para representarlos, las
trataremos por separado.
Las simbologías de códigos de barras pueden codificar distintos conjuntos de caracteres.
Hay cuatro conjuntos de caracteres: numérico (solamente dígitos decimales); alfanumérico
(dígitos decimales, letras y algunos caracteres de puntuación); ASCII (128 caracteres); y
binario (conjunto de los 256 caracteres de 8 bits). La mayoría de las simbologías
bidimensionales son capaces de codificar datos binarios y algunas de ellas pueden codificar
miles de caracteres.
En lo que sigue veremos las estructuras de codificación de algunas simbologías
ampliamente utilizadas en la industria, comenzando por las lineales o unidimensionales. No
entraremos en detalles técnicos relacionados con el software para la generación y
decodificación de los códigos de barras. Estos programas hacen que dicha generación y
decodificación sean totalmente transparentes para el usuario y forman parte de los sistemas de
información correspondientes.

40 Clasificación y Codificación de Productos.  2012 R. Morán.


5.1.1 Códigos de barras lineales
Un código de barras convencional unidimensional, o lineal, es un conjunto de barras y
espacios paralelos adyacentes de distintos anchos. Es importante destacar que los espacios
también codifican información, igual que las barras.
La estructura básica de los códigos de barras consiste de un símbolo de comienzo, los
símbolos de datos, que representan la información del código propiamente dicho, y un
símbolo de fin de código. Algunas simbologías pueden incluir un símbolo para un carácter de
control. Antes del comienzo y después del final del código deben quedar espacios en blanco,
llamados zonas calmas, para una correcta separación de otros códigos.
Veremos los más utilizados en la codificación de productos y, especialmente, los que están
asociados con los estándares GS1.

5.1.1.1 Códigos EAN


Son las simbologías estándares de la Organización GS1 para los códigos GTIN-13, GTIN-
12 y GTIN-8. La Figura 9 es un ejemplo de los códigos EAN-13 y EAN-8, ampliados, donde
el símbolo > indica las zonas calmas.

Figura 9

La simbología EAN-13 tiene la siguiente estructura de barras. Los dígitos se dividen en


tres grupos o segmentos: el primer dígito, los seis siguientes y los seis últimos. El primer
dígito no se codifica sino indirectamente, los dos segmentos de seis se codifican de distinta
manera para asegurar que el código pueda ser leído correctamente cualquiera sea la posición
frente al escáner.
Las barras y los espacios pueden tener cuatro anchos distintos. El ancho de la barra más
angosta es la llamada dimensión X (valor nominal X = 0,33 mm). Cada dígito se codifica con
2 barras y 2 espacios, pero de manera tal que sumen siempre 7X. Para indicar una barra de un
1X utilizaremos el 1 y para un espacio de un 1X el 0. Así, por ejemplo, con 1110010
estaremos indicando una barra de 3X, seguida de un espacio de 2X, una barra de 1X y un
espacio de 1X, que totalizan 7X.
El comienzo y el final del código se marcan con dos guardas con la estructura 101 (barra-
espacio-barra, todos de 1X) y los dos grupos de seis dígitos se separan con una guarda 01010
(espacio-barra-espacio-barra-espacio, todos de 1X).
Para codificar cada uno de los dígitos del primer segmento hay dos patrones posibles,
denominados de paridad impar y de paridad par porque las dos barras de cada símbolo
suman, respectivamente, un número impar o par de X. Estos dos patrones, que también se
denominan, Código L y Código G, respectivamente, están dados por la Tabla 2 de la página
siguiente. La tabla también contiene los patrones del Código R, de paridad par, utilizado para
los seis dígitos del segundo segmento del código.

Clasificación y Codificación de Productos.  2012 R. Morán. 41


El primer dígito del código define la combinación de patrones de L y G que se utilizan para
los seis dígitos del primer segmento, de acuerdo con la Tabla 3. Es decir, el primer dígito
queda codificado indirectamente al definir los patrones de codificación de este segmento.

Codificación de los dígitos Estructura EAN-13


Dígito Código L Código G Código R Primer Primer grupo Segundo grupo
0 0001101 0100111 1110010 dígito de 6 dígitos de 6 dígitos
1 0011001 0110011 1100110 0 LLLLLL RRRRRR
2 0010011 0011011 1101100 1 LLGLGG RRRRRR
3 0111101 0100001 1000010 2 LLGGLG RRRRRR
4 0100011 0011101 1011100 3 LLGGGL RRRRRR
5 0110001 0111001 1001110 4 LGLLGG RRRRRR
6 0101111 0000101 1010000 5 LGGLLG RRRRRR
7 0111011 0010001 1000100 6 LGGGLL RRRRRR
8 0110111 0001001 1001000 7 LGLGLG RRRRRR
9 0001011 0010111 1110100 8 LGLGGL RRRRRR
9 LGGLGL RRRRRR
Tabla 2
Tabla 3

Ejemplo 25
Retomemos el código 7791234567898 de la Figura 9. El primer dígito 7 define que los
patrones para el primer segmento de 6 dígitos siguientes son LGLGLG, de acuerdo con la
Tabla 3. Esto es: el dígito 7 se codifica según el Código L, es decir 0111011 (espacio de 1X,
barra de 3X, espacio de 1X y barra de 2X); el dígito 9 con el Código G, es decir 0010111
(espacio de 2X, barra de 1X, espacio de 1X y barra de 3X); el dígito 1 con el Código L,
0011001 (espacio de 2X, barra de 2X, espacio de 2X y barra de 1X); para el 2 resulta
0011011 (espacio de 2X, barra de 2X, espacio de 1X y barra de 2X); el 3 es 0111101 (espacio
de 1X, barra de 4X, espacio de 1X y barra de 1X) y el 4 es 0011101 (espacio de 2X, barra de
3X, espacio de 1X y barra de 1X).
El segundo segmento de seis dígitos utiliza siempre los patrones del Código R. Así, para el
5 es 1001110 (barra de 1X, espacio de 2X, barra de 3X y espacio de 1X); el 6 es 1010000
(barra de 1X, espacio de 1X, barra de 1X y espacio de 4X). Y análogamente los demás.

El código EAN-8 utiliza los patrones del Código L para los cuatro dígitos del primer
segmento y los patrones del Código R para los cuatro del segundo segmento. Los demás
detalles de la estructura son los del EAN-13.

Observaciones
Todos los patrones para los dígitos del primer segmento (Códigos L y G) comienzan con
un espacio y terminan con una barra; esto es consistente con la guarda de comienzo del
código, que termina con una barra, y con la guarda central, que comienza con un espacio.
Todos los patrones para los dígitos del segundo segmento (Código R) comienzan con una
barra y terminan con un espacio; esto concuerda con la guarda central, que termina con un
espacio, y con la guarda de fin de código, que comienza con una barra.
Los patrones del Código R son los mismos del Código L intercambiando barras por
espacios. Los patrones del Código G son los del Código R en orden inverso.
Si el primer dígito del código es 0, todos los dígitos del primer segmento se codifican
según el Código L, que es el código original UPC-A de 12 dígitos. Por lo tanto, el código

42 Clasificación y Codificación de Productos.  2012 R. Morán.


UPC-A queda como un caso particular del código EAN-13 cuando el primer dígito es 0. En
este sentido es interesante recordar que el código original fue el UPC-A, utilizado en EE.UU.
y Canadá, y que para internacionalizarlo se agregó un dígito que es el prefijo de país (o forma
parte de él). Esta es la razón por la que se siguen codificando con barras únicamente 12
dígitos, y para incorporar este nuevo primer dígito se cambió la forma de definir los patrones
para el primer segmento de seis, incorporando las combinaciones del Código L con el Código
G.
Los códigos EAN-13 pueden tener un agregado opcional de 2 o 5 dígitos para aportar
información adicional. Esto es muy utilizado en las
publicaciones periódicas y también en libros. La Figura
10 es un ejemplo.
La codificación de estos aditamentos, aunque utiliza
también los patrones de los Códigos L y R, tiene una
estructura diferente (incluso distinta para 2 y 5 dígitos)
en cuyos detalles no vamos a entrar. Figura 10

El tamaño nominal de impresión del código EAN-13 es de 37,29 mm de ancho (incluidas


las zonas calmas) por 26 mm de alto. El código puede ser impreso con un factor de
magnificación de entre 0,8 y 2 (entre 80 % y 200 %). En el caso de transportadores, en los que
los códigos deben ser leídos desde mayor distancia, se debe usar un factor de magnificación
de al menos 150 %.

5.1.1.2 Código 25 intercalado (ITF: Interleaved Two of Five)


ITF, o 2 de 5 intercalado, es una simbología para códigos numéricos de cualquier número
(par) de dígitos.
ITF codifica pares de dígitos; el primer dígito de cada par es codificado con cinco barras,
el segundo dígito con los cinco espacios intercalados en las barras del primero. Dos de las
cinco barras (o espacios) son anchas y las otras tres angostas. De estas características deriva el
nombre “2 de 5 intercalado”. La dimensión de los elementos angostos es X y la de los anchos
de 2X a 3X, es decir, la relación entre los elementos anchos y los angostos es de 2:1 a 3:1.
Como los dígitos se codifican por pares solamente se pueden representar códigos con un
número par de dígitos. Si el número es impar, en la mayoría de los casos se puede agregar un
0 como primer dígito sin alterar el contenido del código.
0 7
Puesto que el código a representar no es de longitud fija, se
debe indicar el comienzo del código de barras con un símbolo de
inicio, formado por cuatro elementos, todos de 1X: barra-espacio-
barra-espacio; la terminación del código se indica con el símbolo
de fin, de tres elementos: barra ancha-espacio de 1X-barra de 1X.
Indicando con “e” un elemento angosto (barra o espacio) y con
“E” uno ancho, la Tabla 4 (en la página siguiente) muestra los Com. Fin
símbolos para cada dígito decimal. La Figura 11 es un ejemplo de 9 2
cómo se codifican los dígitos, con elementos en la relación 3:1. Figura 11
Las posiciones de los dos elementos anchos dentro de cada
símbolo se pueden determinar con la siguiente regla mnemotécnica. Utilizando los pesos
asignados a las posiciones que figuran en la última fila de la Tabla 4, las posiciones de los
elementos anchos deben ser tales que la suma de los pesos correspondientes sea igual al dígito

Clasificación y Codificación de Productos.  2012 R. Morán. 43


representado. Si la suma da 11 se reemplaza por 0. La última columna es la verificación
verifica de
estos cálculos.
Esta simbología es muy eficiente para
ITF - Codificación de los dígitos
Anchos de las Regla
representar códigos numéricos y es utilizada
Dígito ampliamente en la codificación de artículos y
barras o espacios mnemotécnica
0 e e E E e 4 + 7 = 11 (0) en todo tipo de documentos.
1 E e e e E 1+0=1
2 e E e e E 2+0=2
El valor nominal de los elementos angostos
3 E E e e e 1+2=3 es de X = 0,33 mm y la altura nominal del
4 e e E e E 4+0=4 código de 10 mm. Las zonas calmas deben ser
5 E e E e e 1+4=5 de al menos 8X. La Figura 12 es un ejemplo
6 e E E e e 2+4=6 de código de un artículo con esas dimensiones
7 e e e E E 7+0=7
y elementos anchos en la
8 E e e E e 1+7=8
relación 2:1. En muchos
9 e E e E e 2+7=9
Pesos 1 2 4 7 0 casos el código se reduce por
razones de espacio. La
Tabla 4 dimensión mínima es X = Figura 12
0,191 mm.

Ejemplo 26
Para facturas y comprobantes equivalentes la AFIP ha establecido que el código de
identificación, que se expresará mediante un código de barras ITF, estará formado por: el
CUIT delel emisor (11 dígitos), el código de tipo de comprobante (2 dígitos), el punto de venta
(4 dígitos), el código de autorización de impresión (14 dígitos), la fecha de vencimiento (8
dígitos) y un dígito de control, calculado
módulo 10 sobre los 39 dígitos anteriores.
a
Resulta así un código de 40 dígitos que es
en rigor una cadena de códigos, algunos
de los cuales tiene su propio dígito de Figura 13
control. La Figura 13 muestra un ejemplo.

5.1.1.3 Código ITF-14


La simbología ITF-14
14 es un estándar de la Organización GS1 para el código GTIN-14,
GTIN que
puede ser usada cuando la calidad del material en el que se debe imprimir el código, por
ejemplo cajas de cartón corrugado, no es es lo suficientemente buena como para lograr una
correcta impresión con otras simbologías. La Figura 14 es un ejemplo de esta aplicación.
ITF-14
14 ofrece una buena solución para este tipo de
materiales porque su estructura es menos compleja
que las de otras simbologías y, por lo tanto, tiene una
mayor tolerancia ante cualquier distorsión que el
proceso de impresión pueda causar.
Figura 14
No es una simbología aplicable en los puntos de
venta minorista. Sus dimensiones nominales, sin incluir el recuadro, son: ancho 142,75 mm
(incluidas las zonas calmas), alto 32 mm y X = 1,016 mm.

44 Clasificación y Codificación de Productos.


Produc  2012 R. Morán.
5.1.1.4 Código 39
El código 39, o “3 de 9”, fue la primera simbología
simbología para códigos alfanuméricos de
aplicación general en la industria, no para puntos de venta minorista. El conjunto de
caracteres que se pueden utilizar en los códigos alfanuméricos está formado por las 26 letras
mayúsculas del alfabeto inglés, los 10 dígitos decimales y 7 caracteres especiales: -, . , $, /, +,
% y el espacio. Dado que los códigos son de longitud variable, se utiliza el asterisco (*) para
indicar el comienzo y fin de los códigos de barras pero no forma parte del conjunto de
caracteress para los códigos alfanuméricos.
Cada carácter se codifica con símbolos compuestos por nueve elementos, cinco barras y los
cuatro espacios comprendidos por ellas. Tres de los nueve elementos son anchos y los demás
angostos; de ahí el nombre del código. La relación entre las dimensiones de los elementos
anchos y los angostos puede ser de 2:1 a 3:1.
Si indicamos con 0 los elementos angostos (barras o espacios) y con 1 los anchos, teniendo
en cuenta que cada símbolo comienza y termina con una barra y se alternan
alternan barras y espacios,
podemos indicar los patrones con la notación de la Tabla 5.. Por ejemplo: 000110100 es una
barra angosta, un espacio angosto, una barra angosta, un espacio ancho, una barra ancha, un
espacio angosto, una barra ancha, un espacio angosto y una barra angosta; es el símbolo del
dígito 0.

Código 39 - Codificación de los caracteres


Carácter Patrón Carácter Patrón Carácter Patrón Carácter Patrón
0 000110100 B 001001001 M 101000010 X 010010001
1 100100001 C 101001000 N 000010011 Y 110010000
2 001100001 D 000011001 O 100010010 Z 011010000
3 101100000 E 100011000 P 001010010 - 010000101
4 000110001 F 001011000 Q 000000111 . 110000100
5 100110000 G 000001101 R 100000110 (espacio) 011000100
6 001110000 H 100001100 S 001000110 $ 010101000
7 000100101 I 001001100 T 000010110 / 010100010
8 100100100 J 000011100 U 110000001 + 010001010
9 001100100 K 100000011 V 011000001 % 000101010
A 100001001 L 001000011 W 111000000 * 010010100

Tabla 5

Es importante observar que, como consecuencia de que cada símbolo comienza y termina
con una barra, entre ellos debe haber necesariamente un espacio de separación. Estos espacios
son angostos y están incluidos en las fuentes de impresión de los símbolos del
de código; caso
contrario no se lo podría leer. La Figura 15 muestra un ejemplo de esta simbología aplicada a
un artículo identificado con el código ABC-123456.
ABC
La asimetría del símbolo del asterisco que se utiliza
para marcar el comienzo y el fin del código permite
determinar la dirección correcta del código de barras en el
proceso de escaneo.
El Código 39 básico no incluye carácter de control, Figura 15
pero se lo puede considerar autocontrolado porque un
error simple en la interpretación de una barra o espacio no genera otro símbolo válido. No
obstante, se ha desarrollado una versión con la opción de generar automáticamente un carácter

Clasificación y Codificación de Productos..  2012 R. Morán. 45


de control módulo 43. Otra versión, conocida como Código 39 Extendido, es una extensión
del código original para que sea capaz de codificar los 128 caracteres ASCII.
No vamos a considerar estas ampliaciones porque el Código 39, si bien todavía es
ampliamente utilizado y puede ser decodificado por prácticamente todos los escáneres, está
siendo paulatinamente reemplazado por otras simbologías. La razón principal es su baja
densidad de datos, esto es, requiere más espacio que otros códigos, por ejemplo el Código
128, para codificar la misma información.

5.1.1.5 Código 128


El Código 128 es una simbología para códigos alfanuméricos de longitud variable, de alta
densidad, que incluye un carácter de control. Puede codificar todos los caracteres ASCII (128
caracteres) y, utilizando un carácter de extensión, puede incluir los caracteres latinos. Es uno
de los códigos más flexibles y seguros Su particular estructura permite codificar los datos
numéricos efectivamente en “doble densidad”: si el código contiene cuatro o más dígitos
numéricos consecutivos se utiliza un solo símbolo para codificar cada par de dígitos
numéricos. Además tiene funciones especiales, que no son datos, utilizadas para especificar
condiciones de interpretación dentro del código. La Figura 16 muestra la estructura general
del código.

2 3 4 5

1 1

1. Zona calma. 2. Carácter de inicio. 3. Datos codificados. 4. Carácter de control. 5. Carácter de fin de código.

Figura 16

Los caracteres se codifican con tres barras y tres espacios, excepto el de fin de código que
usa cuatro barras y tres espacios. Así, el código de cada carácter comienza con una barra y
termina con un espacio (salvo el de fin que termina con una barra). Para evitar confusiones
utilizaremos la expresión Código 128 o, simplemente, código, para referirnos al código de
barras completo, como el de la Figura 16, y los códigos individuales de los caracteres los
llamaremos símbolos de caracteres (SC).
Las barras y los espacios pueden tener cuatro anchos, medidos en unidades X, el ancho de
la barra más angosta. Los SC se estructuran de acuerdo con la siguiente regla: la suma de los
anchos de las barras debe ser un número par de X, la de los espacios un número impar, y el
total debe sumar 11X. El SC del símbolo de fin de código tiene una barra extra de 2X (el
ancho total es 13X).
Con esta regla de formación de los códigos se pueden obtener 108 SC distintos, de los
cuales se utilizan 107; 103 para datos (alfanuméricos y especiales), 3 para indicar el comienzo
de los códigos y 1 para marcar el fin de los códigos. Los SC para datos incluyen los caracteres
alfanuméricos, caracteres especiales, funciones utilizadas en varios estándares, y caracteres de
selección. Los 107 SC utilizados están numerados de 0 a 106; números que constituyen su
valor equivalente.
46 Clasificación y Codificación de Productos.  2012 R. Morán.
Para poder representar los 128 caracteres ASCII, las funciones y los caracteres especiales
con los 107 SC disponibles se utilizan tres juegos de caracteres: 128A, 128B y 128C. Los
juegos 128A y 128B son alfanuméricos (solamente las 26 letras del alfabeto inglés), mientras
que el 128C es numérico de doble densidad (codifica los dígitos numéricos por pares), con las
siguientes posibilidades:
• 128A: Caracteres ASCII 00 a 95 (0-9, A-Z y códigos de control), caracteres especiales,
de control y funciones.
• 128B: Caracteres ASCII 32 a 127 (0-9, A-Z, a-z), caracteres especiales y funciones.
• 128C: Números 00 a 99 (codifica cada dos dígitos con un código), caracteres especiales
y una función.
Si indicamos con 1, 2, 3 y 4 los anchos posibles para cada barra y espacio, en unidades X,
la Tabla 6 muestra en la última columna los SC, en la primera sus valores y en las tres
siguientes los correspondientes caracteres de los tres juegos. Por ejemplo, el SC 111323, esto
es: una barra de 1X, seguida de un espacio de 1X, luego una barra de 1X, un espacio de 3X,
una barra de 2X y un espacio de 3X, representa el carácter “A” en los juegos 128A y 128B y
el número “33” en el juego 128C.
Otra forma de indicar los SC es a través de los patrones de barras y espacios: se utiliza el 1
para indicar las barras de 1X y el 0 para los espacios de 1X. Así, por ejemplo, una barra de 3X
se indica 111, un espacio de 2X, 00, etc. El patrón para el SC correspondiente al carácter “A”
y el número “33” es entonces 10100011000. La penúltima columna de la Tabla 6 contiene
estos patrones.

Código 128
Valor Juego Juego Juego Código Carácter Patrón de Unidades X de
128A 128B 128C ASCII ASCII Barras/Espacios Barras/Espacios
0 Espacio Espacio 00 32 o 212 Espacio o Ô 11011001100 212222
1 ! ! 01 33 ! 11001101100 222122
2 " " 02 34 " 11001100110 222221
3 # # 03 35 # 10010011000 121223
4 $ $ 04 36 $ 10010001100 121322
5 % % 05 37 % 10001001100 131222
6 & & 06 38 & 10011001000 122213
7 ' ' 07 39 ' 10011000100 122312
8 ( ( 08 40 ( 10001100100 132212
9 ) ) 09 41 ) 11001001000 221213
10 * * 10 42 * 11001000100 221312
11 + + 11 43 + 11000100100 231212
12 , , 12 44 , 10110011100 112232
13 - - 13 45 - 10011011100 122132
14 . . 14 46 . 10011001110 122231
15 / / 15 47 / 10111001100 113222
16 0 0 16 48 0 10011101100 123122
17 1 1 17 49 1 10011100110 123221
18 2 2 18 50 2 11001110010 223211
19 3 3 19 51 3 11001011100 221132
20 4 4 20 52 4 11001001110 221231
21 5 5 21 53 5 11011100100 213212
22 6 6 22 54 6 11001110100 223112
23 7 7 23 55 7 11101101110 312131
24 8 8 24 56 8 11101001100 311222
25 9 9 25 57 9 11100101100 321122

Clasificación y Codificación de Productos.  2012 R. Morán. 47


26 : : 26 58 : 11100100110 321221
27 ; ; 27 59 ; 11101100100 312212
28 < < 28 60 < 11100110100 322112
29 = = 29 61 = 11100110010 322211
30 > > 30 62 > 11011011000 212123
31 ? ? 31 63 ? 11011000110 212321
32 @ @ 32 64 @ 11000110110 232121
33 A A 33 65 A 10100011000 111323
34 B B 34 66 B 10001011000 131123
35 C C 35 67 C 10001000110 131321
36 D D 36 68 D 10110001000 112313
37 E E 37 69 E 10001101000 132113
38 F F 38 70 F 10001100010 132311
39 G G 39 71 G 11010001000 211313
40 H H 40 72 H 11000101000 231113
41 I I 41 73 I 11000100010 231311
42 J J 42 74 J 10110111000 112133
43 K K 43 75 K 10110001110 112331
44 L L 44 76 L 10001101110 132131
45 M M 45 77 M 10111011000 113123
46 N N 46 78 N 10111000110 113321
47 O O 47 79 O 10001110110 133121
48 P P 48 80 P 11101110110 313121
49 Q Q 49 81 Q 11010001110 211331
50 R R 50 82 R 11000101110 231131
51 S S 51 83 S 11011101000 213113
52 T T 52 84 T 11011100010 213311
53 U U 53 85 U 11011101110 213131
54 V V 54 86 V 11101011000 311123
55 W W 55 87 W 11101000110 311321
56 X X 56 88 X 11100010110 331121
57 Y Y 57 89 Y 11101101000 312113
58 Z Z 58 90 Z 11101100010 312311
59 [ [ 59 91 [ 11100011010 332111
60 \ \ 60 92 \ 11101111010 314111
61 ] ] 61 93 ] 11001000010 221411
62 ^ ^ 62 94 ^ 11110001010 431111
63 _ _ 63 95 _ 10100110000 111224
64 NUL ` 64 96 ` 10100001100 111422
65 SOH a 65 97 a 10010110000 121124
66 STX b 66 98 b 10010000110 121421
67 ETX c 67 99 c 10000101100 141122
68 EOT d 68 100 d 10000100110 141221
69 ENQ e 69 101 e 10110010000 112214
70 ACK f 70 102 f 10110000100 112412
71 BEL g 71 103 g 10011010000 122114
72 BS h 72 104 h 10011000010 122411
73 HT i 73 105 i 10000110100 142112
74 LF j 74 106 j 10000110010 142211
75 VT k 75 107 k 11000010010 241211
76 FF l 76 108 l 11001010000 221114
77 CR m 77 109 m 11110111010 413111
78 SO n 78 110 n 11000010100 241112
79 SI o 79 111 o 10001111010 134111
80 DLE p 80 112 p 10100111100 111242
81 DC1 q 81 113 q 10010111100 121142
82 DC2 r 82 114 r 10010011110 121241
83 DC3 s 83 115 s 10111100100 114212

48 Clasificación y Codificación de Productos.  2012 R. Morán.


84 DC4 t 84 116 t 10011110100 124112
85 NAK u 85 117 u 10011110010 124211
86 SYN v 86 118 v 11110100100 411212
87 ETB w 87 119 w 11110010100 421112
88 CAN x 88 120 x 11110010010 421211
89 EM y 89 121 y 11011011110 212141
90 SUB z 90 122 z 11011110110 214121
91 ESC { 91 123 { 11110110110 412121
92 FS 92 124 10101111000 111143
93 GS } 93 125 } 10100011110 111341
94 RS ~ 94 126 ~ 10001011110 131141
95 US DEL 95 200 È 10111101000 114113
96 FNC3 FNC3 96 201 É 10111100010 114311
97 FNC2 FNC2 97 202 Ê 11110101000 411113
98 Shift B Shift A 98 203 Ë 11110100010 411311
99 Code C Code C 99 204 Ì 10111011110 113141
100 Code B FNC4 Code B 205 Í 10111101110 114131
101 FNC4 Code A Code A 206 Î 11101011110 311141
102 FNC1 FNC1 FNC1 207 Ï 11110101110 411131
103 Start A Start A Start A 208 Ð 11010000100 211412
104 Start B Start B Start B 209 Ñ 11010010000 211214
105 Start C Start C Start C 210 Ò 11010011100 211232
106 Stop (7 b/e) Stop (7 b/e) Stop (7 b/e) 211 Ó 1100011101011 2331112
107 No usado No usado No usado --- --- --- 211133

Tabla 6

De los 108 SC posibles el que no se utiliza es el 211133 para que la lectura del código
pueda ser bidireccional. En efecto si 211133 fuera un SC válido podría ser confundido con el
2331112, símbolo de fin de código, si se lo lee de derecha a izquierda. De todas maneras,
algunos códigos derivados del Código 128 que incluyen símbolos para funciones (como el
GS1-128 que veremos enseguida), no son de lectura bidireccional. Para separar los códigos en
la representación gráfica, la zona calma debe tener un ancho de al menos 10X.
Cada SC tendrá diferente significado de acuerdo con el juego de caracteres que se haya
especificado. Por ejemplo, el SC 413111 (valor 77) en el juego 128A representa “CR”
(carriage return), en el 128B la letra “m” y en el 128C el número “77”. Por lo tanto el código
de barras debe comenzar siempre por un SC de inicio (Start A, B o C) que identifica el juego
a utilizar. Luego siguen los SC de la información o datos propiamente dichos, el del carácter
de control (CC) y el de fin de código (Stop), que es siempre el mismo y es el único que tiene
13X. Por ejemplo, en la Figura 16 el SC de inicio es Start B (ver la Tabla 6) porque el código
es alfanumérico. En general, cuando el código es alfanumérico, los programas que generan los
códigos utilizan el juego 128B porque es más completo.
Se puede cambiar el juego de caracteres dentro del propio código de barras mediante un
SC de cambio: Code A, Code B y Code C. Por ejemplo, para codificar la información
ABC123456789 se comienza con el juego 128B (Start B), para los tres primeros caracteres
alfabéticos y el 1, y se pasa al 128C (Code C) para los cuatro pares de dígitos siguientes con
doble densidad. Este agrupamiento se debe a que el juego 128C es para pares de dígitos
numéricos, luego conviene incluir el 1 en la parte alfanumérica. Finalmente se debe calcular
el CC, colocar su correspondiente SC y agregar el SC de fin de código. La estructura del
código es la que muestra la Figura 17 en la página siguiente.

Clasificación y Codificación de Productos.  2012 R. Morán. 49


ABC1 2345678 CC

Start B Datos B Code C Datos C CC Stop

Figura 17

Los SC “Shift A” y “Shift B” se usan para cambiar entre los juegos A y B. Dentro de
caracteres del juego A “Shift B” significa que el patrón inmediato siguiente se interpreta
como perteneciente al juego B. Análogamente para “Shift A” dentro del juego B.
El Código 128 incluye cuatro funciones especiales. FNC1 (SC de valor 102) se utiliza en el
código GS1-128, como veremos luego, para indicar que el código se inicia con un
Identificador de Aplicación de 2, 3 o 4 dígitos, asignado por el organismo correspondiente,
que explica el significado de los dígitos siguientes. FNC2 (SC de valor 97, solamente en
128A y 128B) es utilizado para indicar a las lectoras de códigos almacenar los datos y
transmitirlos con el siguiente símbolo. FNC3 (SC de valor 96, únicamente en 128A y 128B)
está reservada para uso futuro y FNC4 (SC de valor 100 en 128B y 101 en 128A) se usa para
pasar al estándar ISO/IEC 8859-1, conocido también como Latin-1, que es el conjunto de
caracteres de 8 bits (256 caracteres) más utilizado. El uso de estas funciones depende del
software utilizado para la codificación/decodificación. En lo que sigue nos limitaremos a los
caracteres de la Tabla 6 y la función FNC1 únicamente.
La Tabla 6 se basa en el código ASCII básico de 7 bits (128 caracteres). En realidad
contiene los códigos ASCII básicos de 32 a 126, porque los caracteres de control (0 a 31) se
han incorporado en el juego de caracteres 128A, y se han agregado los códigos 200 a 211 del
estándar ISO/IEC 8859-1. Por esta razón si se quiere hallar el código ASCII equivalente del
valor de un SC se debe aplicar la siguiente regla: si el valor del SC es menor que 95 se le debe
sumar 32; si es mayor o igual a 95 se le debe sumar 105. Por ejemplo, al SC de valor 6 le
corresponde el código ASCII 6 + 32 = 38 que es el carácter “&”; al SC de valor 98 le
corresponde el código ASCII 98 + 105 = 203 que es el carácter “Ë”. La sexta columna de la
tabla ya tiene hecha esta sustitución. Para obtener el valor ASCII equivalente para los
caracteres de control, al valor de la columna 1 (valores 64 a 95) se le debe restar 64. Por
ejemplo el valor ASCII del carácter GS (Group Separator) es 93 – 64 = 29.

Carácter de control
El carácter de control (CC) es una suma ponderada módulo 103. Se calcula sumando los
productos de los valores de los símbolos por sus posiciones en el código, de izquierda a
derecha, y dividiendo en forma entera el resultado por 103; el resto de la división es el valor
del carácter de control cuyo SC se coloca al final. Obsérvese que de esta manera el SC del
carácter de control solamente puede tomar los valores de 0 a 102 y, por lo tanto, quedan
excluidos los caracteres de inicio y fin de código (ver Tabla 6). Las posiciones de los
caracteres se cuentan a partir del primero de datos, es decir sin incluir el de inicio, pero el
valor de este también se suma, es decir, se lo considera implícitamente con ponderación 1.

Ejemplo 27
Supongamos el código de producto ABC-123456. Dado que comienza con letras
mayúsculas se podría usar el juego de símbolos 128A o 128B, pero ya dijimos que, en
general, para códigos alfanuméricos los programas utilizan el 128B. El primer SC del código
será entonces Start B (valor 104) y después los SC para A (valor 33), B (valor 34), C (valor
50 Clasificación y Codificación de Productos.  2012 R. Morán.
35) y - (valor 13). Como los caracteres que siguen son numéricos se pasa al juego 128C (Code
C, valor 99) y se colocan a continuación los SC para 12, 34 y 56. Antes de poner el SC de fin
(Stop) se debe calcular el carácter de control y colocar el correspondiente SC. El cálculo se
muestra en la Tabla 7.

Carácter Valor Posición Valor × posición


Start B 104 - 104
A 33 1 33
B 34 2 68
C 35 3 105
- 13 4 52
Code C 99 5 495
12 12 6 72
34 34 7 238
56 56 8 448
Total: 1615
CC (resto de la división por 103): 70

Tabla 7

Ahora podemos completar la codificación de ABC-123456 en la simbología del Código


128, como muestra la tabla siguiente.

Carácter Valor Patrón de Unidades X de


Barras/Espacios Barras/Espacios
Start B 104 11010010000 211214
A 33 10100011000 111323
B 34 10001011000 131123
C 35 10001000110 131321
- 13 10011011100 122132
Code C 99 10111011110 113141
12 12 10110011100 112232
34 34 10001011000 131123
56 56 11100010110 331121
CC 70 10110000100 112412
Stop 106 1100011101011 2331112

Tabla 8

El código de barras resultante es el de la Figura 18.

St. B A B C - Cod.C 12 34 56 CC Stop

Figura 18

Clasificación y Codificación de Productos.  2012 R. Morán. 51


Observación. El carácter de control se calcula con los valores de los caracteres
codificados, independientemente de los juegos de caracteres utilizados, por lo tanto su valor
no se corresponde con ningún carácter en particular sino directamente con el patrón de barras.
Por esta razón no se lo puede imprimir para lectura humana.

Codificación, impresión y lectura


El software utilizado para la codificación debe realizar automáticamente, y de modo
totalmente transparente para el usuario, todas las funciones necesarias: seleccionar el juego de
caracteres de manera de lograr el código más corto, insertar los caracteres de inicio, cambio y
fin, calcular e insertar el carácter de control, etc., y convertir todos los caracteres en símbolos
de barras correspondientes.
En la impresión o representación en pantalla se muestra, junto al código de barras
completo, la información original para lectura de los usuarios, sin incluir el carácter de control
por la razón explicada antes. Los dispositivos de lectura realizan el proceso inverso:
decodifican el código de barras para obtener la información original.
Las dimensiones de impresión son las siguientes. El valor de X debe estar entre 0,25 y
1 mm. Si X está entre 0,25 y 0,4 mm, la altura del código debe ser de 12,7 mm; si es mayor
que 0,4 mm, la altura debe ser de 32 mm. En los ejemplos utilizados aquí los códigos están
ampliados a los efectos de poder mostrar detalles.
Para la lectura con escáneres manuales se recomienda utilizar las dimensiones menores:
X = 0,25 mm y altura 12,7 mm. El ancho total del código no debe superar los 165 mm. Si los
códigos deben ser leídos desde mayor distancia, como en el caso de transportadores, los
códigos deben ser ampliados: mínimo X = 0,495 mm y altura mínima del código 32 mm.

5.1.1.6 Código GS1-128


El código GS1-128 es una aplicación estándar de la Organización GS1 que usa el Código
128. Anteriormente se lo conoció como UCC/EAN-128. Su particularidad es que puede
representar códigos que utilizan Identificadores de Aplicación (AI) para identificar los datos,
de manera que en un mismo código puede haber datos de distinta naturaleza. Está limitado a
un máximo de 48 caracteres alfanuméricos y es de lectura unidireccional.
Los códigos GS1-128 comienzan con la función FNC1 para indicar que es un estándar GS1
y distinguirlos de otros usos del Código 128. La función FNC1 es seguida por uno o más
campos de datos. Cada campo de datos comienza con un AI, que indica su naturaleza, seguido
de los datos propiamente dichos.
Observación. Si en un campo de longitud variable no se utiliza la longitud máxima y el
campo no es el último del código, se debe insertar FNC1 para indicar dónde termina.
Igual que en el Código 128, todo el proceso de codificación a partir de los códigos, en los
que los AI están indicados entre paréntesis, es realizado por el software correspondiente y es
totalmente transparente para el usuario. Todos los dispositivos que leen el Código 128 pueden
leer los GS1-128 y es la función FNC1 la que hace que sean interpretados como tales.

Ejemplo 28
Retomemos el Ejemplo 21 con el código (00)077912340000056989 correspondiente a una
caja de cartón. Dado que el código es numérico el juego de datos de comienzo será el 128C.
Inmediatamente después debe ir la FNC1 para indicar que se trata de un código GS1-128,
luego los datos, el carácter de control y el SC de fin de código.
52 Clasificación y Codificación de Productos.  2012 R. Morán.
Utilizando los símbolos < > para indicar las posiciones dentro del código en las que se
deben insertar los caracteres de control, funciones, datos, etc., la estructura del código es:
<Start C><FNC1><00077912340000056989><CC><Stop>
Si se calcula el CC del código resulta (ejercicio) el valor 50.
El código de barras es:

St. C FNC1 00 07 79 12 34 00 00 05 69 89 CC Stop

Figura 19

Ejemplo 29
El código del Ejemplo 22 es (01)97791234000121(3103)023670, correspondiente a un
cajón con cantidad variable en el que se debe especificar el peso. El último campo, el peso, es
de longitud fija (6 dígitos). Ambos campos son de longitud fija y no se requiere más que la
FNC1 inicial. La estructura del código es:
<Start C><FNC1><01977912340001213103023670><CC><Stop>
El CC resulta igual a 2. El código de barras es el de la Figura 20.

St. C FNC1 01977912340001213103023670 CC Stop

Figura 20

Ejemplo 30
En el Ejemplo 23 el código (00)177912340056789128(21)2548MW es el de un palé que
contiene un producto con número de serie 2548MW. El número de serie es de longitud
variable de hasta 20 caracteres alfanuméricos. Como es el último campo no requiere insertar
FNC1 para indicar su finalización. Los caracteres a codificar son:
<Start C><FNC1>00177912340056789128212548<Code B>MW<CC><Stop>
El código resulta:

Clasificación y Codificación de Productos.  2012 R. Morán. 53


St. C FNC1 00177912340056789128212548 Cod.B M W CC Stop

Figura 21

Ejemplo 31
En el Ejemplo 24 el código (10)JC-938(11)111215 es del lote JC-938 fabricado el
15/12/2011. Los datos a codificar son:
<Start C><FNC1><10><Code B><JC-9><Code C><38><FNC1><11101215><CC><Stop>
Al final del código del lote se debe insertar FNC1 porque es de longitud variable, no se
utiliza su longitud máxima y no es el último. El código es:
St. C FNC1 10 Cod.B J C - 9 Cod.C 38 FNC1 11 11 12 15 CC Stop

Figura 22

Ejemplo 32
El código (21)123456(11)110901(17)120630 se refiere al producto con número de serie
123456 fabricado el 01/09/2011 y con fecha de vencimiento 30/06/2012. El número de serie
es de longitud variable y no se utiliza su longitud máxima, se inserta FNC1. Entre las fechas
de fabricación y vencimiento no hace falta FNC1 porque son de longitud fija. Los caracteres a
codificar son:
<Start C><FNC1>21123456<FNC1>1111090117120630<CC><Stop>
El código es el de la Figura 23.
St. C FNC1 21123456 FNC1 1111090117120630 CC Stop

Figura 23

54 Clasificación y Codificación de Productos.  2012 R. Morán.


Etiqueta GS1-128
La etiqueta GS1-128 es la forma de estandarizar visiblemente la información del código
GS1-128. Así, el requisito imprescindible de este tipo de etiquetas es que toda la información
que contenga el código GS-128 también este representada con información humanamente
legible. Por ello, la etiqueta GS1-128 deberá llevar obligatoriamente:
1. La razón social de la empresa.
2. La información humanamente legible.
3. Las simbologías en códigos de barras de la información.
El tamaño recomendado es A6 (105 mm × 148 mm) pero también puede ser A5 (148 mm ×
210 mm) o más pequeñas (105 mm × 105 mm).
La dimensión X debe tener un valor mínimo
de 0,495 mm y puede llegar hasta 0,94 mm. La
Figura 24 muestra un ejemplo.
Es uno de los procedimientos estandarizados
para comunicar datos entre empresas de la forma
más segura y en un ámbito universal. Los AI
tienen el mismo significado en cualquier parte
del mundo, lo que hace que la codificación GS1-
128 sea un lenguaje común de intercambio de
información al mismo tiempo que una seguridad
a la hora de introducir los datos en los sistemas
informáticos.
Como ejemplo, un producto de consumo
unitario, con un código EAN-13, que contenga
un lote de fabricación y una fecha de caducidad,
será embalado en cajas que contendrán una
etiqueta exterior con los datos del producto
unitario. Del mismo modo, las cajas serán
transportadas en palés que tendrán la misma
información del producto unitario. Al final, toda
la información irá asociada a un código SSCC Figura 24
(Serial Shipping Container Code), que será la
matrícula única de ese palé en todo el mundo.

5.1.2 Estructura de datos en los códigos de barras GS1 que utilizan Identificadores
de Aplicación.
La estructura de datos que hemos visto en el Código GS1-128 se generaliza para todas las
simbologías de códigos de barras GS1 que usan AI, que veremos enseguida, con las ventajas
señaladas sobre la concatenación de códigos en una única cadena de caracteres.
La función FNC1 como primer carácter del símbolo (en el GS1-128 inmediatamente detrás
del carácter Start) indica que los datos están codificados de acuerdo con el estándar GS1. Este
indicador de comienzo está reservado en todo el mundo para aplicaciones del sistema GS1, lo
que hace posible distinguir los códigos GS1 de otros códigos no GS1.
En otra posición posterior, dentro de un símbolo GS1, FNC1 es un separador de campos
usado únicamente si el campo es de longitud variable, no se utiliza la longitud máxima y no es

Clasificación y Codificación de Productos.  2012 R. Morán. 55


el último del código. Cuando es un separador, el carácter FNC1 aparece en los datos
decodificados como <GS> (Goup Separator, carácter ASCII de valor 29).

Identificadores de Simbologías
Si bien el carácter FNC1 indica que el código es una simbología estándar GS1, se debe
indicar cuál de ellas es la utilizada en cada caso. Esta es la función de los Identificadores de
Simbologías.
Cuando se decodifica un código de barras el carácter FNC1 inicial no se representa en los
datos transmitidos, sino que se lo reemplaza por el Identificador de Simbología apropiado
que es generado por el escáner y es transmitido como un prefijo en el mensaje. El escáner
debe tener la capacidad de reconocer la simbología que ha escaneado y transmitir el
identificador de simbología correspondiente.
De acuerdo con la Norma ISO/IEC 15424 el Identificador de Simbología está compuesto
por tres caracteres: un carácter bandera (el símbolo ], valor ASCII 93), que indica que los dos
caracteres que siguen son un Identificador de Simbología; un carácter de código, que
especifica el tipo de simbología; y un carácter modificador, que indica el modo en que es
usada la simbología.
En el sistema GS1 los Identificadores de Simbologías, para las simbologías que pueden
utilizar AI, son los siguientes:

Identificadores de Simbologías que utilizan AI


]C1 = GS1-128
]e0 = GS1-DataBar
]e1 = GS1-Composite Symbols (con símbolo separador de caracteres codificado)
]e2 = GS1-Composite Symbols (con carácter de mecanismo de escape)
]d2 = GS1-DataMatrix
]Q3 = GS1-QR
Tabla 9

Ejemplo 33
El código del Ejemplo 32, Figura 23, se decodifica como:
]C121123456<GS>1111090117120630

Para las simbologías sin AI se tienen los siguientes Identificadores:

Identificadores de Simbologías que no utilizan AI


]E0 = EAN-13
]E1 = Símbolo adicional de 2 dígitos
]E2 = Símbolo adicional de 5 dígitos
]E3 = EAN-13 con símbolo adicional
]E4 = EAN-8
]I1 = ITF-14

Tabla 10

56 Clasificación y Codificación de Productos.  2012 R. Morán.


Desde luego que todo el proceso de codificación-decodificación es totalmente transparente
para el usuario. Especificado el tipo de simbología a utilizar, los datos se suministran con los
AI entre paréntesis, como hemos visto.

5.1.3 Códigos GS1-DataBar


DataBar
Los códigos GS1-DataBar
DataBar son otra familia de códigos de barras de la Organización GS1.
Facilitan la identificación con GTIN de pequeños artículos de consumo difíciles de marcar,
tales como alimentos frescos, medicamentos, etc. Además permiten transportar información
adicional como, por ejemplo, peso, precio, fecha de vencimiento y número de lote. Utilizan
barras de diferentes anchos
os como la simbología EAN, pero la codificación de los caracteres es
totalmente diferente, requiriendo menos espacio para los mismos datos.
Hay siete simbologías GS1-DataBar,
GS1 cinco de ellas son únicamente para códigos GTIN
(GTIN-12, GTIN-13, GTIN-14) 14) y las otras dos, llamadas expandidas, para códigos GTIN más
Identificadores de Aplicación. Estas últimas pueden reemplazar los códigos GS1-128
GS1 con
economía de espacio. La Tabla 11 resume las principales características de las simbologías
GS1-DataBar.

Variante Datos PV Aplicación Ejemplo


Omnidireccional GTIN-14 Sí Artículos
embalados
(01)07791234000128
Apilado GTIN-14 Sí Artículos
Omnidireccional embalados

(01)07791234000128
Expandido GTIN-1414 más AI. Sí Artículos con
Máximo: 74 dígitos num. información
o 41 caracteres alfanum. adicional (01)07791234000128(21)12345
Expandido GTIN-1414 más AI. Sí Artículos con
apilado Máximo: 74 dígitos num. información
o 41 caracteres alfanum. adicional

(01)97791234000121(3103)001500
(17)140600(21)12345
Truncado GTIN-14 No Pequeños
artículos (01)07791234000128

Apilado GTIN-14 No Pequeños


(01)07791234000128
artículos
Limitado GTIN-14
14 con Dígito No Pequeños
Indicador 1 únicamente. artículos (01)17791234001238

Tabla 11

Esta simbología puede ser utilizada en los puntos de venta (PV) minorista si cuentan con
los escáneres apropiados. Como los símbolos GS1-DataBar
GS1 utilizan 14 dígitos, si el punto de
venta minorista solamente utiliza 13 dígitos, el GTIN-14
GTIN 14 debe tener el dígito indicador igual a

Clasificación y Codificación de Productos..  2012 R. Morán. 57


0. Si el sistema de punto de venta minorista trabaja con 14 dígitos puede aceptar el GTIN-14
con otros dígitos indicadores distintos de 0.
Las tres últimas variantes de la Tabla 11 requieren escáneres lineales y por lo tanto no son
apropiadas para los PV minorista en los que los escáneres son omnidireccionales.
Todos los GS1-DataBar implican un AI igual a 01 (que indica que los datos que siguen
son un GTIN-14) pero no se codifica explícitamente en la simbología. Análogamente, para
reducir el espacio, el dígito de control del GTIN-14 queda implícito, no se codifica.
En los códigos no expandidos el GTIN se estructura en 4 segmentos, en lugar de 2 como en
el EAN. Estos códigos no requieren zona calma, únicamente un espacio de 1X. El valor de X
puede variar desde 0,13 mm hasta 1,01 mm. El mínimo depende de la definición de la
impresora, un valor típico es X = 0,25 mm. Con estas definiciones las dimensiones de los
códigos son:
• GS1-DataBar Omnidireccional: ancho 96X, alto 33X.
• GS1-DataBar Omnidireccional Apilado: ancho 50X, alto 69X (3X para el patrón de
separación).
• GS1-DataBar Truncado: ancho 96X, alto 13X.
• GS1-DataBar Stacked: ancho 50X, alto 13X (1X para el patrón de separación).
• GS1-DataBar Limitado: está limitado a GTIN-14 con Dígito Indicador igual a 1 (nivel de
agrupamiento en el embalaje), exclusivamente, y el GTIN-14 está codificado en 2
segmentos en lugar de 4. Las dimensiones son: ancho 74X, alto 10X.
Los símbolos GS1-DataBar Expandido o Expandido Apilado se utilizan en aplicaciones
donde se necesita otra información, además del GTIN-14, para identificar productos de
medida variable, por ejemplo: peso, precio, fecha de vencimiento, número de serie, etc.
Los símbolos GS1-DataBar Expandidos codifican los GTIN-14 de la misma manera que
los códigos no expandidos, más cualquier AI y sus datos asociados hasta un máximo de 74
dígitos numéricos o 41 caracteres alfanuméricos. Se codifican primero los AI con datos de
longitud fija y luego los de longitud variable, para minimizar el tamaño del código. Tampoco
requiere zonas calmas, sin embargo los elementos inicial y final son espacios.
El GS1-DataBar Expandido Apilado requiere que se especifique el número de segmentos
de datos por fila. Este número debe ser par y estar entre 2 y 22. El número máximo de filas es
11. Cambiando los segmentos por fila se puede ajustar el ancho y la altura del código. Cada
fila tiene una altura de 34X con 3X para el patrón de separación. Si se especifican 22
segmentos por fila se obtiene un código expandido no apilado.
Las simbologías GS1-DataBar Omnidireccional, GS1-DataBar Omnidireccional Apilado,
GS1-DataBar Truncado y GS1-DataBar Stacked incluyen un dígito de control módulo 79; la
simbología GS1-DataBar Limitado, uno módulo 89 y las GS1-DataBar Expandido y
Expandido Apilado, un carácter de control módulo 211.
En los códigos más pequeños, en particular los apilados, los datos codificados pueden no
imprimirse para lectura de los usuarios por razones de espacio.
El identificador de esta simbología es ]e0 (Tabla 9).
En todos los casos los datos para la codificación se suministran con el mismo formato que
en el código GS1-128, es decir, con los AI entre paréntesis.

58 Clasificación y Codificación de Productos.  2012 R. Morán.


Ejemplo 34
En la Tabla 11,, tercera fila, está codificado el artículo con número de referencia 12 de la
empresa 7791234, con número de serie 12345. (Ver la Tabla 1 para el significado de los AI).
AI

Ejemplo 35
En la cuarta fila de la Tabla 11 está codificado un artículo con cantidad variable (GTIN-14
(GTIN
con Dígito Indicador igual a 9), que pesa 1,500
1,500 Kg, vence en junio de 2014 y tiene número de
serie 12345.
El código es Expandido Apilado con 4 segmentos por fila. El mismo código no apilado
sería el siguiente:

(01)97791234000121(3103)001500(17)140600(21)12345
Figura 25

Ejemplo 36
El símbolo de la Figura 26 es un ejemplo de aplicación de la variante GS1-
GS1
DataBar Omnidireccional Apilado a productos de medida fija en los puntos de
venta minorista. El símbolo forma parte de una pequeña etiqueta adherida
adherida al
artículo y representa el código GTIN-14
GTIN del mismo. Figura 26

5.1.4 Códigos bidimensionales

5.1.4.1 Código PDF417


Es un código de barras bidimensional, multifilas, de alta densidad, de longitud variable,
con aplicaciones en la industria, embalajes, control de existencias, documentos, tarjetas de
identificación, envíos postales, etc.
Esta simbología consiste en un mínimo de 3 filas, cada una de las cuales es como un
pequeño código de barras lineal, y puede llegar a un máximo de 90 filas. El ancho puede
variar entre
tre 90X y 583X, donde X es la dimensión del módulo de la simbología. Es de lectura
bidireccional. La Figura 27 es un ejemplo.
Su nombre proviene de Portable Data File y de que
cada patrón en la simbología está formado por 4 barras
y 4 espacios,, que pueden tener 6 anchos distintos
(excepto los de comienzo y fin),
fin) pero con una longitud
total constante de 17X (salvo el de fin que tiene 18X).
La simbología está definidaa en la Norma ISO/IEC
15438. Figura 27
Puede codificar todos los caracteres ASCII de 8 bits
(ASCII Extendido) y tiene una capacidad máxima de hasta 2710 dígitos numéricos
num (solamente
los dígitos (0-9) o 1850 caracteres
carac alfanuméricos (ASCII 9, 10, 13 y 32 a 127),
127) o 1108

Clasificación y Codificación de Productos..  2012 R. Morán. 59


caracteres ASCII de 8 bits. Sin embargo, la capacidad máxima en las aplicaciones prácticas es
mucho menor si se aplican los niveles apropiados de corrección de errores.
Cada patrón de 4 barras y 4 espacios es un símbolo que representa una palabra-código
(CW: Codeword). Cada CW puede codificar más de un carácter (dígitos numéricos, letras,
caracteres especiales). Todas las filas tienen la misma cantidad de CW y, como todas están
representadas por símbolos de la misma longitud, quedan formadas columnas.
Cada fila contiene (Figura 28):
• Una zona calma al comienzo (mínimo 2X).
Patrón Indicador Indicador Patrón
• Un patrón de comienzo, que especifica que el start fila izq.
Palabras-código de datos
fila der. stop

formato es PDF417 (el mismo en todas las


filas).
• Un indicador (CW) de fila izquierdo, que
contiene información sobre el número de la fila,
cantidad de filas, número de columnas de datos Figura 28
y nivel de corrección de errores.
• De 1 a 30 CW de datos.
• Un indicador (CW) de fila derecho, que contiene más información sobre la fila.
• Un patrón de fin de código (el mismo en todas las filas y el único de ancho 18X porque
termina en una barra).
• Una zona calma final (mínimo 2X).
El ejemplo de la Figura 28 tiene 9 filas y 3 columnas de datos.
Un código PDF417 puede tener como máximo 928 CW de datos. La primera CW está
destinada siempre a la cuenta de las CW de datos en la simbología y al menos dos son para
detección de errores, de manera que hay a lo sumo 925 CW para datos reales. Sobre la base de
estas 925 CW están calculadas las capacidades máximas señaladas antes.
La simbología PDF417 utiliza una codificación de base 929. Cada CW representa un
número entre 0 y 928. De las 929 CW posibles, 900 se usan para datos y 29 para funciones
especiales.
Con barras y espacios de 6 anchos distintos y longitud total de 17X son posibles 9
conjuntos de 929 patrones cada uno, de los cuales PDF417 utiliza solamente 3, indicados con
los números 0, 3 y 6. Esto significa que cada CW puede representarse por tres patrones de
barras distintos, según el conjunto que se utilice. La implementación es la siguiente: las CW
de la primera fila (la de más arriba en la simbología) se representan con símbolos del conjunto
0, las de la segunda fila con los del conjunto 3, las de la tercera fila con los del conjunto 6, las
de la cuarta fila con los del conjunto 0, y así sucesivamente. El uso de símbolos de diferentes
conjuntos en filas adyacentes facilita la decodificación con escáneres lineales que pueden
escanear varias filas simultáneamente.
La dimensión del módulo X la fija el usuario, lo mismo que el número y altura de las filas
y el número de columnas, pero todas las filas tienen siempre el mismo número de CW, de
manera que el símbolo es siempre rectangular, y esto implica que puede haber CW de relleno.
No entraremos en los detalles de cómo las CW representan los caracteres ni cómo estas son
representadas por los patrones de barras y espacios, únicamente indicaremos los pasos que se

60 Clasificación y Codificación de Productos.  2012 R. Morán.


requieren para convertir los datos en un código PDF417 y que son automáticamente
realizados por el software correspondiente.14
El primer paso es la compactación, que transforma la cadena de caracteres de datos en un
cierto número de CW en forma numérica. Esta compactación depende del tipo de datos: los
dígitos numéricos se compactan a razón de 44 dígitos en 15 CW, lo que da 2,933 dígitos por
CW; los caracteres alfanuméricos, 2 caracteres por CW; los bytes (ASCII Extendido), 6 bytes
en 5 CW, esto es, 1,2 bytes por CW.
El segundo paso es la conversión de las CW numéricas en patrones de barras y espacios.
El símbolo utilizado depende de la fila en la que se ubica la CW, porque a cada fila le
corresponde uno de los tres conjuntos de símbolos.
El tercer paso es el cálculo de las CW de detección y corrección de errores (ECC: Error
Checking and Correction) que se agregan al final de los datos, convertidas en sus respectivos
patrones de barras y espacios según el conjunto de símbolos de la fila que les corresponda.
Los símbolos de las CW se posicionan secuencialmente en cada fila de izquierda a
derecha, comenzando por la fila superior de la simbología, entre los indicadores de fila
izquierdo y derecho. La primera CW es el descriptor que indica la cantidad de CW de datos
en la simbología. Este descriptor codifica el número total de CW de datos del símbolo, es
decir, incluye el propio descriptor, las CW de datos y las CW de relleno, y excluye el número
de CW de ECC.

Detección y corrección de errores


En los códigos de barras lineales la altura de los mismos permite que sean leídos
correctamente aun con daños parciales en el símbolo impreso. En PDF417, lo mismo que en
las simbologías matriciales que veremos luego, la altura de cada fila es pequeña y esos
mismos daños lo tornarían ilegible. Por esta razón PDF417 cuenta con métodos de detección
y corrección de errores, que permiten la lectura y decodificación exitosa aun cuando el daño
del símbolo llegue hasta un 40 % de su superficie.
Para la detección y corrección de errores PDF417 utiliza los códigos de Reed-Solomon.15
El código es el bloque, k el número de palabras-código de datos en el código y d el número de
palabras-código agregadas que RS utiliza para detectar y corregir errores, que se elige según
el nivel de corrección pretendido.
Como vimos en su momento, en la decodificación se pueden presentar borraduras y
errores. El número de borraduras y errores que se pueden corregir en el código PDF417 está
dado por la siguiente expresión:
e + 2t ≤ d – p (4)
donde:
e = número de borraduras.
t = número de errores.
d = número de CW de corrección.
p = número de CW reservadas para la detección de errores.

14
Para estos detalles véase, por ejemplo, F. J. Espinosa, L. Hernández y A. Martín, “Codificación de
información mediante códigos bidimensionales”, Bol. Soc. Esp. Mat. Apl. N° 29 (2004), 35-55.
15
Ver el punto 2.5.
Clasificación y Codificación de Productos.  2012 R. Morán. 61
En el caso general es p = 0, como expresa la (3), pero en PDF417 la Norma
orma establece p = 2
para asegurar la fiabilidad de la información corregida.
El esquema general de detección
detec y corrección de errores es el siguiente:
• El sistema de detección de errores utiliza siempre 2 CW y el de corrección puede usar entre
0 y 510 CW, dependiendo del nivel de corrección elegido.
• Existen 9 niveles de corrección de errores (del 0 al 8) con un número total de CW de ECC
dado por d = 2s+1, donde s es el nivel de corrección pretendido. Se obtienen los valores de
la Tabla 12.

Nivel de corrección s = 0 1 2 3 4 5 6 7 8
Número de CW de ECC d = 2 4 8 16 32 64 128 256 512
Número de CW para datos = 925 923 919 911 895 863 799 671 415

Tabla 12

Cuanto mayor sea el nivel de seguridad, más CW para ECC deben utilizarse y, por tanto,
menor cantidad de información se puede codificar.
• El nivel 0 puede detectar errores pero no corregirlos. El nivel de corrección de errores a
utilizar depende de la cantidad de CW de datos que se prevea puedanpuedan perderse, y los
valores recomendados son los de la Tabla 13.

Número de CW de datos 1 a 40 41 a 160 161 a 320 321 a 863


Nivel de corrección recomendado s = 2 3 4 5

Tabla 13

Así, por ejemplo, para el nivel de corrección s = 2 resulta d = 8 y, de acuerdo con la (4), se
pueden corregir hasta 6 borraduras, o 4 borraduras y 1 error, o 2 borraduras y 2 errores, o 3
errores.
El nivel de corrección puede ser seleccionado automáticamente por el software de
codificación
ificación en función de la cantidad de datos a codificar.
Una vez definidas las CW de la información a codificar y determinadas las CW de ECC, se
decide el aspecto que tendrá el código, es decir, el número de filas y de columnas (lo que
puede obligar a considerar
nsiderar datos de relleno).

Ejemplo 37
El código ABC123456789 está representado en las
simbologías de las figuras siguientes. En la Figura 29 el
nivel de corrección de errores es s = 2, que es el
recomendado por la cantidad de datos.
datos En la Figura 30 el
nivel es s = 5.

Figura 29 Figura 30

62 Clasificación y Codificación de Productos.


Produc  2012 R. Morán.
Existen dos variantes del código PDF417: el Micro PDF417, y el Macro PDF417. Este
último está formado por la sucesión de varios códigos PDF417 distintos y se emplea cuando
la cantidad de información a codificar es elevada y no cabe en un único PDF417. En este
caso, cada código incorpora información adicional, como el número de orden que tiene en la
serie de los códigos, etc., de modo que es posible leer los códigos en un orden diferente del
natural. En la codificación de productos tiene más importancia el Micro PDF417 y, además,
es utilizado en los códigos compuestos.

Micro PDF417
Es una simbología que puede ser utilizada en aplicaciones que necesitan codificar una
moderada cantidad de datos (hasta 366 dígitos numéricos o 250 caracteres alfanuméricos o
150 bytes), y cuando minimizar el tamaño del símbolo es prioritario. La Norma
correspondiente es la ISO/IEC 24728.
Es una simbología PDF417 a la que, con el objetivo de ahorrar espacio, se le han
reemplazado los indicadores izquierdo y derecho y los de comienzo y fin por patrones de
dirección de filas que se ubican a la izquierda y derecha de cada fila. Los datos se codifican
en los mismos modos de compactación que en PDF417 y con las mismas características. La
Figura 31 muestra un ejemplo.
A diferencia de PDF417, esta simbología puede ser
impresa únicamente en ciertas combinaciones de filas y
columnas, que constituyen las versiones del símbolo, con un
máximo de 4 columnas por 44 filas. Cada símbolo Micro
PDF417 tiene al menos siete CW de ECC. El número de Figura 31
CW de ECC es fijo para cada versión del símbolo.
Los códigos Micro PDF417 son muy utilizados para crear códigos compuestos, en
conjunto con códigos de barras lineales.

5.1.4.2 Códigos Compuestos


La Simbología Compuesta (Composite Symbology) integra un símbolo lineal con un
componente bidimensional en una única simbología. El componente lineal codifica la
identificación primaria del ítem y el bidimensional adyacente los datos complementarios, tales
como número de lote y fecha de vencimiento, por ejemplo. La simbología compuesta siempre
incluye un componente lineal de manera que la identificación primaria es legible por todas las
tecnologías de escaneo. El componente bidimensional, que se imprime arriba del lineal
separados por un patrón de separación, requiere escáneres más especializados.16
Hay tres tipos de simbologías compuestas, indicadas A, B y C, definidas por el
componente bidimensional y cada una con diferentes reglas de codificación. El software
codificador está diseñado para elegir automáticamente el tipo más apropiado según los datos a
codificar.
Las características básicas son las siguientes.
• Componente lineal. Puede ser una de las siguientes simbologías, con sus respectivos
conjuntos de caracteres y capacidades:
EAN-13, EAN-8, UPC-A o UPC-E

16
La Simbología Compuesta está descripta en: AIM (Association for Automatic Identification and Mobility), ITS
99-002 - International Symbology Specification - Composite Symbology.
Clasificación y Codificación de Productos.  2012 R. Morán. 63
GS1-DataBar
GS1-128
Observación. La simbología ITF-14 no puede ser utilizada como componente lineal.
La elección del componente lineal determina el nombre del símbolo compuesto, por
ejemplo: EAN-13 Composite, GS1-128 Composite.
• Componente bidimensional. Es elegido a partir del componente lineal seleccionado y de la
cantidad de datos complementarios por codificar. Puede ser uno de los siguientes, por
orden de capacidad creciente:
Tipo A: Utiliza una variante de la simbología Micro PDF417 (máximo 56 dígitos).
Tipo B: Usa la simbología Micro PDF417 con nuevas reglas de codificación (máximo
338 dígitos).
Tipo C: Simbología PDF417 con nuevas reglas de codificación (máximo 2361 dígitos).
• Detección y corrección de errores:
Componente lineal: carácter de control para detección de errores.
Componente bidimensional: número fijo o variables de CW de ECC de Reed-Solomon,
dependiendo del componente específico utilizado.
• Decodificable bidireccionalmente.
Adicionalmente, en la Simbología Compuesta GS1 se tienen las siguientes características:
• Los componentes bidimensionales utilizan un modo de compactación diseñado para
codificar eficientemente datos que utilizan Identificadores de Aplicación (AI)
• El componente bidireccional contiene un indicador de vinculación, que le indica a la
lectora que no se debe transmitir ningún dato a menos que el componente lineal asociado
sea también escaneado y decodificado. Todos los componentes lineales, excepto las
simbologías EAN/UPC, tienen también un indicador de vinculación explícito.
• Las lectoras preparadas para el modo emulación GS1-128 pueden trasmitir los datos
codificados en las simbologías compuestas GS1 como si fueran datos codificados en uno o
más códigos GS1-128.
• El componente bidimensional puede codificar un Carácter Separador de Símbolos. Este
carácter indica a la lectora terminar el mensaje actual y transmitir los datos que siguen al
separador como un mensaje separado. Este nuevo mensaje tiene el prefijo Identificador de
Simbología “]e1”, como indica la Tabla 9.
• Los componentes bidimensionales tipo B y C pueden codificar también CW que forman un
Mecanismo de Escape. Estas CW indican a la lectora terminar el mensaje actual y
transmitir los datos que siguen al mecanismo de escape como un mensaje separado, pero
cuyas CW se codifican y decodifican utilizando el estándar PDF417 definido en la Norma
ISO/IEC 15438. El nuevo mensaje tendrá el prefijo Identificador de Simbología “]e2”
(Tabla 9). Este mecanismo es para aplicaciones que requieran caracteres que no están
incluidos en el subconjunto ISO 646, definido para datos que contienen Identificadores de
Aplicación.

64 Clasificación y Codificación de Productos.  2012 R. Morán.


Ejemplo 38
En el código siguiente el GTIN está codificado en el
componente lineal en GS1-DataBar
DataBar Limitado. Los otros
datos (fecha
fecha de vencimiento y el número de lote)
lote están
codificados en el componente bidimensional tipo A
(variante de Micro PDF417). Figura 32

Ejemplo 39
En el código de la Figura 33 el SSCC está codificado en el componente lineal en GS1-128
GS1
y los demás datos en el componente bidimensional tipo C (PDF417 modificado).

(00)030123456789012340(02)13012345678909(37)24(10)1234567ABCDEFG

Figura 33

5.1.4.3 Código Data Matrix


En la simbología Data Matrix los elementos básicos de la codificación son pequeños
puntos cuadrados dispuestos en filas y columnas que forman matrices de datos limitadas por
un perímetro destacado. Cada símbolo consiste en una o más matrices
de datos. La Figura 34 es un ejemplo de un símbolo formado por
cuatro matrices.
El perímetro que define cada matriz está formado por líneas
continuas en la parte inferior y en la izquierda, y por líneas
discontinuas arriba y a la derecha. Cada código Data Matrix debe estar
rodeado de una zona calma que forma un margen. La lectura requiere
escáneres de imágenes (tipo cámaras). Figura 34
Los códigos tienen un número determinado
dete de filas y columnas. La
mayoría son cuadrados y la cantidad de filas y columnas puede variar entre 10 y 144,
posibilitando 24 tamaños de códigos distintos, como veremos enseguida. También pueden
tener forma rectangular, mucho menos utilizada, con entre
entre 8 y 16 filas y entre 18 y 48
columnas, permitiendo 6 tamaños distintos para el código. El tamaño del código depende de
la cantidad de datos codificados. La capacidad máxima de cada código cuadrado es de 3116
dígitos numéricos o 2335 caracteres alfanuméricos
alfanuméricos y la del formato rectangular de 98 y 72,
respectivamente.
La versión actual (ECC200) de esta simbología está estandarizada internacionalmente por
la Norma ISO/IEC 16022 y es de dominio público,público, es decir, no se requiere licencia para
utilizarla. Como su identificación lo indica (ECC: Error Checking and Correcting),
Correcting incorpora
la detección y corrección de errores mediante los códigos de Reed-Solomon
Solomon (RS). Permite la
reconstrucción de la totalidad de los datos codificados aun cuando el símbolo se haya dañado
da

Clasificación y Codificación de Productos..  2012 R. Morán. 65


hasta en un 30 %, siempre que la matriz pueda ser localizada con precisión. La tasa de errores
en Data Matrix es de menos de uno en diez millones de caracteres escaneados.
La simbología soporta sistemas de codificación avanzados que incluyen, por ejemplo,
funciones como en el Código-128.
Las principales aplicaciones son la identificación y control de partes componentes en la
industria en general; almacenamiento de información sobre composición, prescripción, etc.,
en la industria farmacéutica; identificación de componentes para control de calidad y rastreo,
con identificación del fabricante, fecha de fabricación, número de lote, etc.; etiquetado de
desechos peligrosos (radioactivos, tóxicos, etc.) para control y almacenamiento de largo
plazo; codificación postal para automatización del correo; codificación de información
financiera para transacciones más seguras; etc.
Sus principales ventajas son el pequeño tamaño de los códigos, comparados con los
lineales, que los hacen especialmente apropiados para artículos diminutos, y la alta tolerancia
a los daños debida al sistema de detección y corrección de errores. Además, en muchos casos
esta simbología se puede marcar directamente sobre los artículos, por deformación, sin
utilizar etiquetas ni impresión. En el marcado directo un código GTIN-14 se puede
representar con un símbolo de aproximadamente 9 mm2, incluyendo las zonas calmas,
resultando muy adecuado para, por ejemplo, marcar instrumental quirúrgico. Un símbolo de
26 filas y columnas, que admite hasta 64 caracteres alfanuméricos, puede tener 7 mm de lado
incluidas las zonas calmas.
Cada matriz de la simbología está compuesta por dos partes separadas: el perímetro o
marco, llamado patrón localizador, utilizado por el escáner para localizar el símbolo, y los
datos codificados. El patrón localizador define el formato (cuadrado o rectangular), el
tamaño, la dimensión X (lado de los puntos en la matriz), y la cantidad de filas y columnas en
el símbolo. La dimensión X puede variar entre 0,19 y 0,38 mm, dependiendo del sistema de
impresión, con un valor recomendado de X = 0,25 mm.
Los lados oscuros continuos (inferior e izquierdo) del patrón localizador, llamados patrón
localizador L, se utilizan principalmente para determinar el tamaño, la orientación y la
distorsión del símbolo. Los otros dos lados del patrón localizador son puntos claros y oscuros
alternados, conocidos como reloj de rastreo, que definen la estructura básica del símbolo y
pueden ayudar también a determinar su tamaño y distorsión. El patrón localizador es lo que
permite que el símbolo sea de lectura omnidireccional.
Los datos son codificados en una matriz dentro del patrón localizador; esto es, la
traducción de caracteres (numéricos o alfanuméricos) en la simbología binaria. Los datos se
codifican utilizando puntos cuadrados oscuros y claros, cada uno de los cuales representa un
bit. Cada zona oscura y clara del reloj de rastreo identifica una fila y una columna de la
matriz. El número de filas y columnas es siempre par y por lo tanto la esquina superior
derecha del símbolo es invariablemente un cuadrado claro.
El símbolo Data Matrix requiere una zona calma en cada uno de los cuatro lados de un
ancho constante equivalente a la dimensión X.
Cuando se implementa la simbología Data Matrix es posible elegir entre dos formatos:
cuadrado o rectangular (Figura 35, página siguiente). La elección depende del espacio
disponible en el artículo, la cantidad de datos a codificar, el proceso de impresión, etc.

66 Clasificación y Codificación de Productos.  2012 R. Morán.


El formato cuadrado es el utilizado más comúnmente y permite la codificación de mayor
cantidad de datos. Pero, por el
límite de altura, el formato
rectangular puede ser el más
apropiado para ciertas técnicas
de impresión de alta velocidad.
La Tabla 14 muestra la
capacidad máxima de datos Figura 35
que se pueden codificar en el
formato cuadrado en función del número de filas y columnas. El símbolo está compuesto por
una o más matrices o regiones. Cada matriz puede tener hasta 26 filas y columnas, incluido el
patrón localizador (24 filas y columnas para los datos propiamente dichos). Cuando se
requieren más de 26 filas y columnas el tamaño siguiente es de 32×32, pero dividido en 4
matrices de 16×16. Cada una de estas matrices puede llegar a 26×26 y entonces el tamaño
siguiente es de 64×64 dividido en 16 matrices de 16×16. Nuevamente, estas matrices pueden
llegar a 26×26 y entonces se pasa al formato de 36 matrices que pueden tener, cada una,
20×20, 22×22 o 24×24.

Simbología Data Matrix cuadrada


Tamaño del Tamaño de Matr. Capacidad máxima Palabras-código Bloq. % de Máx. núm.
símbolo datos por (CW) por símbolo por CW para CW correg.
Filas Col. (Fil.× ×Col.) símb. Numérico Alfanum. Datos ECC símb. ECC (E / B)
10 10 8×8 1 6 3 3 5 1 62,5 2/0
12 12 10×10 1 10 6 5 7 1 58,3 3/0
14 14 12×12 1 16 10 8 10 1 55,6 5/7
16 16 14×14 1 24 16 12 12 1 50,0 6/9
18 18 16×16 1 36 25 18 14 1 43,8 7/11
20 20 18×18 1 44 31 22 18 1 45,0 9/15
22 22 20×20 1 60 43 30 20 1 40,0 10/17
24 24 22×22 1 72 52 36 24 1 40,0 12/21
26 26 24×24 1 88 64 44 28 1 38,9 14/25
32 32 14×14 4 124 91 62 36 1 36,7 18/33
36 36 16×16 4 172 127 86 42 1 32,8 21/39
40 40 18×18 4 228 169 114 48 1 29,6 24/45
44 44 20×20 4 288 214 144 56 1 28,0 28/53
48 48 22×22 4 348 259 174 68 1 28,1 34/65
52 52 24×24 4 408 304 204 84 2 29,2 42/78
64 64 14×14 16 560 418 280 112 2 28,6 56/106
72 72 16×16 16 736 550 368 144 4 28,1 72/132
80 80 18×18 16 912 682 456 192 4 29,6 96/180
88 88 20×20 16 1152 862 576 224 4 28,0 112/212
96 96 22×22 16 1392 1042 696 272 4 28,1 136/260
104 104 24×24 16 1632 1222 816 336 6 29,2 168/318
120 120 18×18 36 2100 1573 1050 408 6 28,0 204/390
132 132 20×20 36 2608 1954 1304 496 8 27,6 248/472
144 144 22×22 36 3116 2335 1558 620 10* 28,5 310/590
* Ocho bloques de 218 CW y dos de 217 CW, todos con 62 CW para ECC

Tabla 14

Análogamente, la Tabla 15 en la página siguiente presenta los datos para el formato


rectangular. En todos los casos cada matriz tiene 2 filas y 2 columnas que forman el patrón
localizador y las restantes para los datos.

Clasificación y Codificación de Productos.  2012 R. Morán. 67


Simbología Data Matrix rectangular
Tamaño del Tamaño de Matr. Capacidad máxima Palabras-código Bloq. % de Máx. núm.
símbolo datos por (CW) por símbolo por CW para CW correg.
×Col.) símb. Numérico Alfanum. Datos
Filas Col. (Fil.× ECC símb. ECC (E / B)
8 18 6×16 1 10 6 5 7 1 58,3 3/0
8 32 6×14 2 20 13 10 11 1 52,4 5/0
12 26 10×24 1 32 22 16 14 1 46,7 7/11
12 36 10×16 2 44 31 22 18 1 45,0 9/15
16 36 14×16 2 64 46 32 24 1 42,9 12/21
16 48 14×22 2 98 72 49 28 1 36,4 14/25

Tabla 15

El usuario debe elegir el formato, cuadrado o rectangular, y el software de codificación


determina el tamaño del símbolo en función del tipo y cantidad de datos.
Cada símbolo ECC200 tiene un número especificado de palabras-código (CW: Codeword)
para datos y detección y corrección de errores (ECC), como se muestra en la Tabla 14 y en la
Tabla 15, divididas en un cierto número de bloques de RS. La antepenúltima columna indica
los bloques RS por símbolo, la penúltima es el porcentaje de CW para ECC respecto del total,
y la última la cantidad máxima de CW que pueden corregirse como errores (E) o borraduras
(B), siempre respetando la relación (4) en cada bloque.
En el caso general, en la (4) es p = 0. Sin embargo, si la mayor parte de la capacidad de
corrección se utiliza para borraduras, se incrementa la probabilidad de no detectar un error.
Por esta razón en esta simbología se toma p = 3 en cada bloque, salvo en los símbolos
pequeños (10×10, 12×12, 8×18 y 8×32) en los que la corrección de borraduras no se utiliza
(e = 0) y se toma p = 1.
En esta simbología son posibles seis formas distintas de codificación de la información,
razón por la cual los mismos datos pueden ser representados por diferentes símbolos Data
Matrix. La forma básica (la única que consideraremos) es la ASCII, que codifica los 128
caracteres ASCII según la Norma ISO/IEC 646 y todos los caracteres de ASCII Extendido
(ISO/IEC 8859-1).
La forma de codificación es la siguiente:
• Los dígitos numéricos se agrupan por pares y al valor numérico que resulta de cada par se
le suma 130, el resultado es el valor decimal de la CW. Un dígito decimal solo es tratado
como alfabético. Por ejemplo, en el código 123456 resultan las CW: 12 + 130 = 142,
34 + 130 = 164 y 56 + 130 = 186.
• A los caracteres alfabéticos, signos de puntuación y caracteres especiales se le suma 1 al
valor ASCII y se obtiene el valor decimal de la CW. Por ejemplo, en el código ABC123
resultan las CW: 65 + 1 = 66, 66 + 1 = 67, 67 + 1 = 68, 12 + 130 = 142 y 52 + 1 = 53.
• Luego de obtenidas las CW de los datos el algoritmo de RS genera las CW de ECC.
• Todas las CW se convierten a binario. En esta simbología todas las CW tienen 8 bits.
• Construcción de la matriz. Las CW se ubican en la matriz en un proceso de intercalación
mediante un algoritmo especial, los bits 1 dan origen a los puntos oscuros y los 0 a los
claros. La Figura 36, en la página siguiente, muestra un ejemplo de la disposición de las
CW para el símbolo más pequeño (8×8): 2.1 es el primer bit de la segunda CW, 2.2 el
segundo bit de la misma CW, 3.6 es el sexto bit de la tercera CW, etc.

68 Clasificación y Codificación de Productos.  2012 R. Morán.


El Identificador de Simbología para Data Matrix, de
acuerdo con la Norma ISO/IEC 15424, es ]d1.

5.1.4.4 Código GS1-DataMatrix


DataMatrix
GS1-DataMatrix utiliza la función FNC1 en la primera
posición de los datos codificados para diferenciar la
simbología de otras aplicaciones Data Matrix. Esto permite
que los escáneres procesen la información de acuerdo con las
reglas de los estándares GS1, en particular la utilización de
Identificadores de Aplicación (AI),
(AI) ya vistas en el código Figura 36
GS1-128.. Para las Aplicaciones GS1, únicamente está
especificado el Data Matrix ECC200.
La función FNC1 (ASCII 232) se codifica de dos maneras distintas en la simbología:
• Como carácter
rácter de comienzo para especificar que es un código GS1. Sin esta función se
generaría un símbolo Data Matrix pero no GS1-DataMatrix.. Por ejemplo, los paréntesis
que indican los AI serían interpretados como caracteres alfabéticos.
• Como separador para los campos de longitud variable, cuando no se utiliza la longitud
máxima y el campo no es el último del código. En este caso es representado por el carácter
<GS>
> (ASCII 29) en el mensaje transmitido.
El carácter de comienzo FNC1 no se representa en los datos transmitidos;
transmitidos; en su lugar los
tres primeros caracteres transmitidos son los del Identificador de Simbología, de acuerdo con
la Norma ISO/IEC 15424, que en este caso es ]d2 (Tabla 9) y especifica que la simbología
leída es GS1-DataMatrix.
Aunque la simbología Data Matrix puede codificar todos los caracteres del conjunto
ASCII Extendido, en GS1-DataMatrix
DataMatrix solamente se pueden utilizar los caracteres ASCII
básicos (ISO 646). Esta restricción se ha adoptado para evitar los problemas de
compatibilidad entre las distintas extensiones de ASCII utilizadas en diferentes regiones del
mundo y, además, por las limitaciones en los juegos de caracteres disponibles en los teclados
de algunos sistemas de computación.

Ejemplo 40
El código (01)97791234000121(3103)001500(17)140600(21)12345 da
origen a las siguientes CW (anteponiendo FNC1, ASCII 232):
232)
232 131 227 209 142 164 130 131 151 161 133 130 145 130 147 144
136 130 151 142 164 54.
Son 22 CW de datos y por lo tanto, de acuerdo con la Tabla 14,, se Figura 37
generan 18 CW de detección y corrección de errores y la matriz resulta de
20 filas y 20 columnas (datos 18×18).
18 La Figura 37 es el símbolo obtenido.

Ejemplo 41
El código (21)123456(11)110901(17)120630 requiere dos caracteres FNC1:
<FNC1>(21)123456<FNC1>(11)110901(17)120630.
El segundo se codifica como <GS> (ASCII
(A 29), resultando las CW:

Clasificación y Codificación de Productos..  2012 R. Morán. 69


232 151 142 164 186 29 141 141 139 131 147 142 136 160.
Son 14 CW de datos y por lo tanto corresponde unaun matriz de 18 filas y
18 columnas (datos 16×16).
16). Como sobra lugar para 4 CW se las utiliza para
detección y corrección de datos, 18 CW en lugar de 14, con lo que mejora la
capacidad de corrección. La Figura 38 es el símbolo resultante. Figura 38

5.1.4.5 Código QR
El código QR (Quick
Quick Response Barcode)
Barcode es una simbología bidimensional matricial
matri de
propósito general diseñada para un escaneo rápido de la información. Fue
desarrollado en Japón, donde es muy popular, y es eficiente para codificar
caracteres Kanji. El código QR es de forma cuadrada y puede ser fácilmente
identificado por su patrón de cuadros oscuros y claros en tres de las esquinas
del símbolo (Figura 39).). Su origen fue el registro de piezas en fabricación y
es utilizado para el control de las existencias. La Norma ISO/IEC 18004: 18004
Figura 39
2006 define la versión actual (QR 2005) y el código es de uso abierto.
Los elementos básicos de la codificación son los pequeños puntos cuadrados,
cuadrados llamados
módulos, dentro de la matriz. La dimensión X es el lado de esos cuadrados y el valor nominal
es X = 0,5 mm, aunque puede ser variado por el usuario.
La lectura de estos códigos requiere escáneres de imágenes (tipo cámaras fotográficas). En
particular, con la inclusión de software que decodifica estos códigos en los teléfonos móviles
se los puede leer a través de sus cámaras fotográficas. Este hecho ha permitido nuevos
nuev usos de
la simbología no orientados a la industria como, por ejemplo, ingresar datos automáticamente
en las agendas si los mismos están codificados en avisos, tarjetas de presentación, etc.
Para la correcta lectura de los códigos los símbolos siguientes definen la posición, la
alineación y la sincronización.
: Posición.. Define la posición del símbolo posibilitando la lectura omnidireccional.
: Alineación.. Permite corregir las distorsiones del símbolo.
: Sincronización (son los puntos que unen los ángulos
ángulos interiores de los tres símbolos
de posición). Identifica las coordenadas centrales de los módulos.
La zona calma alrededor del símbolo es de al menos 4X.
Los módulos constituyen el área de datos del símbolo en la que se codifica la información.
Cada módulo representa un bit (0 o 1) y la l codificación,, en cuyos detalles no entraremos, se
realiza mediante palabras-código
código (CW) de 8 bits. Se pueden codificar cuatro conjuntos de
caracteres con las siguientes características:
Dígitos numéricos: 3,3 módulos/dígito.
Caracteres alfanuméricos: 5,5 módulos/carácter.
Caracteres binarios (8 bits): 8 módulos/carácter.
Caracteres Kanji/Kana: 13 módulos/carácter.
See utiliza el algoritmo de Reed-Solomon
Reed (RS) para la detección y corrección de errores,
con cuatro niveles de corrección. La capacidad de corrección aproximada de cada uno de los
niveles, medida como porcentaje de las CW que pueden ser restauradas, es la siguiente:

70 Clasificación y Codificación de Productos.


Produc  2012 R. Morán.
Nivel L (Low): 7%
Nivel M (Medium): 15 %
Nivel Q (Quality): 25 %
Nivel H (High): 30 %
Cuanto más alto es el nivel de corrección más espacio requieren las CW que utiliza el
algoritmo. Por lo tanto, la cantidad de datos que puede codificar un símbolo QR de un
determinado tamaño, depende del tipo de datos (conjunto de caracteres) y del nivel de
corrección de errores.
Son posibles 40 tamaños distintos para la simbología desde 21×21 módulos hasta 177×177
módulos, con incrementos de 4 módulos (21×21, 25×25, 29×29, etc.). El software de
codificación elige la versión en función de la cantidad de datos a codificar, del tipo de datos y
del nivel de corrección de errores elegido por el usuario; por omisión suelen tomar el nivel L
o el M.
Debido al diseño de los códigos RS y al uso de CW de 8 bits, los bloques de información
dentro del código no pueden tener más de 255 CW. Dado que los símbolos pueden contener
mucha más información, es necesario entonces fraccionar el mensaje en múltiples bloques.
Sin embargo, para simplificar los algoritmos de decodificación, las especificaciones del
código QR no utilizan el tamaño máximo de los bloques, sino que los define de manera tal
que no haya más de 30 CW de corrección de errores en cada bloque. Esto significa que se
pueden corregir a lo sumo 15 errores en cada bloque. Además los bloques son intercalados
entre ellos en la simbología, de forma tal que se reduce la probabilidad de que un daño
localizado en el símbolo sobrepase la capacidad de corrección de un bloque individual.
La capacidad máxima de datos del símbolo se obtiene para el tamaño de 177×177 módulos
con nivel L de corrección de errores, y es la siguiente:
Solo numérico: 7.089 dígitos.
Alfanumérico: 4.296 caracteres (solamente dígitos decimales, letras mayúsculas y los
caracteres $ % * + - . / : y el espacio).
Binario: 2.953 bytes (ISO/IEC 8859-1) u otros conjuntos).
Kanji/Kana: 1.817 caracteres.

Ejemplo 42
Los símbolos QR de la Figura 40 representan la
siguiente información sobre un artículo:
GTIN: 97791234000121 - PESO: 1,500 - VTO:
JUN/2014 - LOTE: 12345
Ambos están generados con X = 0,5 mm. El de la Figura 40
izquierda con nivel de corrección de errores L y el de la
derecha con nivel H.

Cabe observar que, en las aplicaciones prácticas para la codificación de productos, la


cantidad de dígitos o caracteres necesarios está muy lejos de las capacidades máximas
señaladas. Por esta razón se ha desarrollado una versión más pequeña, llamada Código Micro
QR (Figura 41), apropiada para aplicaciones en espacios pequeños y que
requieren pocos datos. La eficiencia en la codificación se ha incrementado
utilizando un solo patrón de detección de posición. La capacidad de esta Figura 41

Clasificación y Codificación de Productos.  2012 R. Morán. 71


simbología, con nivel L de corrección, es la siguiente:
Solo numérico: 35 dígitos
Alfanumérico: 21 caracteres (solamente
( dígitos decimales, letras mayúsculas y los
caracteres $ % * + - . / : y el espacio)
Binario: 2.953 bytes
También hay una versión de alta densidad, conocida como Código iQR,
iQR, que, con el mismo
espacio de un Código QR común, incrementa en un 80 % la capacidad en dígitos numéricos.
Equivalentemente, se reduce en un 30 % el espacio requerido para codificar la misma
información. Su capacidad máxima es de aproximadamente 40.000 caracteres.
Finalmente, existe también la versión SQRC (Security
( QR Code)) en la que se puede
restringir la información de libre disponibilidad encriptando las partes que se desean proteger.
Las unidades lectoras
oras deben poseer la clave de encriptación para poder decodificar la
información completa.

5.1.4.6 Código GS1-QR


El sistema GS1 adoptó el código QR 2005 porque puede codificar las estructuras de datos
GS1,, incluyendo el símbolo del carácter Función 1 (FNC1), y además ofrece otras ventajas
técnicas,, como su diseño compacto.
compacto El código GS1-QRQR no contiene el conjunto de caracteres
Kanji y el estándar GS1 tampoco incluye el código Micro QR.
Los datos a codificar se suministran con las mismas reglas que en el código GS1-
G
DataMatrix.. El Identificador de la Simbología es ]Q3.

Ejemplo 43
La Figura 42 es el símbolo del
de código:
(01)97791234000121(3103)001500(17)140600(21)12345
Tiene nivel M de corrección de errores y el tamaño es de 33×33 módulos.
módulos Figura 42

5.2 Códigos Electrónicos


La Identificación por Radio Frecuencia (RFID: Radio Frequency Identification)
Identification es un tipo
de tecnología de identificación automática. Los objetos son portadores de etiquetas, formadas
por un microchip y una antena de radiofrecuencia (Figura( 43), que
almacenan la información que identifica el objeto de manera estructurada.
Utilizando ondas de radiofrecuencia
frecuencia, la unidad lectora detecta las
etiquetas y captura esa información para su procesamiento.
La RFID tiene la ventaja de detectar un producto sin tener contacto
visual directo entre el lector y la etiqueta y hasta de leer múltiples Figura 43
productos al mismo tiempo. Esta tecnología permite una gran visibilidad
visibilidad
de los productos en las cadenas
cadena de abastecimientos, con información más detallada y segura
acerca de los mismos, mejorando el control de los movimientos,, la administración de las
existencias y las prácticas de reabastecimiento.
Básicamente el sistema RFID funciona de la siguiente manera:
1) La antena emite ondas de radiofrecuencia.
2) Lass ondas energizan el microcircuito de la etiqueta.

72 Clasificación y Codificación de Productos.


Produc  2012 R. Morán.
3) La etiqueta transmite los datos.
4) El lector recibe los datos y los envía al servidor del sistema.
5) El servidor envía la información al sistema central.
La etiqueta está compuesta por un microcircuito (chip), una antena y un material de
encapsulado. El propósito de la antena es permitirle al chip, que contiene la información,
transmitir los datos de identificación de la etiqueta. El chip posee una memoria interna con
una capacidad que depende del modelo y varía de una decena a millares de bytes. Existen
varios tipos de etiquetas según el tipo de memoria:
• Clase 0: Etiqueta de lectura solamente. El código de identificación que contiene es fijo y es
incorporado durante la fabricación de la etiqueta.
• Clase 1: Etiqueta de lectura y escritura por única vez. La información de identificación es
grabada por el lector y queda fija.
• Clase 2: Etiqueta de lectura y escritura. La información de identificación puede ser
modificada por el lector.
• Clase 3: Ídem clase 2 con fuente de energía propia (batería de larga duración).
• Clase 4: Ídem clase 3 más capacidad de comunicación activa.
• Clase 5: Ídem clase 4 más capacidad de comunicación con etiquetas pasivas.
Las cuatro primeras clases son etiquetas pasivas porque deben ser activadas desde la
antena del equipo lector tanto para la lectura como para la escritura. La fuente propia (batería)
en la clase 3 le da la posibilidad de comunicación a mayor distancia de la antena de la unidad
lectora. Las dos últimas clases tienen capacidad de comunicación propia.
En las etiquetas que no poseen fuente de alimentación, la señal que les llega de los lectores
induce una pequeña corriente eléctrica que activa el circuito integrado de forma que puede
generar y transmitir una respuesta, con alcance de unos pocos metros. Son las etiquetas más
utilizadas en la identificación de productos.
El lector, compuesto por una antena, un emisor-receptor y un decodificador, envía
periódicamente señales para detectar si hay alguna etiqueta en sus inmediaciones. Cuando
capta una señal de una etiqueta, extrae la información de esta y se la pasa al subsistema de
procesamiento de datos que proporciona los medios para la comunicación y almacenamiento
de los datos.

Sistema EPC
El Sistema EPC es un nuevo estándar que combina la tecnología RFID, la infraestructura
de redes existente y el Código Electrónico del Producto (EPC: Electronic Product Code), para
la identificación automática, precisa, efectiva y en tiempo real de objetos físicos. El código
EPC con RFID está estandarizado por la Norma ISO 18000-C. El ente regulador del Sistema
EPC es EPCglobal, subsidiaria de la organización GS1.17 Su papel primordial es el de
asesorar y homologar las aplicaciones disponibles en la industria.
El Sistema EPC está conformado por cinco elementos fundamentales:
• Código EPC. Número único que identifica el ítem u objeto.

17
http://www.gs1.org/epcglobal
Clasificación y Codificación de Productos.  2012 R. Morán. 73
• Etiquetas (Tags) y lectores de RFID. Dispositivos de almacenamiento y lectura del
código EPC.
• Software RFID. Programas que controlan el flujo de datos EPC en la red.
• Servidor ONS (Object Name Service). Servicio de búsqueda que toma un EPC como
entrada y produce como salida la dirección (en la forma de una URL: Uniform Resouce
Locator) de un sitio de Internet, identificado por el campo Administrador EPC en el código
EPC.
• Servidor EPCIS (Electronic Product Code Information Services). Servidor para compartir
información relacionada con EPC entre los participantes en las cadenas de suministro
globales.
EPCIS es un estándar de EPCgolbal. Provee nuevas e importantes capacidades para
mejorar la eficiencia, seguridad y visibilidad en las cadenas logísticas, y complementa los
estándares de más bajo nivel de las etiquetas, unidades lectoras y software relacionado.
Una compañía miembro de GS1 que desee utilizar el Sistema EPC tiene que registrar su
Prefijo de Empresa GS1 en el sistema ONS. Esto le permitirá asignar códigos EPC a cada
producto individual.

Código Electrónico de Productos


El Código Electrónico de Producto (EPC: Electronic Product Code) es un identificador
universal para cualquier objeto físico. Se utiliza en los sistemas de información que necesitan
hacer el seguimiento individual de los objetos o referirse individualmente a ellos. El EPC es
un número diseñado para identificar individualmente cualquier objeto. La representación
canónica de un EPC es un Identificador Uniforme de Recursos de Internet (URI: Uniform
Resource Identifier), llamado la “Identidad Pura EPC URI”. Es la forma preferida para
denotar un objeto físico en las aplicaciones comerciales.
Es importante destacar que el EPC identifica inequívocamente cada unidad de un producto,
a diferencia del GTIN, por ejemplo, que es el mismo para todas las unidades idénticas del
mismo producto. Se facilita así la rastreabilidad de cada unidad individualmente a lo largo de
las cadenas logísticas. En el EPC es posible asociar datos dinámicos del ítem que identifica,
tales como: fecha de fabricación, lugar de fabricación, fecha de vencimiento, longitud, grosor,
peso, etc.
El código EPC básico consta de 96 bits que permiten codificar 24 dígitos hexadecimales.
Este código, de uso general, se conoce con el nombre de GID-96 (General Indentifier) y su
estructura es la siguiente:
• Encabezamiento EPC (EPC Header): 8 bits (2 dígitos hex.) Identifica el esquema de
codificación utilizado en el EPC. Indica la longitud, el tipo y la estructura del EPC.
• Número del Administrador General (General Manager Number): 28 bits (7 dígitos
hex.). Identifica la entidad responsable del código (por ejemplo, la Empresa). La capacidad
es de más de 268 millones de códigos.
• Clase de Objeto (Object Class): 24 bits (6 dígitos hex.). Permite la codificación de más de
16 millones de ítems.
• Número de serie (Serial Number): 36 bits (9 dígitos hex.). Asegura que el objeto
identificado tenga una numeración única en el mundo (es posible numerar más de 68
millardos de un mismo producto sin repetir el código).
74 Clasificación y Codificación de Productos.  2012 R. Morán.
Respecto de los Indicadores GS1, para cada Indicador GS1 que identifica un objeto físico,
no una clase de objetos, hay un EPC correspondiente. Esta correspondencia está formalmente
definida por las reglas de conversión especificadas en la Norma, que define cómo se
representa cada Identificador GS1 por el correspondiente EPC y viceversa.18
Un valor determinado del Encabezamiento indica la estructura EPC particular que
corresponde al Identificador GS1, de manera que en la codificación y decodificación del EPC se
puede interpretar el código GS1 correspondiente. Esto permite que los usuarios del Sistema GS1
puedan aplicar la tecnología EPC de manera totalmente compatible con las implementaciones
existentes.
En la codificación EPC de los indicadores GS1 se incorpora un filtro, que es una
información de control adicional respecto del GID-96, para permitir que la unidad lectora
RFID pueda seleccionar las etiquetas correspondientes a ciertos objetos, facilitando su lectura
en un ambiente donde puede haber otras etiquetas presentes. Por ejemplo, si el objetivo es leer
una etiqueta de un palé y los ítems que lo forman tienen sus propias etiquetas, se puede
mejorar el desempeño de la captura de datos usando la posibilidad de seleccionar la etiqueta
del palé y filtrar las etiquetas de los artículos individuales. El filtro es un número que indica,
en el código, el nivel de agregación del objeto (ítem individual, caja, palé, contenedor, etc.).
A continuación veremos la estructura básica de la codificación en el formato EPC de los
conocidos códigos GTIN, SSCC, GLN, GRAI y GIAI de los estándares GS1, sin entrar en los
detalles técnicos.

Código GTIN
El GTIN solo no se corresponde con un EPC porque identifica una clase de ítems, no ítems
individuales. En cambio sí se corresponden el GTIN más un número de serie único con un
EPC. Esa combinación es llamada GTIN Serializado y hay dos esquemas de codificación,
indicadas SGTIN-96 y SGTIN-198.

Código SGTIN-96
• Encabezamiento EPC: 8 bits. Especifica el esquema de codificación utilizado, indicando
longitud, tipo y estructura del EPC.
• Filtro: 3 bits. Indica el nivel de agregación.
• GTIN: 47 bits. Contiene el Prefijo de Empresa y la Referencia de Artículo sin incluir el
Dígito de Control.
• Número de serie: 38 bits. Solamente numérico, sin ceros a la izquierda, con valor decimal
que no supere la capacidad del campo (238 = 274.877.906.943).
De esta manera el código SGTIN-96 es similar, pero no idéntico, al GTIN (AI 01) más un
Número de Serie (AI 21), porque el Número de Serie en el EPC está limitado a dígitos
numéricos únicamente, sin ceros a la izquierda, y que no superen la capacidad del campo,
mientras que en la especificación GS1 el Número de Serie puede tener hasta 20 caracteres
alfanuméricos.

18
GS1 EPC Tag Data Standard 1.6 (http://www.gs1.org/epcglobal).
Clasificación y Codificación de Productos.  2012 R. Morán. 75
Código SGTIN-198
El código GTIN-198, de 198 bits, admite todos los valores de las Especificaciones
Generales de GS1 (hasta 20 caracteres alfanuméricos). La única diferencia respecto del
GTIN-96 es que para el Número de Serie dispone de 140 bits.
Todos los demás indicadores GS1 tienen Encabezados de 8 bits y Filtros de 3 bits, con las
funciones ya señaladas, de manera que nos limitaremos a señalar las características esenciales.

Código SSCC-96
• Encabezamiento EPC y Filtro: 11 bits.
• SSCC: 61 bits. Admite todos los valores de las Especificaciones Generales de GS1 (Prefijo
de Empresa y Número de Serie, incluyendo el dígito de Extensión).
• Reservado: 24 bits.

Código SGLN-96
• Encabezamiento EPC y Filtro: 11 bits.
• GLN: 44 bits. Admite todos los valores de las Especificaciones Generales de GS1 (Prefijo
de Empresa y Número de Serie, incluyendo el dígito de Extensión).
• Extensión: 41 bits. Solamente numérica, sin ceros a la izquierda, valor decimal menor o
igual a 241 (2.199.023.255.551).

Código SGLN-195
Para la Extensión dispone de 140 bits, admitiendo todos los valores correspondientes al AI
254, esto es, hasta 20 caracteres alfanuméricos. Los demás elementos son los mismos del
SGLN-96.

Código GRAI-96
• Encabezamiento EPC y Filtro: 11 bits.
• GRAI: 47 bits. Admite todos los valores de las Especificaciones Generales de GS1.
• Número de Serie: 38 bits. Solamente numérico, sin ceros a la izquierda, valor decimal
menor o igual a 238 (274.877.906.943).

Código GRAI-170
Para el Número de Serie dispone de 112 bits, admitiendo todos los Números de Serie
correspondientes al AI 8003 (hasta 16 caracteres alfanuméricos). Los demás elementos son
los mismos del GRAI-96.

Código GIAI-96
• Encabezamiento EPC y Filtro: 11 bits.
• GIAI: 85 bits. Solamente numérico, sin ceros a la izquierda, con valor decimal menor o
igual que un límite que varía con la longitud del Prefijo de Empresa GS1.

76 Clasificación y Codificación de Productos.  2012 R. Morán.


Código GIAI-202
Dispone de 191 bits para el GIAI, admitiendo todos los valores correspondientes al AI
8004 (hasta 30 caracteres alfanuméricos en total). El máximo Número de Serie (hasta 18 a 24
caracteres alfanuméricos) depende de la longitud del Prefijo de Empresa GS1.
De manera totalmente análoga se codifican en EPC los demás Indicadores GS1 y que no
hemos tratado aquí.

Otros códigos
Si bien EPCglobal es subsidiaria de GS1, las aplicaciones de los códigos electrónicos van
más allá de los estándares GS1. EPC incluye códigos para los que no hay identificadores GS1
correspondientes como, por ejemplo, el GID-96 (GID: General Indentifier), y códigos para
aplicaciones muy diferentes de la identificación de productos, que son los únicos que hemos
considerado.
Los códigos electrónicos constituyen un espacio de aplicaciones muy amplio y dinámico,
de manera que el lector interesado debe consultar permanentemente la actualización de las
Normas y la documentación pertinente.
Finalmente, cabe recordar que en la identificación y clasificación de productos lo esencial
es la codificación. Los portadores de datos son medios que, si bien son imprescindibles para
procesar los códigos en forma automática, cambian con la evolución de las tecnologías. No
obstante, debe tenerse siempre presente que los medios portadores pueden condicionar la
codificación y por lo tanto no se los puede ignorar al realizarla.

6 BIBLIOGRAFÍA
1. Blahut, Richard E., Algebraic Codes for Data Transmission, Cambridge University Press,
2011. ISBN 978-0521556590.
2. Burke, Harry E., Automating Management Information Systems: Barcode Engineering
and Implementation, Van Nostrand Reinhold, 1990. ISBN: 978-0442207120.
3. Espinosa, F. J., L. Hernández y A. Martín, “Codificación de información mediante
códigos bidimensionales”, Bol. Soc. Esp. Mat. Apl. N° 29 (2004), 35-55.
4. Finkenzeller, Klaus, RFID Handbook: Fundamentals and Applications in Contactless
Smart Cards, Radio Frequency Identification and Near-Field Communication, 3a ed.,
Wiley, 2010. ISBN: 978-0470695067.
5. Gallagher C. C. y W. A. Knight, Group Technology Production Method in Manufacture,
UK: Ellis Horwood, 1986.
6. Groover, Mikell P., Automation, Production Systems, and Computer-Integrated
Manufacturing, 3a ed., Prentice Hall, 2007. ISBN: 978-0132393218.
7. Michael, Katina, Innovative Automatic Identification and Location-Based Services: From
Bar Codes to Chip Implants (Premier Reference Source), IGI Global, 2009. ISBN: 978-
1599047959.
8. Monsó i Bustio, Julià, Sistemas de Identificación y Control Automáticos, Tomo II,
(Sistemas de control de flujo físico), Barcelona: Marcombo S. A., 1994. ISBN: 978-
8426709233

Clasificación y Codificación de Productos.  2012 R. Morán. 77


9. Opitz, H., A Classification System to Describe Workpieces, Oxford (UK): Pergamon
Press, 1970.
10. Palmer, Roger C., The Bar Code Book: Fifth Edition - A Comprehensive Guide To
Reading, Printing, Specifying, Evaluating, And Using Bar Code and Other Machine-
Readable Symbols, 5a ed., Trafford Publishing, 2007. ISBN: 978-1425133740.
11. Pearce, Stephen and Richard D. Bushnell, The Bar Code Implementation Guide: Using
Bar Codes in Distribution, 3a ed., Tower Hill Publisher, 2010. ISBN: 978-0941668064.

78 Clasificación y Codificación de Productos.  2012 R. Morán.

También podría gustarte