Ir para conteúdo
  • Cadastre-se

dev botao

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

Recommended Posts

Postado

Com muita frequencia tem ocorrido o erro: "Componente ACBRECF ocupado. Aguardando Resposta do comando anterior".

A impressora que estou usando para testes do PAF é a Bematech MP-4000 TH FI

Alguem pode dar uma ideia do motivo porque isso ocorre?

Postado

Com muita frequencia tem ocorrido o erro: "Componente ACBRECF ocupado. Aguardando Resposta do comando anterior".

A impressora que estou usando para testes do PAF é a Bematech MP-4000 TH FI

Alguem pode dar uma ideia do motivo porque isso ocorre?

Normalmente isso ocorre porque você está enviando 2 comandos com um intervalo de tempo muito curto, ou seja, a ecf nem respondeu o primeiro comando e você já está enviando outro.

De qualquer forma para que o pessoal aqui do fórum possa te ajudar, seria interessante você postar aqui, o log do acbf e o trecho de código que você recebe esta resposta.

Existem outros tópicos no fórum que tratam desde mesmo "problema".

Seria interessante você dar uma pesquisada e ver se encontra a solução neles.

Att.

Giuliano Naspolini Ribeiro

Automalog Consultoria e Sistemas Ltda

Postado

a rotina que esta gerando o erro é:

.....

ACBrECF1.VendeItem(_Referencia, _Descricao, _Setor,

_Quantidade, _VlrTabela, vValor_Descontado_ou_Acrescido,

_Unidade, '$', vSiglaDescontoOuAcrescimo);

ACBRECF1.EmLinha(1);

....

Ainda em continuacao a este problema: Encontrei nas pesquisas aqui no forum, cfe o colega sugeriu, achei duas propriedades do ACBRECF: AguardandoResposta e AguardandoImpressao.

Procurei mais sobre elas e nao achei muita coisa que esclarecesse... Como estou comecando com o ACBR, e nao tenho muita pratica, gostaria de perguntar aos mais experientes - penso que isso venha a tirar uma duvida basica minha e que pode vir a ser uma duvida de muitos colegas que estejam iniciando a implementacao de rotinas usando o ACBRECF. Qual seria a melhor pratica para o codigo acima:

primeiro modo: testar as duas propriedades:

.....

if (not ACBrECF1.AguardandoResposta) and (not ACBrECF1.AguardandoImpressao) then begin

ACBrECF1.VendeItem(_Referencia, _Descricao, _Setor,

_Quantidade, _VlrTabela, vValor_Descontado_ou_Acrescido,

_Unidade, '$', vSiglaDescontoOuAcrescimo);

ACBRECF1.EmLinha(1);

end;

....

segundo modo: fazer um while para parar a execucao ate ambos liberarem:

.....

while (not ACBrECF1.AguardandoResposta) and (not ACBrECF1.AguardandoImpressao) do Sleep(1);

ACBrECF1.VendeItem(_Referencia, _Descricao, _Setor,

_Quantidade, _VlrTabela, vValor_Descontado_ou_Acrescido,

_Unidade, '$', vSiglaDescontoOuAcrescimo);

ACBRECF1.EmLinha(1);

Postado

a rotina que esta gerando o erro é:

.....

ACBrECF1.VendeItem(_Referencia, _Descricao, _Setor,

_Quantidade, _VlrTabela, vValor_Descontado_ou_Acrescido,

_Unidade, '$', vSiglaDescontoOuAcrescimo);

ACBRECF1.EmLinha(1);

....

Ainda em continuacao a este problema: Encontrei nas pesquisas aqui no forum, cfe o colega sugeriu, achei duas propriedades do ACBRECF: AguardandoResposta e AguardandoImpressao.

Procurei mais sobre elas e nao achei muita coisa que esclarecesse... Como estou comecando com o ACBR, e nao tenho muita pratica, gostaria de perguntar aos mais experientes - penso que isso venha a tirar uma duvida basica minha e que pode vir a ser uma duvida de muitos colegas que estejam iniciando a implementacao de rotinas usando o ACBRECF. Qual seria a melhor pratica para o codigo acima:

