Ir para conteúdo
  • Cadastre-se

dev botao

ACBrMTer - Não mostrar o que digitou


  • Este tópico foi criado há 1756 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Olá bom dia!

Estou com um problema no ACBrMTer, eu preciso que o usuário quando passar um código de barra, no caso seria um código de barra de etiqueta de balança, eu automaticamente já vou adicionar o produto no sistema e quero que o código de barra não apareça no visor do micro terminal, pois assim o usuário já pode passar o próximo produto.

Então quando eu recebo o evento ACBrMTer1RecebeDados eu já faço a inclusão do produto, porem mesmo se eu alterar a propriedade EchoMode para mdeNone, o micro terminal recebe o código lido pelo leitor de código de barra e só no próximo comando que o usuário der no micro terminal é que o EchoMode respeita e não mostra o que o leitor leu.

Como eu faço para não aparecer o comando que ele digitou?

Link para o comentário
Compartilhar em outros sites

  • Membros Pro

Daniel, estou dizendo que quando eu recebo o evento ACBrMTer1RecebeDados eu não sei se o usuário digitou o código do produto ou passou o leitor, então através do parâmetros “Recebido” é que vou identificar se é código ou código de barra, se for código de barra eu estou sentando a propriedade ACBrMTer1.EchoMode = mdeNone, porem quando o evento ACBrMTer1RecebeDados termina o componente continuar no evento procedure TACBrMTer.DoRecebeDados(const aIP: String;  const DadosRecebidos: AnsiString);

 

Neste evento a propriedade wEchoMode, não respeita o mdeNone que eu troquei antes.

Se o wEchoMode, estive obedecido o tipo mdeNone, no comando

case wEchoMode of

    mdeNormal  :    fMTer.ComandoEco(wConexao.Comandos, DadosEcho);

    mdePassword:    fMTer.ComandoEco(wConexao.Comandos, StringOfChar(PasswordChar, Length(DadosEcho)));

  end;

 

Ele não devolveria nada para o micro terminal.


Resumindo, o ACBrMTer não respeita você mudar o Echo no evento ACBrMTer1RecebeDados, Entendeu?

Link para o comentário
Compartilhar em outros sites

  • Fundadores
17 minutos atrás, marcellocainelli disse:

estou sentando a propriedade ACBrMTer1.EchoMode = mdeNone,

isso está errado... veja o parâmetro do evento:

procedure TForm1.ACBrMTer1RecebeDados(const IP: AnsiString;
  const Recebido: AnsiString; var EchoMode: TACBrMTerEchoMode);  // <--- AQUI
begin
  EchoMode := mdeNone;  // <-- DESLIGANDO, apenas para esses dados recebidos

 

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1756 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.