Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Na tentativa de resolver o problema que tive com as mensagens de ACBRECF ocupado, fiz a seguinte funcao:

Function TForm1.ACBReCF_Liberado() : Boolean;

begin

while (ACBRECF1.AguardandoResposta) or (ACBRECF1.AguardaImpressao) do Sleep(1);

Result := true;

end;

Com isso, faço a seguinte checagem:

// Exemplo numa sangria

if ACBReCF_Liberado() then ACBRECF1.Sangria(vValorSangria);

// Exemplo numa leituraX

if ACBReCF_Liberado() then ACBRECF1.LeituraX();

e assim por diante, ou seja: em todos os comandos que façam a impressora executar algo, eu chamo antes esta funcao, que vai aguardar o componente liberar.

Pergunto: seria realmente este o caminho ou tem alguma outra forma de fazer, ou isso que fiz eh uma completa tolice?

  • Fundadores
Postado

Não há necessidade disso, pois o ACBeECF "prende" o fluxo do Pascal enquanto o ECF não responder ao comando enviado...

O erro de ocupado só ocorrerá quando vc enviar comandos ao mesmo tempo (isso é possível, em eventos)

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.

  • Este tópico foi criado há 4864 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.