primeiro modo: testar as duas propriedades:

.....

if (not ACBrECF1.AguardandoResposta) and (not ACBrECF1.AguardandoImpressao) then begin

ACBrECF1.VendeItem(_Referencia, _Descricao, _Setor,

_Quantidade, _VlrTabela, vValor_Descontado_ou_Acrescido,

_Unidade, '$', vSiglaDescontoOuAcrescimo);

ACBRECF1.EmLinha(1);

end;

....

segundo modo: fazer um while para parar a execucao ate ambos liberarem:

.....

while (not ACBrECF1.AguardandoResposta) and (not ACBrECF1.AguardandoImpressao) do Sleep(1);

ACBrECF1.VendeItem(_Referencia, _Descricao, _Setor,

_Quantidade, _VlrTabela, vValor_Descontado_ou_Acrescido,

_Unidade, '$', vSiglaDescontoOuAcrescimo);

ACBRECF1.EmLinha(1);

É o que eu faço Ramon. Testo "if not ACBrECF1.AguardandoResposta"

Att.

Giuliano Naspolini Ribeiro

Automalog Consultoria e Sistemas Ltda

  • 2 meses depois ...
Postado

Estou com o mesmo problema... acontece com mais frequencia em um cliente que tem uma MP 400 TH FI...

Salvei um trecho do log para ser analizado:

-- 18:45:54 FechaCupom( 42827E8C3937E70792D862494CB32159 )

TX -> [sTX]J[0][28]"42827E8C3937E70792D862494CB32159[LF],[15]

18:45:56 RX <- [0][0][0][0]

-- 18:45:56 GrandeTotal

TX -> [sTX][5][0][28]#[ETX]B[0]

18:45:56 RX <- [0][0][0][0][0]'d2%[0][0][0][0]

-- 18:46:12 Estado

TX -> [sTX][5][0][28]#[17]P[0]

18:46:12 RX <- [0][0][0][0]

-- 18:46:12

TX -> [sTX][5][0][28]#A[128][0]

18:46:12 RX <- [0][0][0][0][0]

-- 18:46:12

TX -> [sTX][5][0][28]#[ESC]Z[0]

18:46:12 RX <- [24][16][17][0][0][0][0]

-- 18:46:12

TX -> [sTX][5][0][28]#[23]V[0]

18:46:12 RX <- [24][16][17][23]V![0][0][0][0]

-- 18:46:12 Estado

TX -> [sTX][5][0][28]#[17]P[0]

18:46:12 RX <- [0][0][0][0]

-- 18:46:12

TX -> [sTX][5][0][28]#A[128][0]

18:46:13 RX <- [0][0][0][0][0]

-- 18:46:13

TX -> [sTX][5][0][28]#[ESC]Z[0]

18:46:13 RX <- [24][16][17][0][0][0][0]

-- 18:46:13

TX -> [sTX][5][0][28]#[23]V[0]

18:46:13 RX <- [24][16][17][23]V"[0][0][0][0]

-- 18:46:13 TestaPodeAbrirCupom

TX -> [sTX][5][0][28]#[17]P[0]

18:46:13 RX <- [0][0][0][0]

-- 18:46:13

TX -> [sTX][5][0][28]#A[128][0]

18:46:13 RX <- [0][0][0][0][0]

-- 18:46:13

----------------- ERRO -----------------

Componente ACBrECF ocupado

Aguardando resposta do comando anterior

----------------------------------------

O que fazer ???

  • 1 ano depois...
  • Consultores
Postado

Pode dar algum erro? Posso deixar isso por padrão no componente do AcbrECF ?

Não vai dar nenhum erro. Pelo contrário, se você tiver programado de maneira a não esperar os comandos responderem sem fazer o tratamento isso vai corrigir o problema. Sim, pode deixar por padrão. O meu ficava assim até que eu fiz o tratamento de venda de itens por fila.

 

No fórum já há bastante informação sobre.

[]'s

Consultor SAC ACBr

Elton
Profissionalize o ACBr na sua empresa, conheça o ACBr Pro.

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

Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas.
Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh.
  • Este tópico foi criado há 4190 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.