O código de barras é a representação digital impressa de uma informação e está diretamente ligada à captura de dados. O código de barras automatiza o processo de captura dos dados. Ao invés de digitá-los, os dados são capturados por um leitor óptico.



Tipos de código de barras

Existem dezenas de padrões, todos aceitos internacionalmente. Os principais são:


Ao utilizar o método FWMSBAR da FWMSPrinter para impressão dos códigos de barras padrão (EAN8, EAN13 e UPC) e informar .F. para lBanner, não é possível realizar a impressão sem a linha de código abaixo da barra. 

Exemplo:

Para os tipos de códigos de barras informados a linha de código sempre será impressa, pois este padrão auxilia na identificação dos itens comerciais, através do uso de estrutura númerica do código abaixo das barras. Jamais deve ser separada no cadastro e referência gerais dos itens, pois somente a combinação completa dos dígitos garante a exclusividade das numerações no mercado.




UPC / EAN

Este é o símbolo usado para a identificação de bens de consumo para o segmento de varejo. Os símbolos UPC são de tamanho fixo, sendo compulsórios em varejo e na indústria de alimentos, não sendo usados em nenhum outro lugar. Foram desenvolvidos para atender as necessidades do varejo em geral, uma vez que adapta 12 dígitos a um espaço razoavelmente compacto.

CÓDIGO 39

Desenvolvido para atender algumas indústrias que necessitam codificar o alfabeto, assim como números, em um código de barras, sendo o Código 39, a simbologia mais popular do código de barras nesta opção. É tipicamente o código de barras mais usado para identificação em estoques e de processos em diversos segmentos industriais. Todavia, o Código 39 produz códigos de barras relativamente longos e pode não ser adequado quando a largura da etiqueta for considerada.

CÓDIGO 128

Este código de barras provém da necessidade de uma seleção mais ampla de caracteres do que o Código 39 poder fornecer. Quando a largura da etiqueta é considerada, o Código 128 é uma boa alternativa porque é muito compacto e resulta em um símbolo denso. Esta simbologia é frequentemente utilizada na indústria de transportes onde o tamanho da etiqueta é um problema.

INTERCALADO 2 DE 5

Outra simbologia popular na indústria de transportes. Intercalado 2 de 5 é muito utilizado também em operadores logísticos. É uma simbologia muito compacta e são vistos em caixas de papelão para volumes, onde os objetos são embarcados para envio aos depósitos e supermercados.


Informações sobre EAN 128 (Code 128)

O código 128, permite imprimir todos os 128 caracteres ASCII, incluindo caracteres alfanuméricos maiúsculos e minúsculos, bem como os caracteres de controle. Além disso existem alguns caracteres especiais, de uso intrínseco ao código 128.

O código 128 está dividido em três subconjuntos: A, B e C dos quais apenas um pode estar ativo de cada vez. Cada um dos códigos tem um sentido diferente dependendo do subconjunto ativo.



Código Natural

São os códigos de barra padrão EAN (8/13/128/UPC-A/UPC-E) e também o próprio código do produto.



Código Interno

O código interno é  o conjunto das informações cadastradas na tabela CB0 - Código Interno.

Este tipo de código permite, quando da leitura da etiqueta, a visualização de várias informações sobre o produto, tais como, armazém, endereço, lote, data de validade, quantidade, etc.



Desenvolvimento de Código de Barras

Desenvolvidas bibliotecas disponíveis no RPO padrão, que permitem desenvolver códigos de barras para as seguintes linguagens de programação em ADVPL:



Configuração do Server INI

[TELNET]

Enable=1

Environment=DBF811

Main=U_TESTERF

Port=1080

Onde:

Enable

Ativa/Desativa o serviço do Telnet server no Microsiga Protheus®.

Environment

Ambiente utilizado para execução da aplicação VT100.

Main

Indica qual é o programa principal a ser executado, na implantação do ACDSTD ou WMS necessário para que seja especificado, conforme segue Main=sigaacd.

Port

Indica a porta usada pelo serviço Telnet server.

MaxRow

Indica a quantidade de linhas disponíveis para utilização, tendo como default 8.

MaxCol

Indica a quantidade de colunas disponíveis para utilização, tendo como default 20

InactiveTimeOut

Indica a quantidade de segundos para desconectar, caso o equipamento esteja inativo.