Jump to content

dev botao

Item registrado 2 vezes na impressora Bematech MP 4000 TH


joaovmf
Go to solution Solved by Daniel Simoes,
  • Este tópico foi criado há 2256 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Bom dia, estou tendo um problema em algumas vendas, no sistema o item é registro 1 vez e na impressora 2, segundo o usuario não aparece mensagem de erro de comunicação. Abaixo o trecho do log:

 

-- 11/08 10:08:57:232 VendeItem( 0000000000006 , ACEM BOVINO.................. , T05 , 0,616 , 12,99 , 0 , KG , % , D , -1 )
-- 11/08 10:08:57:232                 TX -> [STX]n[NUL][FS]?050000129900000616000000000000000000000100000000000000000000KG0000000000006[NUL]ACEM BOVINO..................[NUL][LF][NAK]
-- 11/08 10:08:57:357    10:08:57:357 RX <- ACK = 6 Falha: 0
-- 11/08 10:08:57:435     RX <- [NUL][NUL][NUL][NUL]
-- 11/08 10:08:59:073 VendeItem( 0000000000060 , CENOURA...................... , II , 0,206 , 1,99 , 0 , KG , % , D , -1 )
-- 11/08 10:08:59:073                 TX -> [STX]n[NUL][FS]?II0000019900000206000000000000000000000100000000000000000000KG0000000000060[NUL]CENOURA......................[NUL][242][20]
-- 11/08 10:08:59:182    10:08:59:182 RX <- ACK = 255 Falha: 0
-- 11/08 10:08:59:291                 TX -> [STX]n[NUL][FS]?II0000019900000206000000000000000000000100000000000000000000KG0000000000060[NUL]CENOURA......................[NUL][242][20]
-- 11/08 10:08:59:416    10:08:59:416 RX <- ACK = 6 Falha: 1
-- 11/08 10:08:59:525     RX <- [NUL][NUL][NUL][NUL]
 

 

Reparem q na mesma vez "mandada" do comando vendeitem no caso do ACEM BOVINO, tem somente 1 retorno, já no caso da CENOURA tem 2 retornos.

 

Alguém ja viu esse erro?

 

Att

 

João Victor

  • Thanks 1
  • Sad 1
Link to comment
Share on other sites

  • Moderadores
Em 11/08/2018 at 10:46, joaovmf disse:

Bom dia, estou tendo um problema em algumas vendas, no sistema o item é registro 1 vez e na impressora 2, segundo o usuario não aparece mensagem de erro de comunicação. Abaixo o trecho do log:

 

-- 11/08 10:08:57:232 VendeItem( 0000000000006 , ACEM BOVINO.................. , T05 , 0,616 , 12,99 , 0 , KG , % , D , -1 )
-- 11/08 10:08:57:232                 TX -> [STX]n[NUL][FS]?050000129900000616000000000000000000000100000000000000000000KG0000000000006[NUL]ACEM BOVINO..................[NUL][LF][NAK]
-- 11/08 10:08:57:357    10:08:57:357 RX <- ACK = 6 Falha: 0
-- 11/08 10:08:57:435     RX <- [NUL][NUL][NUL][NUL]
-- 11/08 10:08:59:073 VendeItem( 0000000000060 , CENOURA...................... , II , 0,206 , 1,99 , 0 , KG , % , D , -1 )
-- 11/08 10:08:59:073                 TX -> [STX]n[NUL][FS]?II0000019900000206000000000000000000000100000000000000000000KG0000000000060[NUL]CENOURA......................[NUL][242][20]
-- 11/08 10:08:59:182    10:08:59:182 RX <- ACK = 255 Falha: 0
-- 11/08 10:08:59:291                 TX -> [STX]n[NUL][FS]?II0000019900000206000000000000000000000100000000000000000000KG0000000000060[NUL]CENOURA......................[NUL][242][20]
-- 11/08 10:08:59:416    10:08:59:416 RX <- ACK = 6 Falha: 1
-- 11/08 10:08:59:525     RX <- [NUL][NUL][NUL][NUL]
 

 

Reparem q na mesma vez "mandada" do comando vendeitem no caso do ACEM BOVINO, tem somente 1 retorno, já no caso da CENOURA tem 2 retornos.

 

Alguém ja viu esse erro?

 

Att

 

João Victor

Bom dia, joaovmf.

Tente atualizar o pacote de DLLs BEMAFI32 (baixado do site da Bematech) e substituir na sua aplicação.

  • Like 1
Equipe ACBr

Felipe Eduardo Resende Mesquita

Ajude o Projeto ACBr crescer - Assine o SAC

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

 

 

 

Link to comment
Share on other sites

  • Moderadores
15 horas atrás, joaovmf disse:

Obrigado Felipe pela resposta, mas não faço uso das dlls.

Bom dia, joaovmf.

a duplicidade ocorre no demo do ecf ?

Equipe ACBr

Felipe Eduardo Resende Mesquita

Ajude o Projeto ACBr crescer - Assine o SAC

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

 

 

 

Link to comment
Share on other sites

  • Administradores

Tópico movido para a área do SAC, para que o SLA de respostas seja considerado

  • Like 1
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link to comment
Share on other sites

  • Moderadores
16 horas atrás, syspan disse:

Boa noite Felipe, não testei no demo, pois, não é toda hora que acontece.

