AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Funciones estándar / Funciones de impresión
  • Presentación
  • Los códigos de barras soportados por WINDEV
  • Códigos de barras soportados
  • Código de barras UPC (Universal Product Code)
  • Código de barras EAN (European Article Numbering system)
  • INTER2OF5 bar code
  • Código de barras CODABAR
  • Código de barras MSI
  • Código 39 código de barras
  • Código 128 código de barras
  • Código de barras DataMatrix
  • Código de barras PDF 417
  • código QR
  • Código de barras azteca
  • Código de barras MaxiCode
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Presentación
El uso de códigos de barras para identificar y gestionar los productos se ha convertido en algo esencial.
El principio de los códigos de barras es sencillo: se utilizan varias tiras verticales o cuadradas de diferente tamaño y anchura para codificar una set de información.
La información representada por un código de barras es una serie de caracteres numéricos o alfanuméricos. Esta información puede ser completada por los caracteres utilizados para simplificar la lectura o por los caracteres de control.
Esta información puede ser leída:
  • WINDEV a través de un dispositivo dedicado y recuperado en una aplicación WINDEV.
    Para los códigos de barras del QR Code, también tienes la capacidad de leer un código de barras que se encuentra en un Image.
  • Android a través de la cámara de un teléfono Android y recuperado en una aplicación Android.
  • iPhone/iPad a través de la cámara de un iPhone o iPad y recuperado en una aplicación iOS. Para los códigos de barras del Código QR, también tienes la capacidad de leer un código de barras que se encuentra en un Image.
Estos códigos de barras pueden imprimirse desde una aplicación WINDEV o WINDEV Mobile o desde un sitio WEBDEV.
WINDEV, WINDEV Mobile y WEBDEV le permiten gestionar varios tipos de códigos de barras. Todos estos tipos se pueden imprimir. Para obtener más información, consulte Impresión de códigos de barras.
Los códigos de barras soportados por WINDEV

Códigos de barras soportados

Diferentes tipos de códigos de barras están disponibles. Cada uno de ellos se utiliza en un campo específico. Veamos los principales tipos de códigos de barras administrados por WINDEV, WINDEV Mobile y WEBDEV:
  • UPC (Universal Product Code): Código de barras en los productos del supermercado (EE.UU.).
  • EAN (European Article Numbering system): Extensión europea del código UPC.
  • INTER2OF5: Código de barras utilizado en la zona industrial.
  • CÓDABAR: Código de barras usado en librerías, bancos de sangre.
  • código MSI: La codificación se realiza poco a poco, siendo cada bit la combinación de una barra sólida y una barra vacía.
  • Código 39: Primer código de barras alfanumérico desarrollado.
  • Código 128: Código alfanumérico de alta densidad.
  • Código DataMatrix: Código de barras en 2 dimensiones, utilizado para codificar una gran cantidad de información en una pequeña superficie.. Este tipo de código de barras se utiliza, por ejemplo, para los componentes electrónicos.
  • 417 Código PDF: Código de barras en 2 dimensiones. Este tipo de código de barras puede soportar hasta 2000 caracteres. Este tipo de código de barras se utiliza en el cuidado de la salud, el transporte, ....
  • Código QR: Código de barras en 2 dimensiones. Este tipo de código de barras se utiliza para almacenar diferentes tipos de información (direcciones web, texto, números de Phone, SMS, ...) y puede ser utilizado directamente por los Phone s de celulares o por los smartPhone s.
  • código azteca: Código de barras en 2 dimensiones. Este tipo de código de barras se utiliza principalmente para los billetes de tren desmaterializados..
  • MaxiCode: Código de barras en 2 dimensiones. Este tipo de código de barras se utiliza principalmente para el transporte (empresa de transporte UPS)..
Los siguientes párrafos presentan estos tipos de códigos de barras y sus características soportadas por WINDEV, WINDEV Mobile y WEBDEV.

Código de barras UPC (Universal Product Code)

Código de barras UPC
Código de barras en los productos del supermercado (EE.UU.). Su tamaño total es de 12 dígitos. Contiene:
  • el código de proveedor (5 caracteres).
  • el código del producto (5 caracteres).
  • un número de sistema.
  • un personaje de control.

Código de barras EAN (European Article Numbering system)

EAN13 bar code
Código EAN 13
Extensión europea del código UPC. Existen varias versiones:
  • EAN 13, que contiene los 12 caracteres del código UPC y un número de control de paridad.
  • EAN 8, que contiene 2 caracteres reservados, un código de 5 caracteres y un carácter control.
  • EAN 128: ver código 128

INTER2OF5 bar code

INTER2OF5 bar code
Código de barras utilizado en las zonas industriales, compacto con un máximo de 18 caracteres por pulgada.. Se utiliza principalmente para la lectura totalmente automatizada.

Código de barras CODABAR

Código de barras CODABAR
Código de barras usado en librerías, bancos de sangre. Acepta caracteres además de dígitos: "$ABCD./+:-".
La cadena debe comenzar y terminar con un carácter START/STOP. Los caracteres START/STOP son A, B, C, D. El carácter A se añade automáticamente si este carácter no se encuentra en la cadena.
Ejemplo de valor: "A123456789123456789A"

Código de barras MSI

Código de barras MSI
La codificación se realiza poco a poco, siendo cada bit la combinación de una barra sólida y una barra vacía.. Acepta 10 dígitos y 6 caracteres adicionales.
Características soportadas para este código de barras:
  • Códigos de barras con cheque: el último carácter del código de barras corresponde a un carácter de control.
  • Código de barras extendido: un código de barras extendido puede contener los 128 caracteres que se encuentran en el código ASCII.

Código 39 código de barras

Código 39 código de barras
Primer código de barras alfanumérico desarrollado. Originalmente, acepta las 26 letras del alfabeto en mayúsculas.. Con extensión, los 128 códigos ASCII son accesibles.
El Código 93 es una extensión del código 39.
Características soportadas para este código de barras:
  • Códigos de barras con cheque: el último carácter del código de barras corresponde a un carácter de control.
  • Código de barras extendido: un código de barras extendido puede contener los 128 caracteres que se encuentran en el código ASCII.
El *carácter está reservado para START y STOP: no se puede utilizar en el código (excepto si el código de barras está extendido).

Código 128 código de barras

Código 128 código de barras
Código alfanumérico de alta densidad.
Está usando tres grupos diferentes de caracteres. La set de caracteres utilizada es seleccionada automáticamente por WINDEV, WEBDEV o WINDEV Mobile para dibujar el código de barras más pequeño posible.
Se genera automáticamente un carácter de corrección. Su valor es igual a la suma ponderada de los valores de los caracteres modulo 103.
control caracteres
Se aceptan los siguientes personajes de control: <FNC1>, <NUL>, <FNC2>, <FNC3>, <FNC4>, &ltSHIFT
Ejemplo: Codificación de un carácter FNC1 antes de la cadena "CODE <128>".: "<FNC1>CÓDIGO <<128>"
Los valores especificados entre < > se codifican tal cual (independientemente del conjunto de caracteres seleccionado).
Ejemplo: El código de idioma WL utilizado para imprimir el siguiente código de barras EAN128: (01)93067280205495(3103)018750
iDestination(iViewer, i100)
iPrintBarCode("01<FNC1>93067280205495<FNC1>3103018750", ...
BC_EAN128, 20, 20, 90, 90, BC_ControlDigits)
iEndPrinting
Observación: Los corchetes no se imprimen, pero se utilizan para separar los datos del texto destinado a ser leído por un ser humano.. El carácter <FNC1> se utiliza para separar los datos en un código de barras EAN128. FNC1 es un personaje de control. Para insertarlo en la cadena a codificar, especifique la constante BC_control Digits (o "Especifique los caracteres control" en el editor de reportes).
Juegos de caracteres
Por defecto, la set de caracteres utilizada es seleccionada automáticamente por WINDEV, WEBDEV o WINDEV Mobile para dibujar el código de barras más pequeño posible.
Los siguientes caracteres de control le permiten especificar la set de caracteres que se utilizará:
  • para especificar la set de caracteres al principio del código de barras: <INICIO A>, <INICIO B>, <INICIO C>. Si no se especifica un START, el "CODE A" set es usado por Default.
  • para cambiar la set de caracteres en el código de barras: <CODE A>, <CODE B>, <CODE C&gt.
En Default, los caracteres de control están encerrados entre "<" y ">". Para no interpretar estos caracteres como caracteres control, basta con duplicar el primer "<":
  • "<C40>" = carácter control
  • "<<AB>" = <AB> a codificar en el código de barras.
Ejemplo: Código WLanguage utilizado para imprimir un código de barras con las siguientes características: los 3 primeros caracteres alfanuméricos deben estar en set B y los 10 últimos en set C:
iDestination(iViewer, i100)
iPrintBarCode("<START B>ABC<CODE C>0123456789", BC_CODE128, 20, 20, 80, 60, BC_Charsets)
iEndPrinting()

Código de barras DataMatrix

Código de barras DataMatrix
Código de barras en 2 dimensiones, que permite codificar hasta 2335 caracteres alfanuméricos o 3116 caracteres numéricos en una superficie pequeña.. Este tipo de código de barras se utiliza, por ejemplo, para los componentes electrónicos.
Características soportadas para este código de barras:
  • El tamaño de la matriz. Por defecto, el tamaño de la matriz se calcula según el tamaño de la cadena y se optimiza a get una matriz cuadrada.
  • Los personajes de control: Se aceptan los siguientes personajes de control: <FNC1>, <NUL>, <PAD>, <STRUCTURED APPEND>, <READER PROGRAMMING>, <05 MACRO>, <06 MACRO>, &ltECI&gt.
  • Conjunto de caracteres: La elección de la set de caracteres está optimizada para escribir el código de barras más pequeño posible.
    Los siguientes caracteres de control permiten especificar la set de caracteres que se utilizará: <ASCII>, <C40>, <TEXTO>, <X12>, <EDIFACT>, <BASE256>. El set por defecto de los caracteres es "ASCII". Esta set debe ser usada para especificar un valor que ya está codificado o para especificar otra set de caracteres. Para volver al código ASCII de otro set de caracteres, sólo hay que especificar...
En Default, los caracteres de control están encerrados entre "<" y ">". Para no interpretar estos caracteres como caracteres control, basta con duplicar el primer "<":
  • "<C40>" = carácter control
  • "<<AB>" = <AB> a codificar en el código de barras.

Código de barras PDF 417

Código de barras PDF 417
Código de barras en 2 dimensiones. Este tipo de código de barras puede soportar hasta 2000 caracteres (los códigos de barras unidimensionales no soportan más de 30 caracteres)..
La capacidad de almacenamiento de este tipo de código de barras es muy importante.
Este tipo de código de barras se utiliza en el cuidado de la salud, el transporte, ....
Para el Códigos de barras PDF417se soportan también las siguientes características:
  • Por Default, el tamaño de la matriz se calcula según el tamaño de la cadena
  • Nivel de corrección calculado según la Length( después de la compresión) de los datos a codificar:
    • de 1 a 40 caracteres: nivel 2
    • de 41 a 160 caracteres: nivel 3
    • de 161 a 320 caracteres: nivel 4
    • de 321 caracteres: nivel 5
  • Altura de Line: 4 de Default
  • Caracteres de control: Los caracteres aceptados de control son <NUL> y <INICIO DE LECTURA...
  • Conjunto de caracteres: Por defecto, la elección de la set de caracteres está optimizada para escribir el código de barras más pequeño posible.
    Los siguientes caracteres de control permiten especificar la set de caracteres que se utilizará: <TC ALFA>, <TC BAJA>, <TC MIXTA>, <TC PUNTUACIÓN>, <BC>, <NC...
Ejemplo: Código WLanguage utilizado para imprimir un código de barras PDF 147 especificando la set de caracteres:
iPreview(i100)
iPrintBarCode("<READER INIT><TC LOWER>abcd<TC MIXED><TC PUNCTUATION>(?)", ...
BC_PDF417, 0, 0, 200, 200, BC_ControlDigits + BC_Charsets)
iEndPrinting()
En Default, los caracteres de control están encerrados entre "<" y ">". Para no interpretar estos caracteres como caracteres control, basta con duplicar el primer "<":
  • "<C40>" = carácter control
  • "<<AB>" = <AB> a codificar en el código de barras.

