Ir para conteúdo
  • Cadastre-se

João Marcos_14485

Membros
  • Total de ítens

    33
  • Registro em

  • Última visita

Posts postados por João Marcos_14485

  1. Prezados colegas, bom dia!

    Estou com um cliente enfrentando um problema que ainda não consegui entender bem o que houve.
    Cliente tentou fazer uma transação com cartão de débito, a transação foi confirmada e após isso o gerenciador padrão entrou num "Loop" entrando sempre na tela de cancelamento quando qualquer função do ACBRTef é chamada.

    Ao abrir operações administrativas, transações de recebimento ou qualquer coisa que comunique com o GP ele entra nesse processo pedindo senha e dados da transação a ser cancelada.
    Já apaguei os arquivos da pastas :
    C:\TEF_Dial\req
    C:\TEF_Dial\Resp
    C:\TEF_Disc

    Se algum colega já passou por uma situação parecida e puder me dar uma luz, agradeço muito!

    Grande abraço!

  2.  

    10 horas atrás, Daniel Simoes disse:

    Passamos por esse mesmo problema.. a comunicação HTTPS do ACBr com a OpenSSL é feita pela classe Synapse, e ela, no Windows usa a API WinSock, que é muito baixo nível....

    Por isso que criamos a propriedade TimeOutPorThread... Nesse caso o ACBr abre uma Thread para tentar a comunicação... enquanto a Thread Principal, verifica se o TimeOut ocorreu... se ele ocorreu, a Thread é simplesmente abandonada...

    Então o meu problema tá resolvido!
    Muito obrigado, meu velho!!

  3. On 7/17/2018 at 1:11 PM, Daniel Simoes said:

    https://support.microsoft.com/pt-br/help/191143/10060-connection-timed-out-error-with-proxy-server-or-isa-server-on-sl

    10060 é TimeOut... o WebService não respondeu, portanto o problema é na SEFAZ

    TimeOut ocorre a nível de Sistema Operacional, então nem todas as situações podem ser tratadas pela aplicação...

    A única maneira de ter um TimeOut preciso, é usar a opção SSL.TimeOutPorThread := True

    Obrigado pela dica, Daniel!
    Vou modificar desta forma  para ver os resultados que tenho!

    Tive um problema novo na segunda: (Acredito que o WS deu pau em alguns estados). O que ocorria é que quem estava usando OpenSSL ao chamar o método de enviar a nota, a aplicação simplesmente ficava travada. Não retornava timeout, mas o método de envio também não finalizava nunca.

    Vou tentar usar desta forma. Muito obrigado pela ajuda, meu velho!

     

  4. Boa tarde, colegas!!

    Recentemente após a atualização da exigência do TLS V 1.2 para NFE 4.0, resolvi mudar todos os meus clientes para utilizarem o OpenSSL (Todos eles usam certificados A1) acreditando que essa seria a melhor alternativa (Mais prática), visto que muitos deles ainda possuem windows desatualizados e sem suporte a TLS 1.2 (o que demandaria tempo demais).
    Bem, o meu problema é o seguinte:  De vez em quando obtenho o erro 10060 utilizando o OpenSSL. Fiz o teste em um dos clientes deixei todas as máquinas usando a Wincrypt e apenas 1 delas usando openSSL, o resultado foi:
    1) A máquina com OpenSSL emitiu notas em contingência 15 vezes durante o dia sempre por conta deste mesmo erro ( 10060)
    2) As máquinas configuradas com wincrypt não emitiram nenhuma nota em contingência. Funcionaram online 100% do tempo.

    Outra coisa que eu percebi é que o tempo de timeout  da ocorrência deste erro,
    não obedece o tempo de  timeout definido em dm.ACBrNFe1.Configuracoes.WebServices.TimeOut, esse erro acontece sempre em mais ou menos 20 segundos. E sempre que ocorreram, nenhuma nota chegou a ser realmente autorizada (Como acontecia na Capicom ou até com a Wincrypt de vez em quando).

    O meu medo é gerar um grande volume de inutilizações no final do mês.
    Estou usando a versão 1.02.13

    Como o meu executável não é compilado para 64 bits, utilizo sempre a versão de 32 bits (independente do S.O)
    Algum dos colegas já passaram pelo mesmo problema ??

    Grande abraço  a todos e obrigado!

  5. Em 22/03/2018 at 15:03, Juliomar Marchetti disse:

    Foi feito a mudança de alguns valores default se estiver usando.

    confira no log do svn as mudanças que ocorreram.

    Obrigado, Juliomar!

    Acabei de verificar em outro tópico que é só ignorar a exceção.
    Valeu!!

    Abraço.

    • Curtir 1
  6. 1 hora atrás, BigWings disse:

     

    A NF-e teve algum evento gerado pelo emissor ou terceiros? Lembre que eventos gerados pelo destinatário não são retornados no DistribuicaoDFe.

    Até onde sei, no Schema schprocNFe vem apenas o XML da nota, nenhum evento.

    Colega, obrigado pela sua resposta.
    Mas então como faço para saber as notas que eu já manifestei  e qual foi o tipo de manifestação ?
    Não há formas de se obter isso ?

    Obrigado!

  7. Prezados colegas,
    venho usando o DistribuicaoDFE da seguinte forma:

        DFe := DM.ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items[docAtual];

                    case DFe.schema of
                      schprocNFe: ;  // NFe completa
                      schresNFe: ;  // NFe resumo
                      schresEvento: ; // Evento resumo
                      schprocEventoNFe: ; // Evento completo
                    end;

    Acho os resumos das notas, achos as notas completas. Até aí beleza!
    Mas nunca consigo achar nenhum evento. A variável DFE nunca assume o valor  schprocEventoNFe nas minhas consultas.
    Sei que os eventos virão junto com a nota completa em schprocNFe, mas como faço para obter esses eventos quando eu tiver mais de um evento para a mesma nota ?

    Vi alguns colegas que usam

                                if dm.ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip[docAtual].procEvento.Id <> '' then
                                 begin
                                   // tratamento...

                                 end;

    Mas penso que isso me retorna apenas um evento (ou o último ?).
    Alguma dica para obter todos os eventos ?

    Muito grato!

     

  8. Em 23/03/2017 at 15:20, Luis Fernando Ravanelli disse:

    Boa tarde Rodrigo,

    Pelo DistribuicaoDFe, nele você visualiza todos os eventos de suas notas.

    Segue o exemplo abaixo.

    Espero ter ajudado.

    abs.

      memoLog.Lines.Clear;
      ACBrNFe1.Configuracoes.Geral.ModeloDF := moNFe;
      ACBrNFe1.Configuracoes.Geral.VersaoDF := ve310;
      ACBrNFe1.WebServices.Consulta.procEventoNFe.Clear;
      ACBrNFe1.Configuracoes.WebServices.Ambiente := taProducao;
      ACBrNFe1.Configuracoes.WebServices.UF := cbUF.Text;

      ACBrNFe1.DistribuicaoDFe(35, '68960244000150', '0', '');

      memoLog.Lines.Add('Status: ' + IntToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat));
      memoLog.Lines.Add('Motivo: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.xMotivo);
      if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 137 then
        memoLog.Lines.Add('Tem mais? Sim')
      else
        memoLog.Lines.Add('Tem mais? Não');
      memoLog.Lines.Add('Último NSU: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU);
      if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 138 then
      begin
        memoLog.Lines.Add(' Documento Localizado para o Destinatário');
        memoLog.Lines.Add(' ');

        for i := 0 to ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Count - 1  do
        begin
          memoLog.Lines.Add('************************');
          memoLog.Lines.Add(' ');

          memoLog.Lines.Add('NSU: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.NSU);      

          if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.Id <> '' then
          begin
            memoLog.Lines.Add('ProcEvento');
            memoLog.Lines.Add('ID : ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.Id);
            memoLog.Lines.Add('Tipo Ambiente: ' + TpAmbToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.tpAmb));
            memoLog.Lines.Add('CNPJ: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.CNPJ);
            memoLog.Lines.Add('Chave: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.chNFe);
            memoLog.Lines.Add('Data Evento: ' + DateTimeToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.dhEvento));
            memoLog.Lines.Add('Tipo: ' + TpEventoToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.tpEvento));
            memoLog.Lines.Add('Seq: ' + IntToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.nSeqEvento));
            memoLog.Lines.Add('Versão: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.verEvento);
            memoLog.Lines.Add('Motivo: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.xMotivo);
            memoLog.Lines.Add('Evento: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.xEvento);
            memoLog.Lines.Add('Seq2: ' + IntToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.nSeqEvento));
            memoLog.Lines.Add('CNPJ Dest: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.CNPJDest);
            memoLog.Lines.Add('Data Reg. Evento: ' + DateTimeToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.dhRegEvento));
            memoLog.Lines.Add('Prot: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.nProt);
            memoLog.Lines.Add('Prot. Det: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.detEvento.nProt);
            memoLog.Lines.Add('Just. Det: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.detEvento.xJust);
          end;

        end;
      end
      else
      begin
       // Nenhum Documento Localizado para o Destinatário
        if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 137
        then begin
          memoLog.Lines.Add(' Nenhum Documento Localizado para o Destinatário');
          memoLog.Lines.Add(' Utilizar o número que esta no campo: Último NSU');
          memoLog.Lines.Add(' Para uma nova pesquisa ('+ ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU +').');
          memoLog.Lines.Add(' ');
        end
        else begin
          memoLog.Lines.Add(' Falha ao realizar a consulta.');
          memoLog.Lines.Add('  ' + IntToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat) + ' - ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.xMotivo);
          memoLog.Lines.Add(' ');
        end;
      end;

    Boa tarde, colega...
    E quando esta nota tiver mais de um evento ?? Como fazer ?
    Pelo que vi, esse código pega só 1 evento. E quando tem mais de um ?

     

    Em 23/03/2017 at 15:20, Luis Fernando Ravanelli disse:

    Boa tarde Rodrigo,

    Pelo DistribuicaoDFe, nele você visualiza todos os eventos de suas notas.

    Segue o exemplo abaixo.

    Espero ter ajudado.

    abs.

      memoLog.Lines.Clear;
      ACBrNFe1.Configuracoes.Geral.ModeloDF := moNFe;
      ACBrNFe1.Configuracoes.Geral.VersaoDF := ve310;
      ACBrNFe1.WebServices.Consulta.procEventoNFe.Clear;
      ACBrNFe1.Configuracoes.WebServices.Ambiente := taProducao;
      ACBrNFe1.Configuracoes.WebServices.UF := cbUF.Text;

      ACBrNFe1.DistribuicaoDFe(35, '68960244000150', '0', '');

      memoLog.Lines.Add('Status: ' + IntToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat));
      memoLog.Lines.Add('Motivo: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.xMotivo);
      if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 137 then
        memoLog.Lines.Add('Tem mais? Sim')
      else
        memoLog.Lines.Add('Tem mais? Não');
      memoLog.Lines.Add('Último NSU: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU);
      if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 138 then
      begin
        memoLog.Lines.Add(' Documento Localizado para o Destinatário');
        memoLog.Lines.Add(' ');

        for i := 0 to ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Count - 1  do
        begin
          memoLog.Lines.Add('************************');
          memoLog.Lines.Add(' ');

          memoLog.Lines.Add('NSU: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.NSU);      

          if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.Id <> '' then
          begin
            memoLog.Lines.Add('ProcEvento');
            memoLog.Lines.Add('ID : ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.Id);
            memoLog.Lines.Add('Tipo Ambiente: ' + TpAmbToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.tpAmb));
            memoLog.Lines.Add('CNPJ: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.CNPJ);
            memoLog.Lines.Add('Chave: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.chNFe);
            memoLog.Lines.Add('Data Evento: ' + DateTimeToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.dhEvento));
            memoLog.Lines.Add('Tipo: ' + TpEventoToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.tpEvento));
            memoLog.Lines.Add('Seq: ' + IntToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.nSeqEvento));
            memoLog.Lines.Add('Versão: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.verEvento);
            memoLog.Lines.Add('Motivo: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.xMotivo);
            memoLog.Lines.Add('Evento: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.xEvento);
            memoLog.Lines.Add('Seq2: ' + IntToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.nSeqEvento));
            memoLog.Lines.Add('CNPJ Dest: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.CNPJDest);
            memoLog.Lines.Add('Data Reg. Evento: ' + DateTimeToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.dhRegEvento));
            memoLog.Lines.Add('Prot: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.RetinfEvento.nProt);
            memoLog.Lines.Add('Prot. Det: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.detEvento.nProt);
            memoLog.Lines.Add('Just. Det: ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.docZip.Items.procEvento.detEvento.xJust);
          end;

        end;
      end
      else
      begin
       // Nenhum Documento Localizado para o Destinatário
        if ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat = 137
        then begin
          memoLog.Lines.Add(' Nenhum Documento Localizado para o Destinatário');
          memoLog.Lines.Add(' Utilizar o número que esta no campo: Último NSU');
          memoLog.Lines.Add(' Para uma nova pesquisa ('+ ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.ultNSU +').');
          memoLog.Lines.Add(' ');
        end
        else begin
          memoLog.Lines.Add(' Falha ao realizar a consulta.');
          memoLog.Lines.Add('  ' + IntToStr(ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.cStat) + ' - ' + ACBrNFe1.WebServices.DistribuicaoDFe.retDistDFeInt.xMotivo);
          memoLog.Lines.Add(' ');
        end;
      end;

    Boa tarde, colega...
    E quando esta nota tiver mais de um evento ?? Como fazer ?
    Pelo que vi, esse código pega só 1 evento. E quando tem mais de um ?

     

  9. Boa tarde, Colegas.
    Tudo bem ?

    Após atualizar o meu repositório estou recebendo a seguinte mensagem na validação de NFC-e

    Content for element '{http://www.portalfiscal.inf.br/nfe}NFe' is incomplete according to the DTD/Schema.
    Expecting: {http://www.portalfiscal.inf.br/nfe}infNFeSupl, {http://www.w3.org/2000/09/xmldsig#}Signature.


    Já atualizei os meus esquemas e o problema persiste.
    Alguém passando pelo mesmo ?

    grande abraço!

  10. 25 minutos atrás, Pablo Ricardo disse:

    Seria essa a solução 

    Não entendi bem, meu velho...
    Você está com uma dúvida ou está dando a dica ?

    
                     case acbrnfChave.WebServices.Consulta.procEventoNFe.Items[l]
                      .RetEventoNFe.retEvento.Items[j].RetInfEvento.tpEvento of
                      teCancelamento:
                        Impresso := 'C';

     

     

    • Curtir 1
  11. Boa tarde Colegas!

    Estou com um problema em um cliente específico.
    No aplicativo de manifestação da receita federal, consigo consultar normalmente as notas de um determinado cliente. Notas que inclusive foram emitidas nos últimos 10 dias.
    Porém, quando vou consultar no ACBR o mesmo não está me trazendo nada.

    Alguém sabe me dizer o que pode ser ?
    Passo o último NSU =0, indNFE=0, indEMI=0

    Mesmo assim, nada!
    Já testei inclusive no DEMO, o problema persiste.
    Alguém tem uma luz ?
    Recebo sempre xMotivo = Nenhum documento localizado para o destinatário

  12. 56 minutos atrás, João Marcos_14485 disse:

    Boa tarde, colegas!

    Ao enviar uma nota em contingência, estou recebendo mensagem de erro com relação ao horário. Alguém sabe o que pode estar acontecendo ?
    Não estou gerando a nota novamente. Simplesmente carrego o xml e prossigo com o método de envio.

    A mensagem é:

    NFCE COM DATA/HORA DE EMISSÃO ATRASADA. Tolerância de até 5 minutos.

    Alguém já passou pelo mesmo ?

    Obrigado, galera.
    Foi o parâmetro mesmo. Tava meio cego!

     

  13. Boa tarde, colegas!

    Ao enviar uma nota em contingência, estou recebendo mensagem de erro com relação ao horário. Alguém sabe o que pode estar acontecendo ?
    Não estou gerando a nota novamente. Simplesmente carrego o xml e prossigo com o método de envio.

    A mensagem é:

    NFCE COM DATA/HORA DE EMISSÃO ATRASADA. Tolerância de até 5 minutos.

    Alguém já passou pelo mesmo ?

  14. Mas..
    Se a contingência é OFFLINE, como usar o SVC-RS ?
    Acho que deve

    1 hora atrás, leandroaoa disse:

    o Parana esta com problemas desde o dia 01/12/2015 se for NF-e esta liberado o SVC-RS agora para NFC-e a contigencia e a offline

    Se o método de contingência adotado pro estado é a OFFLINE, acho que não podemos usar o SVC-RS pra emitir não. Estou errado ?
    Tentei enviar as notas em contingência pra esse serviço, deu erro também.

    hueauheauheaue
    Vamos ver o que a sefaz vai fazer!

    1 hora atrás, clodemar disse:

    Vou tentar Leandro, obrigado,

    O serviço tá parando e voltando toda hora. Agora colocaram em "manutenção por curto tempo"

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

The popup will be closed in 10 segundos...