| Exibir mensagem anterior :: Exibir próxima mensagem |
| Autor |
Mensagem |
jorgejlbd Aprendiz

Registrado: Segunda-Feira, 28 de Fevereiro de 2005 Mensagens: 131
|
Enviada: Sáb Mai 17, 2008 10:04 am Assunto: codigo de barras |
|
|
Preciso colocar o codigo de barra no meu programa de vendas
como faço..
uso delphi 7 / firebird 1,5
obrigado..... |
|
| Voltar ao Topo |
|
 |
Borland_Linuxer Moderador

Registrado: Terça-Feira, 11 de Outubro de 2005 Mensagens: 4252 Localização: Manaus - Am
|
Enviada: Sáb Mai 17, 2008 1:43 pm Assunto: |
|
|
Ola amigo, blz.
Amigo que tipo de etiqueta vc esta precisando implementar no seu sistema ?
Existem impressao em impressoras Termicas como argox e zebra que possuiem linguagem propria de comunicacao.
e impressao para lase jater e etc.
Ou derepente vc pode esta precisando apenas implementar a leituras dos codigos de barras no seu sistema.
abracos _________________ Abraços
Sérgio Guedes
www.lsisistemas.com.br
www.scvarejo.com.br - Projetos para parceiros e desenvolvedores |
|
| Voltar ao Topo |
|
 |
jorgejlbd Aprendiz

Registrado: Segunda-Feira, 28 de Fevereiro de 2005 Mensagens: 131
|
Enviada: Sex Mai 23, 2008 5:23 pm Assunto: Codigo de barras |
|
|
estou precisando implementar a leituras dos codigos de barras no meu sistema.
pos queria colocar um leitor de codigo de barras....
queria saber se tem uma função ja pronta ou coisa assim
obrigado |
|
| Voltar ao Topo |
|
 |
vitoraraujo Novato

Registrado: Sexta-Feira, 8 de Fevereiro de 2008 Mensagens: 23
|
Enviada: Dom Mai 25, 2008 11:46 am Assunto: |
|
|
Amigo a maioria dos leitores de código de barras funciona como um teclado, da seguinte forma :
1º Ler o código de barras
2º Tecla a tecla "Enter".
Pra fazer a leitura do código basta colocar no evento onKeyDown do seu edit a interceptação da tecla "Enter".
| Código: | begin
if Key = vk_return then
begin
....
end;
end; |
Ou seja não precisa de nenhum comando ou DLL especifica pra tais leitores, com ecessão de leitores que utilizam a interface serial (Muito pouco usado) que ai sim você teria que ler através da porta. |
|
| Voltar ao Topo |
|
 |
jampani Novato

Registrado: Quinta-Feira, 7 de Julho de 2005 Mensagens: 13
|
Enviada: Dom Jun 01, 2008 10:58 am Assunto: |
|
|
| Se for um leitor convencional somente vc colocar um edit e quando estiver com foco nele vc ler o codigo ele vai jogar a informacao lida no leitor no edit, agora se for o leitor de codigo de barra serial precisa de componentes, me avise que tenho eles e o exemplo para vc. |
|
| Voltar ao Topo |
|
 |
jorgejlbd Aprendiz

Registrado: Segunda-Feira, 28 de Fevereiro de 2005 Mensagens: 131
|
Enviada: Ter Jun 03, 2008 11:30 am Assunto: codigo de barras |
|
|
| obrigado amigos |
|
| Voltar ao Topo |
|
 |
Giovanna Novato

Registrado: Quarta-Feira, 25 de Junho de 2008 Mensagens: 36
|
Enviada: Ter Dez 16, 2008 5:24 am Assunto: |
|
|
| vitoraraujo escreveu: | Amigo a maioria dos leitores de código de barras funciona como um teclado, da seguinte forma :
1º Ler o código de barras
2º Tecla a tecla "Enter".
Pra fazer a leitura do código basta colocar no evento onKeyDown do seu edit a interceptação da tecla "Enter".
| Código: | begin
if Key = vk_return then
begin
....
end;
end; |
Ou seja não precisa de nenhum comando ou DLL especifica pra tais leitores, com ecessão de leitores que utilizam a interface serial (Muito pouco usado) que ai sim você teria que ler através da porta. |
Qual o código completo pra fazer a leitura do código de barras? |
|
| Voltar ao Topo |
|
 |
Tchock Colaborador


Registrado: Domingo, 18 de Julho de 2004 Mensagens: 1242
|
Enviada: Ter Dez 16, 2008 9:39 am Assunto: |
|
|
Amigo basta seguir a informação que o vitoraraujo lhe passou...
O codigo varia de cada sistema e da forma do programador programar no sistema... |
|
| Voltar ao Topo |
|
 |
Giovanna Novato

Registrado: Quarta-Feira, 25 de Junho de 2008 Mensagens: 36
|
Enviada: Ter Dez 16, 2008 9:56 pm Assunto: |
|
|
| Tchock escreveu: | Amigo basta seguir a informação que o vitoraraujo lhe passou...
O codigo varia de cada sistema e da forma do programador programar no sistema... |
Mas não sei que código precisa porque sou iniciante. |
|
| Voltar ao Topo |
|
 |
Tchock Colaborador


Registrado: Domingo, 18 de Julho de 2004 Mensagens: 1242
|
Enviada: Qua Dez 17, 2008 11:04 pm Assunto: |
|
|
Giovana eu uso dessa forma a inserção do codigod e barras
| Código: | // codigo de barras
If Key=#13 then
Begin
wTexto[99]:='';
wTexto[98]:='';
// codigo do produto
wTexto[99] :=Uppercase(alltrim(EditCODIGO.Text));
EditCodigo.Text :='';
// checar se o produto existe
wInteger[0]:=0; // Quantidade disponivel
{
If FrmCupomNaoFiscal.db_estoque.Locate('CODIGO',wTexto[99],[])=False then
begin
Erro('Produto não cadastrado no estoque');
EditCODIGO.SetFocus;
Exit;
End;
}
// atualizar dados em rede
// FrmCupomNaoFiscal.db_estoque.Refresh;
FrmCupomNaoFiscal.db_estoque.Close;
FrmCupomNaoFiscal.db_estoque.ParamByName('CODIGO').AsString :=wTexto[99];
FrmCupomNaoFiscal.db_estoque.Open;
if FrmCupomNaoFiscal.db_estoque.RecordCount<1 then
begin
Erro('Produto não cadastrado no estoque');
EditCODIGO.SetFocus;
FrmCupomNaoFiscal.db_estoque.Close;
Exit;
End;
FrmCupomNaoFiscal.db_estoque.first;
// checar as quantidades
wInteger[0]:=FrmCupomNaoFiscal.db_estoque.FieldByName('QTD_TOTAL').AsInteger;
{
// checar quantidade disponivel
If (wInteger[0] <1) then
Begin
Erro('Estoque indisponivel para o produto <'+wTexto[99]+'> ');
Abort;
End;
}
// se já existir, adicionar, caso contrário, inserir
If FrmCupomNaoFiscal.db_VendasItens.Locate('PRODUTO',wTexto[99],[])=True then
begin
FrmCupomNaoFiscal.db_VendasItens.Edit;
end
Else
begin
FrmCupomNaoFiscal.db_VendasItens.Append;
End;
// se for informado via leitor
if ViaLeitor then
begin
// irá adicionar o item na lista
If Achar[99]='+' then
begin
FrmCupomNaoFiscal.db_VendasItens.FieldByName('PRODUTO').AsString:=wTexto[99];
FrmCupomNaoFiscal.db_VendasItens.FieldByName('QTDE').AsInteger:=
FrmCupomNaoFiscal.db_VendasItens.FieldByName('QTDE').AsInteger+1;
End;
If Achar[99]='-' then
begin
FrmCupomNaoFiscal.db_VendasItens.FieldByName('PRODUTO').AsString:=wTexto[99];
FrmCupomNaoFiscal.db_VendasItens.FieldByName('QTDE').AsInteger:=
FrmCupomNaoFiscal.db_VendasItens.FieldByName('QTDE').AsInteger-1;
if FrmCupomNaoFiscal.db_VendasItens.FieldByName('QTDE').AsInteger<0 then
FrmCupomNaoFiscal.db_VendasItens.FieldByName('QTDE').AsInteger:=0;
End;
// salvar
If (FrmCupomNaoFiscal.db_VendasItens.State in [dsedit,dsinsert] ) then
Begin
FrmCupomNaoFiscal.db_VendasItens.post;
end;
EditCODIGO.Text:='';
FrmCupomNaoFiscal.db_estoque.Close;
EditCodigo.Setfocus;
end {if ViaLeitor then...}
else
begin
EditQtde.Setfocus;
end;
End; |
essa é minha forma de trabalhar varia de cada um programador
qualquer coisa so dar um toque ok...
flw |
|
| Voltar ao Topo |
|
 |
vitoraraujo Novato

Registrado: Sexta-Feira, 8 de Fevereiro de 2008 Mensagens: 23
|
Enviada: Sex Dez 19, 2008 7:28 pm Assunto: |
|
|
Giovana o que quiz dizer foi que o leitor de código de barras geralmente funciona como um simples teclado, ou seja ele ler o código e depois tecla um enter.
Agora a forma como você vai trabalhar a interpretação desse código vai depender de como você está trabalhando (banco de dados por exemplo), não existe uma regra, um simples select na tabela bastaria.
supondo que você esteja trabalhando com banco de dados baseado em SQL como o Firebird por exemplo. Sendo que a minha consulta de produtos é uma consulta assim : SELECT * FROM PRODUTO WHERE CODBARRA = :CODIGO.
| Código: | if key = vk_return then //aqui eu verifico se foi digitado a tecla enter
begin
if EditCodBarra.Text <> '' then //aqui verifico se foi digitado algum código
begin
//aqui vai a parte que fasso a consulta
with Dm.QryLocPro do
begin
Close;//fecho a consulta
ParamByName('CODIGO').AsString := Copy(EditCodBarra.Text,1,13);// Estou passando o parâmetro da consulta. Estou utilizando o comando Copy pelo fato de meu campo CODBARRA na tabela produto só possuir 13 digitos.
Open;//Aqui abra a consulta
if IsEmpity then//Caso a consulta não me resulte nenhum produto (IsEmipty) eu dou um Exit para parar o procedimento sem incluir o produto na venda
begin
exit;
end;
TbPed.Append;
TbPedQtd.Value := 1;
TbPedCodPro.AsInteger := FieldByName('CODIGO').AsInteger;
TbPedDescricao.AsString := FieldByName('NOME').AsString;
TbPedPreco.AsCurrency := FieldByName('PRECO').AsCurrency;
TbPed.Post;
//Após incluir o produto eu limpo o edit onde foi digitado o código de barras
EditCodBarra.Clear;
end;
end;
end; |
Isso é só um exemplo feito nas preças, mais como os colegas acima falaram vai depdender de como está trabalhando. Sugiro que baiche algum exemplo (no ActiveDelphi deve ter), de um PDV para estudos. |
|
| Voltar ao Topo |
|
 |
|