Peço para que faça o teste com o demo e verifique se ocorre o mesmo erro.

Equipe ACBr

Felipe Eduardo Resende Mesquita

Ajude o Projeto ACBr crescer - Assine o SAC

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

 

 

 

Link to comment
Share on other sites

  • Membros Pro

Felipe, liguei no suporte da bematech e perguntei sobre esse ACK = 255, o suporte me disse que desconhece esse código, e que os permitidos são 0 ou 6. Estava olhando no fonte AcbrEcfBematech na function TACBrECFBematech.EnviaComando_ECF(cmd : AnsiString) : AnsiString ; e vi que é feita até 3 tentativas. No meu caso sempre que retorno 255 ele registrou o item, será que podemos fazer algo para ignorar esse código?

 

 

Link to comment
Share on other sites

  • Administradores

Bom dia.

Você tem algum log para que possamos analisar melhor sua situação?

Att.

  • Like 1
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link to comment
Share on other sites

  • Moderadores
Em 16/08/2018 at 13:38, syspan disse:

Felipe, liguei no suporte da bematech e perguntei sobre esse ACK = 255, o suporte me disse que desconhece esse código, e que os permitidos são 0 ou 6. Estava olhando no fonte AcbrEcfBematech na function TACBrECFBematech.EnviaComando_ECF(cmd : AnsiString) : AnsiString ; e vi que é feita até 3 tentativas. No meu caso sempre que retorno 255 ele registrou o item, será que podemos fazer algo para ignorar esse código?

 

 

Bom dia, syspan.

Conforme a Juliana Tamizou informou, nos informe a velocidade e o time out para melhor entendimento, com o log tentaremos obter detalhes sobre seu problema.

Equipe ACBr

Felipe Eduardo Resende Mesquita

Ajude o Projeto ACBr crescer - Assine o SAC

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

 

 

 

Link to comment
Share on other sites

  • Membros Pro

Eu fiz o seguinte, no AcbrECFBematech na function EnviaComando_ECF, fiz uma alteração

 

antes

   while (fsACK <> 6) do

 

agora

  while (fsACK <> 6) and (fsACK <> 255)

 

e na procedure analisaACK fiz o seguinte:

 

antes

  else if (fsACK <> 6)

agora

  else if (fsACK <> 6) and (fsACK <> 255)

 

E não deu mais problema.

 

 

Att

 

João Victor

  • Like 1
Link to comment
Share on other sites

  • Administradores

Boa tarde

Iremos analisar todas as informações fornecidas e retornaremos aqui.

Att.

  • Like 1
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link to comment
Share on other sites

  • Fundadores
  • Solution
Em 21/08/2018 at 11:14, syspan disse:

Eu fiz o seguinte, no AcbrECFBematech na function EnviaComando_ECF, fiz uma alteração

João Victor,

Obrigado pela analise e sugestão de correção...

Como o suporte disse... A impressora nunca deveria retornar um ACK=255... mas retorna... :)

Baseado na sua sugestão, apliquei uma revisão na Unit ACBrECFBematech.pas, para considerar o ACK válido na seguinte situação:

function TACBrECFBematech.ACKValido(const nACK: Integer): Boolean;
begin
  Result := (nACK = 6) or (nACK = 255);
end;      

Por favor substitua a sua Unit, com essa em anexo, e faça alguns testes...

 

ACBrECFBematech.pas

  • Like 2
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 to comment
Share on other sites

  • Membros Pro
2 horas atrás, Daniel Simoes disse:

João Victor,

Obrigado pela analise e sugestão de correção...

Como o suporte disse... A impressora nunca deveria retornar um ACK=255... mas retorna... :)

Baseado na sua sugestão, apliquei uma revisão na Unit ACBrECFBematech.pas, para considerar o ACK válido na seguinte situação:


function TACBrECFBematech.ACKValido(const nACK: Integer): Boolean;
begin
  Result := (nACK = 6) or (nACK = 255);
end;      

Por favor substitua a sua Unit, com essa em anexo, e faça alguns testes...

 

ACBrECFBematech.pas

Daniel, 

Vou colocar no cliente para rodar e te dou um feedback.

 

Att

 

  • Like 1
Link to comment
Share on other sites

5 horas atrás, Daniel Simoes disse:

Conseguiu testar ?

 

5 horas atrás, Daniel Simoes disse:

Conseguiu testar ?

Daniel, boa tarde.

Eu desenvolvo para uma rede de varejo que possuí 68 filiais utilizando o ACBrECF + Bematech e estamos tendo problemas pontuais todo mês com a duplicação de itens em cupons, o mesmo problema do João Victor e do Syspan.

Acabei de baixar a unit disponibilizada por você e vamos disponibilizar uma versão para as filiais, caso o problema seja resolvido eu aviso aqui.

  • Like 3
Link to comment
Share on other sites

  • Administradores

Obrigado por reportar.

Fechando. Para novas dúvidas, criar um novo tópico.

  • Like 1
Consultora SAC ACBr

Juliana Tamizou

Gerente de Projetos ACBr / Diretora de Marketing AFRAC
Ajude o Projeto ACBr crescer - Seja Pro

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

Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Link to comment
Share on other sites

  • Este tópico foi criado há 2256 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

The popup will be closed in 10 seconds...