sexta-feira, 7 de janeiro de 2011

Conexão com Balanças - Entendo os Códigos Emitidos pela Balança


Como nesse artigo o objetivo é explicar como funcionam os códigos emitidos pela balanças eletrônicas, vou postar uma dúvida que eu peguei em um fórum de automação comercial que participo.

Pergunta:
"Gostaria de entender os Códigos Emitidos pelas Balanças Computadoras (Platina, Prix, etc)
Tipo todas elas emitem o Código com inicio 2 então no meu sistema já sei se o recebido tiver 2 no inicio isso indicado que é algo na balança. até ai tudo bem...
Porem não consegui entender os outros dígitos que estão junto...
Se não estou enganado o ultimo seria digito verificador outros seriam o Código do Produto e outros seriam o total do produto.
o Meu problema esta ai abstrair o restante...
Também sei que tem tamanhos de códigos diferentes alguns com 4 dígitos outros com 6 dígitos mas não consegui ligar muito as coisas não"
Resposta:
Pode haver algumas variações na etiqueta impressa. Essas variações podem ser:
A - 2 C C C C 0 T T T T T T DV
B - 2 C C C C 0 0 P P P P P DV
C - 2 C C C C C T T T T T T DV
D - 2 C C C C C 0 P P P P P DV
E - 2 C C C C C C P P P P P DV
Onde:
2 - Digito 2 sempre
C - Código do Produto
0 - Espaço, não utilizado
T - Valor Total a Pagar
P - Peso ou Quantidade
DV- Digito Verificador EAN-13
Obs: Estes modelos podem ser configurados no programa que acompanha as balanças.
Para que o seu sistema saiba qual o tipo do código de barras que será impresso na balança, ou seja, para que você saiba como tratar no seu sistema, temos que criar uma tela de configuração para armazenar as posições da etiqueta.
Veja na figura abaixo um exemplo que serve para configurarmos corretamente as variações que podem acontecer nas etiquetas.
Com isso tudo configurado, quando o caixa (funcionário), por exemplo, passar um código de barras de um produto no PDV, o mesmo vai saber em qual posição está o peso do produto, código, preço e etc.
O que poderíamos fazer é verificar se o código de barras começa com o digito 2. Se for, já sabemos que trata-se de um código vindo da balança. Agora só nos resta pegarmos as informações que a etiqueta traz.

Ex:
Codigo de balança -> 2 0 1 0 1 0 0 0 0 0   9  0  7
Posições          -> 1 2 3 4 5 6 7 8 9 10 11 12 13
1 - prefixo balança;
2 a 5 ou 7 - código produto;
8 a 12 - preço na etiqueta


Conclusão

Bom, esse artigo foi para explicar como funcionam os códigos de barras impressos pelas balanças eletrônicas. Nos próximos artigos vou apresentar o componente acbrBal, que é para Leitura de informações de Balanças eletrônicas (Filizola, Toledo, Urano, etc) e que faz parte do projeto open source Acbr.
Para realizar a comunicação serial o projeto acbr usa a classe SynaSer
Projeto: Ararat Synapse (http://www.ararat.cz/synapse/)

Sérgio de Castro Guedes 
Contato: sergio_rj45@yahoo.com.br 
Programador com experiência em banco de dados MSSQL, Firebird e 
Oracle. Moderador de Conteúdo do Fórum, Editor Técnico e Colunista do Portal Active Delphi.
Administrador do Projeto Open Source Sia Consult (Sistema Comercial ERP).
Membro do projeto Acbr (Automação Comercial Brasil) e Desenvolvedor da VAP Informática, umas das maiores empresas de software de Manaus AM.

Referencias
- André Ferreira de Moraes - Membro do Projeto Acbr (http://acbr.sourceforge.net)
- Fórum do Projeto ACbr (http://www.forumweb.com.br/foruns/index.php?showforum=465)

Nenhum comentário:

Postar um comentário