Hola tec,
El código GS1-128 es un código EAN128.
La particularidad de los GS1-128 es que puedes dar "formato" a la información del código de barra mediante prefijos.
Mira:
https://es.wikipedia.org/wiki/GS1-12...plicaci%C3%B3n
En el ejemplo:
Cita:
(00)384123481000123452(17)921231
Detrás del (00) viene el SSCC1 hasta que encuentra el siguiente paréntesis (SSCC! siempre son 18 caracteres).
Detrás del (17) viene la fecha de máxima duración (formato AAMMDD)
NUNCA, se ponen los parentesis en el código de barras, solo en la parte humanamente legible.
El código de barra sería: 0038412348100012345217921231
|
Otra cosa a tener en cuenta es que los códigos EAN128 se dividen en 3:
EAN128A - Permiten números y un juego de carateres
EAN128B - Permiten números y otro juego de caracteres
EAN128C - Solo permiten números
http://el-codigo-de-barras.awardspace.com/resumen/
Le versión EAN128C ocupa menos espacio, ya que con menos barras puede codificar mas caracteres.
Hay unos caracteres especiales, utilizados para indicar que pasas de una codificacion a otra en medio del código de barras.
http://www.adams1.com/128table.html
Mira los ultimos valores de la lista (99-106). Solo los valores para cambiar de codificacion y el comienzo del código de barra según tipo.
Ejemplo: Si tienes un montón de numeros y luego vienen una letras indicando el lote, empezarías codificando con EAN128C + CodigoEspecia C->A + EAN128A.
FastReport tiene la posibilidad de imprimir cualquiera de los tres códigos de barra pero no puede imprimir codigos "mezclados".
Yo he modificado los fuentes de FastReport, agregando EAN128Auto. Creo que solo modifiqué frbarcod.pas y fr_barc.pas
Lo hice en la versión FastReport 2.51.
Trataré de pasarlo como adjunto a este mensaje, por si te sirve.