código QR

Código QR
Código de barras en 2 dimensiones, hecho de módulos negros dispuestos en un cuadrado con un White Background. Este tipo de código de barras está destinado a ser leído por un lector de código QR, un Phone móvil o un smartPhone. Puede soportar hasta 7089 caracteres numéricos o 4296 caracteres alfanuméricos (los códigos de barras unidimensionales no soportan más de 30 caracteres)..
La capacidad de almacenamiento de este tipo de código de barras es muy importante.
Este tipo de código de barras se utiliza en varios campos. Puede almacenar direcciones web, texto, números de Phone, SMSs, ...
Para el Códigos QRTambién tiene la posibilidad de especificar un nivel de corrección para el error.: si el código está dañado, se puede restaurar hasta un 30% de las palabras codificadas. Los niveles de corrección son los siguientes:
  • Nivel L: cerca del 7% de las palabras codificadas pueden ser restauradas.
  • Nivel M: alrededor del 15% de las palabras codificadas pueden ser restauradas.
  • Nivel Q: alrededor del 25% de las palabras codificadas pueden ser restauradas.
  • Nivel H: alrededor del 30% de las palabras codificadas pueden ser restauradas.

Código de barras azteca

Código de barras azteca
Código de barras en 2 dimensiones, hecho de un blanco cuadrado central. Los datos se codifican en las capas concéntricas de píxeles alrededor de este objetivo.. Este tipo de código de barras está destinado a ser leído por un lector de código de barras, un Phone de celda o un smartPhone. Puede soportar hasta 3000 caracteres ASCII.
Este tipo de código de barras se utiliza principalmente para los billetes de tren desmaterializados..
Para los códigos de barras Aztec, también se puede especificar el nivel de corrección de errores en porcentaje, entre 5 y 95%. Si el código está dañado, se puede restaurar hasta el 95% de las palabras codificadas.

Código de barras MaxiCode

Código de barras MaxiCode
Código de barras en 2 dimensiones, formado por un elemento central, similar a un objetivo, rodeado por una matriz cuadrada de 33 filas de 29, o posiblemente 30, elementos hexagonales.. Este tipo de código de barras está destinado a ser leído por un lector de código de barras específico.. El MaxiCode tiene un tamaño fijo set a 1 pulgada sobre 1 pulgada. Se utiliza para imprimir alrededor de 100 caracteres alfanuméricos en su superficie de 1 pulgada cuadrada.. Este tipo de código de barras se utiliza para el transporte, la seguridad, la salud, y principalmente por la empresa UPS que desarrolló este tipo de código de barras..
Este tipo de código de barras propone diferentes modos. Para especificar el modo utilizado (2 a 4), todo lo que tiene que hacer es usar la etiqueta <MODEx> donde x corresponde al número del modo solicitado. El modo 2 y 3 corresponde al formato específico utilizado por UPS. También se admiten las siguientes etiquetas:
  • <EOT>
  • <GS>
  • <RS>
  • <FS>
Observación: Para utilizar los caracteres < y'>', deben escribirse dos veces.
Atención: Este código de barras no puede ser decodificado en la pantalla. Debe ser impreso.
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Problemas a decodificar um QR-Code no Telemóvel(Celular)
Ao gerar um QR-Code, se o mesmo tiver dificuldade em ser interpretado, experimente usar este código:

O Decode da imagem teimava em não funcionar no celular. No entanto, se o QRCode, com o mesmo conteúdo, fosse gerado fora do Windev, funcionava TOP.

qr is BarCode
qr..Content = EDT_qr
qr..TypeBarCode = BC_QRCODE
qr..CorrectionError = qrcodeLevelH
qr..ContentType = bcTypeText
(até à V27, apenas funciona no Windev)

Este código desenvolvido pelo Paulo Maia, ao qual agradeço imenso, pois resolveu definitivamente o meu problema
João Ferreira
16 01 2023

Última modificación: 09/06/2022

Señalar un error o enviar una sugerencia | Ayuda local