ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

codigo de barras

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Automação Comercial
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
jorgejlbd
Aprendiz
Aprendiz


Registrado: Segunda-Feira, 28 de Fevereiro de 2005
Mensagens: 131

MensagemEnviada: Sáb Mai 17, 2008 10:04 am    Assunto: codigo de barras Responder com Citação

Preciso colocar o codigo de barra no meu programa de vendas
como faço..
uso delphi 7 / firebird 1,5


obrigado.....
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Borland_Linuxer
Moderador
Moderador


Registrado: Terça-Feira, 11 de Outubro de 2005
Mensagens: 4252
Localização: Manaus - Am

MensagemEnviada: Sáb Mai 17, 2008 1:43 pm    Assunto: Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail Visitar a homepage do Usuário MSN Messenger
jorgejlbd
Aprendiz
Aprendiz


Registrado: Segunda-Feira, 28 de Fevereiro de 2005
Mensagens: 131

MensagemEnviada: Sex Mai 23, 2008 5:23 pm    Assunto: Codigo de barras Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular
vitoraraujo
Novato
Novato


Registrado: Sexta-Feira, 8 de Fevereiro de 2008
Mensagens: 23

MensagemEnviada: Dom Mai 25, 2008 11:46 am    Assunto: Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular
jampani
Novato
Novato


Registrado: Quinta-Feira, 7 de Julho de 2005
Mensagens: 13

MensagemEnviada: Dom Jun 01, 2008 10:58 am    Assunto: Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail MSN Messenger
jorgejlbd
Aprendiz
Aprendiz


Registrado: Segunda-Feira, 28 de Fevereiro de 2005
Mensagens: 131

MensagemEnviada: Ter Jun 03, 2008 11:30 am    Assunto: codigo de barras Responder com Citação

obrigado amigos
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
Giovanna
Novato
Novato


Registrado: Quarta-Feira, 25 de Junho de 2008
Mensagens: 36

MensagemEnviada: Ter Dez 16, 2008 5:24 am    Assunto: Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
Tchock
Colaborador
Colaborador


Registrado: Domingo, 18 de Julho de 2004
Mensagens: 1242

MensagemEnviada: Ter Dez 16, 2008 9:39 am    Assunto: Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular
Giovanna
Novato
Novato


Registrado: Quarta-Feira, 25 de Junho de 2008
Mensagens: 36

MensagemEnviada: Ter Dez 16, 2008 9:56 pm    Assunto: Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
Tchock
Colaborador
Colaborador


Registrado: Domingo, 18 de Julho de 2004
Mensagens: 1242

MensagemEnviada: Qua Dez 17, 2008 11:04 pm    Assunto: Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular
vitoraraujo
Novato
Novato


Registrado: Sexta-Feira, 8 de Fevereiro de 2008
Mensagens: 23

MensagemEnviada: Sex Dez 19, 2008 7:28 pm    Assunto: Responder com Citação

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
Ver o perfil de Usuários Enviar Mensagem Particular
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Automação Comercial Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB