Ir para conteúdo
  • Cadastre-se

welsoncj

Membros
  • Total de ítens

    33
  • Registro em

  • Última visita

Posts postados por welsoncj

  1. Em 23/06/2020 at 21:34, EMBarbosa disse:

    Sim. O Subtotal é mais confiável. Se não me engano, dependendo do ECF, o GT é atualizado só no final.

    Bom dia, não pode esquecer que se você cancelar um item o seu subtotal tem que diminuir também, eu tive o mesmo problema do giulianonsó que esse problema ainda não resolvi, provavelmente vou ter que fazer alguma verificação e adicionar esse item na venda via sistema para que fique igual a impressora com a venda.

    • Curtir 2
  2. 4 minutos atrás, EMBarbosa disse:

    Certo. Isso pode ser por algum problema no código, ou talvez precise de algum ajuste no componente. Não tenho esse ECF então seria bom se você debugasse. Você pode propor alterações no componente caso necessário.

    Mas antes disso, veja o que você escreveu antes:

    Isso me passou a ideia de que você está recebendo uma mensagem informando que houve fim do papel e que era um exception.

    Afinal, essa mensagem ocorre? Como ela ocorre? Qual é a exata mensagem? De onde ela vem?

    'essa mensagem ocorre?' - Sim, ela esta no evento de erro que aparece quando acaba o papel

    procedure TDMVendaService.ECFErrorSemPapel(Sender: TObject);
    begin
      inherited;
      raise EACBrECFSemPapel.Create('FIM DO PAPEL');
    end;

    procedure TDMVendaService.ECFErrorSemPapel(Sender: TObject);
    begin
      inherited;
      raise EACBrECFSemPapel.Create('FIM DO PAPEL');
    end;

    Fazendo mais testes aqui percebi que a diferença para o ecf retornar o erro de 'sem papel' ou 'sem resposta' é muito pequena, vou continuar os testes aqui e retorno com alguma novidade, por enquanto obrigado pela atenção.

    • Curtir 1
  3. 14 horas atrás, EMBarbosa disse:

    Eu acredito que o ECFTeste não tem todos os tratamentos para exceptions, em especial o de Fim de Papel. Isso porque ele é apenas um exemplo mesmo.

    A exception deve vazar o fluxo e exibir uma mensagem ao usuário na própria tela. Verificou qual a mensagem que mostra quando acaba o papel?

    Bom dia,

    eu fiz o seguinte teste, coloquei só um pedaço de papel na impressora e fui lançando produtos (isso no meu pdv e no ecf teste), quando acaba o papel ele não passa na exception do 'sem papel' e sim no exception do 'sem resposta', abaixo tenho o exemplo de como está o exception do meu pdv hoje.

     

                  Except
                    on E:EACBrECFSemPapel do
                    begin
                      TLogUtils.Log('FIM DO PAPEL');
                      FECF.Desativar;
                      Synchronize(
                      procedure
                      begin
                        TDlgAviso.Error('FIM DO PAPEL, SUBSTITUA O PAPEL E PRESSIONE OK');
                      end);
    
                      FECF.Ativar;
                      try
                        if SubTotal <> FECF.Subtotal then
                        begin
                          SubTotal := FECF.Subtotal;
                          ControleArquivo.GravaItemVenda(FLista.Items[Key].Codigo + ';' + FLista.Items[Key].Sequencia.ToString);
                          VendeuItem := True;
                        end;
                      except
                      end;
                    end;
    
                    on E:EACBrECFSemResposta do
                    begin
                      TLogUtils.Log('Sem resposta');
                      FECF.Desativar;
                      Synchronize(
                      procedure
                      begin
                        TDlgAviso.Error('ECF NÃO RESPONDE, VERIFIQUE O PAPEL E OS CABOS');
                      end);
    
                      FECF.Ativar;
                      try
                        if SubTotal <> FECF.Subtotal then
                        begin
                          SubTotal := FECF.Subtotal;
                          ControleArquivo.GravaItemVenda(FLista.Items[Key].Codigo + ';' + FLista.Items[Key].Sequencia.ToString);
                          VendeuItem := True;
                        end;
                      except
                      end;
                    end;
    
                    on E:Exception do
                    begin
                      try
                        TLogUtils.Log(E.Message);
                        if not FLista.Items[Key].isPreVenda then
                        begin
                          FECF.Desativar;
    
                          Synchronize(
                          procedure
                          begin
                            TDlgAviso.Error('Impressora não esta em linha, verifique os cabos e o papel.');
                          end);
    
                          FECF.Ativar;
    
                          if SubTotal <> FECF.Subtotal then
                          begin
                            SubTotal := FECF.Subtotal;
                            ControleArquivo.GravaItemVenda(FLista.Items[Key].Codigo + ';' + FLista.Items[Key].Sequencia.ToString);
                            VendeuItem := True;
                          end
                          else
                          begin
                            Log.Add('Erro Adicionando Item Cupom:'+FLista.Items[Key].Descricao);
                            Log.Add('Erro adicionando item: ' + E.Message);
    
                            ControleArquivo.GravaErro('Produto: '+FLista.Items[Key].Descricao + #13 + 'Erro   : '+E.Message);
    
                            VendeuItem := True;
                            FErroECF := True;
                          end;
                        end
                        else
                        begin
                          Log.Add('Erro Adicionando Item Cupom:'+FLista.Items[Key].Descricao);
                          Log.Add('Erro adicionando item: ' + E.Message);
    
                          ControleArquivo.GravaErro('Produto: '+FLista.Items[Key].Descricao + #13 + 'Erro   : '+E.Message);
    
                          VendeuItem := True;
                          FErroECF := True;
                        end;
                      except
                      end;
                    end;
                  End;

     

  4. Em 07/08/2020 at 16:32, EMBarbosa disse:

    Quando acabar o papel você precisa dar um retorno ao usuário pra que ele coloque papel. Pegue o subtotal depois que ele colocar o papel no ECF e continuar com a venda.

    Fiz um teste com o ECF teste, peguei o log do componente e a saída que aparece no aplicativo, quando acaba o pepel ele não esta entrando no except do fim do papel.

    logvenda.txt

  5. Em 02/07/2020 at 12:13, EMBarbosa disse:

    Pois é... se o papel realmente acabou você vai ter que fazer um tratamento no seu aplicativo pra que quando essa situação ocorrer, você verificar se o subtotal subiu. Assim você vai saber que o item foi vendido.

    Geralmente, o papel quando chega perto do fim fica as manchas cor de rosa. Talvez seja uma questão de instruir os usuários.

     

    Fiz a alteração, no emulador é fácil de fazer o teste, mas na impressora ele não consegue pegar o subtotal quando esta sem papel, ainda não sei como resolver isso.

  6. 34 minutos atrás, Daniel Simoes disse:

    Parece ser um problema na Impressora... veja que o componente enviou o comando, de acordo com o protocolo...

    -- 30/07 11:23:25:780 FechaCupom( MD-5:0686F1189AC72307A70B055B6EEFAB99[LF]Val.Aprox.Impostos R$0,54(13,45%) Fonte:IBPT[LF]Vendedor: 13  [LF] )
    -- 30/07 11:23:25:781                 TX -> [SOH][228][ENQ][NUL]j[NUL]0|1|MD-5:0686F1189AC72307A70B055B6EEFAB99[CR][LF]Val.Aprox.Impostos R$0,54(13,45%) Fonte:IBPT[CR][LF]Vendedor: 13  [CR][LF]|:
    -- 30/07 11:23:25:789                 RX <- [ACK]

    Boa tarde Daniel, falei com um técnico da Bematech e ele disse que não seria problema da impressora, pois a versão do software dela já é uma versão estável, mandei pra ele o log e o print do cupom novamente pra ver o que ele vai dizer.

    vlw 

  7. Bom dia, estou com um problema em uma impressora e gostaria de saber se mais alguém já teve esse problema.

    O cliente não sabe precisar quando que começou mas a impressora não imprime mais as informações adicionais no cupom, em anexo tenho um cupom de como era e de como esta agora.

    t+

    cupom imposto.PNG

    cupom sem adc.PNG

  8. 1 hora atrás, EMBarbosa disse:

    Pois é... se o papel realmente acabou você vai ter que fazer um tratamento no seu aplicativo pra que quando essa situação ocorrer, você verificar se o subtotal subiu. Assim você vai saber que o item foi vendido.

    Geralmente, o papel quando chega perto do fim fica as manchas cor de rosa. Talvez seja uma questão de instruir os usuários.

     

    Pode ser uma solução verificar o SubTotal, vou fazer uns testes.

    A questão de instruir o usuário é tempo perdido, o sistema já emite um aviso na tela de vendas em vermelho bem grande e mesmo assim eles não trocam.

    de qualquer forma, obrigado pela dica do subtotal, vou implementar esse controle.

     

    t+

  9. 37 minutos atrás, EMBarbosa disse:

    Nunca passei por isso. Minha sugestão é você verificar no local se o papel realmente acabou e depois contatar o fabricante.

    Pode ser, mas acho pouco provável, que seja um problema no firmware.

    Bom dia, 

    Estou tentando pegar o log de uma impressora que deu esse tipo de problema para verificar, mas contando que o cliente nunca troca o papel antes de acabar.. acredito que realmente o papel tenha acabado.

  10. Bom dia,

    Estou com um problema com impressoras fiscais da marca Epson, a situação é a seguinte.

    Quando eu mando vender um item e eu tenho o retorno do except dizendo 'FIM DE PAPEL' em alguns casos a impressora registra o item vendido, ou seja, mesmo dando o erro, a impressora registrou o item da venda.

    Alguém já passou por esse problema?

  11. 1 hora atrás, volmir disse:

    Leiam com atencao este material, pois ele é de " Florianópolis, 10 de julho de 2018. ", acredito que após isso é que foi alterado para 10 dias. Eu lembro que no inicio era 20 dias depois foi alterado pra 10 dias.

    Bom dia

    '

    30/09/2019 17:52

    Sergio Pinetti

    Para:
    Prezado Júnior,
     
    Inicialmente, o bloqueio do PDV deve ser implementado a partir de 20 arquivos pendentes de envio, conforme regra contida no Ato DIAT 27/2018. 
    '
    essa informação foi passada no dia 30-09-2019 como mostra o e-mail recebido do auditor Sr. Sergio Pinetti.
  12. 44 minutos atrás, Douglas dos Santos disse:

    Verificamos também em alguns clientes se poderia ser uma atualização do windows, a principio não parece ser.

    O problema do windows já descartei também, win 7, win 10,  versões do internet explorer, configuração do internet explorer, conferi tudo entre um cliente que esta enviando e outro que não esta enviando e não consegui encontrar o que pode estar errado.

  13. 1 minuto atrás, Jonathan Mathes disse:

    Obrigado pelo material.

    Ao menos não irá estourar esse prazo.

    Tenho alguns clientes com o mesmo problema da assinatura, o interessante é que em algumas empresas tenho filiais que esta dando o erro e outras esta transmitindo normalmente.

  14. 2 minutos atrás, Jonathan Mathes disse:

    Boa tarde.

    Também estou com problema em alguns clientes meus e somente a partir do dia 22/12.

    O pior é que até dia 02/01 vai bater os 10 arquivos pendentes, bloqueando assim as estações. Caso tiver algum retorno mando por aqui também!

    Boa tarde, consulta o link,

    http://legislacao.sef.sc.gov.br/html/atos_diat/2018/atodiat_18_027.htm

    segundo ele, o número de arquivos pendentes é 20.

    • Obrigado 2
  15. O erro ocorre quando no método 'IniciarRequisicao' a procedure 'VerificaInicializado' é chamada, ela verifica uma variável booleana e da o erro.

    Quando eu fiz o override no método 'IniciarRequisicao'  eu retirei a chamada desse método, o que eu poderia fazer era voltar o método IniciarRequisicao para a nova Unit e chamar a procedure VerificaInicializado com nenhuma programação dentro dela.

  16. Eu fiz o mesmo processo que eu fazia com a Unit que eu tinha feito, o motivo de eu ter que alterar os fontes do Acbr era justamente o dessa mensagem, que ele não poderia verificar se o gerenciador estava iniciado.

    Teoricamente, com essa Unit que você mandou, deveria funcionar também, porque resumidamente era somente eu trocar os caminhos das pastas e não utilizar o método 'VerificaAtivo'.

    Vou dar uma olhada aqui porque ele esta dando essa mensagem e te dou um retorno.

  17. Bom dia,

    Preciso remover porque o 'exe' do GestãoCard é iniciado assim que o arquivo é colocado na pasta 'REQ', ele não é iniciado pelo shell.

    Quando você falou desse método 'VerificaAtivo', eu até fui verificar se alguém já não tinha modificado o arquivo original do Acbr, e depois de analisar intendi sua colocação e fiz a alteração como você sugeriu.

    Obrigado pela atenção.

    4S.rar

×
×
  • 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.