Ir para conteúdo
  • Cadastre-se

dev botao

Cancelamento com mais de um cartão dando erro na impressão do comprovante


Onclick
Ver Solução Respondido por Daniel Simoes,
  • Este tópico foi criado há 499 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Caros,

Recentemente criei um tópico sobre um erro no cancelamento automático no SITEF, consegui resolver de outra forma. Mas aí aparece um erro na impressão do segundo comprovante quando estou cancelando uma compra com dois cartões. Uma venda realizada com um cartão é cancelada sem problemas. A mensagem que aparece é: "Erro na impressão. Deseja tentar novamente ?"

Acredito que seja do próprio acbr a mensagem. Estou anexando o log de todo o processo.

Obrigado,

LogTEF (1).txt

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Sim a mensagem é mas o problema é do seu lado na implementação de totalizações provavelmente , chuto pois não conheço seu código.

se conseguir testar com os exemplos e reportar como

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Fundadores
  • Solution

Verifique se sua rotina, está tentando imprimir os comprovantes de forma concorrente (em Threads separadas por exemplo)...

Se for o caso, talvez você precise inserir um Semáforo de acesso a Impressora

Acho que peguei...  Observe o seguinte trecho do Log

Citar

-- 13/12 15:50:59:918 - InfoECF: ineEstadoECF
-- 13/12 15:50:59:919 -     Ret: R     // <----------------- AQUI ------------------
-- 13/12 15:50:59:919 - CliSiTef ComandarECF: Oper: opeFechaGerencial
-- 13/12 15:50:59:919 - InfoECF: ineEstadoECF
-- 13/12 15:50:59:919 -     Ret: R
-- 13/12 15:50:59:920 - CliSiTef DoExibeMsg: Oper: opmYesNo Mensagem: Erro na impressão.

Quando o componente perguntou a sua aplicação, qual o estado da Impressora, através do evento ineEstadoECF, você retornou "R" e com isso o componente acho que precisaria tentar fechar esse relatório Gerencial... Retorne o estado Livre, que a impressão ocorrerá

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

Acho que é isso mesmo, olhei aqui e no evento OnComandaECF estou setando a flag de status do ECF para R:

    case Operacao of
        opeFechaGerencial, opeFechaVinculado:
        begin
          PDV.EstadoPDV := epRelatorio; //'R'
          Ok := True;
        end;

Essa flag de estado é retornada no evento ineEstadoECF como você comentou, causando o problema.

Qual é a melhor forma de tratar essa flag? Posso tirar a atribuição sem problemas, ou tem alguma forma de resetar ela em algum momento para 'L' novamente? Olhei nos exemplos e não vi nenhum tratamento nesse sentido

Link para o comentário
Compartilhar em outros sites

  • Moderadores
1 hora atrás, Onclick disse:

Acho que é isso mesmo, olhei aqui e no evento OnComandaECF estou setando a flag de status do ECF para R:

    case Operacao of
        opeFechaGerencial, opeFechaVinculado:
        begin
          PDV.EstadoPDV := epRelatorio; //'R'
          Ok := True;
        end;

Essa flag de estado é retornada no evento ineEstadoECF como você comentou, causando o problema.

Qual é a melhor forma de tratar essa flag? Posso tirar a atribuição sem problemas, ou tem alguma forma de resetar ela em algum momento para 'L' novamente? Olhei nos exemplos e não vi nenhum tratamento nesse sentido

no exemplo tem um possível tratamento que pode ser feito. ele não supriu sua necessidade.

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

  • Fundadores
4 horas atrás, Onclick disse:

Qual é a melhor forma de tratar essa flag? Posso tirar a atribuição sem problemas, ou tem alguma forma de resetar ela em algum momento para 'L' novamente? Olhei nos exemplos e não vi nenhum tratamento nesse sentido

o valor retornado ao ineEstadoECF , é definido no código do seu evento... ou seja, você pode aplicar a lógica que achar necessária, ou sempre retornar 'L',  quando não tiver algum real impedimento

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á 499 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.