Ir para conteúdo
  • Cadastre-se

dev botao

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


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

Recommended Posts

Postado

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

  • Fundadores
  • Solution
Postado

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.

Postado

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

  • Moderadores
Postado
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_Transparent-02.png
 

 

  • Fundadores
Postado
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.

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