Ir para conteúdo
  • Cadastre-se

mhborgatto

Membros
  • Total de ítens

    20
  • Registro em

  • Última visita

Posts postados por mhborgatto

  1. Em 28/09/2018 at 17:20, BigWings disse:

    A causa mais comum para esse erro é a configuração da pasta de Schemas estar no formato \\servidor\compartilhamento. A libxml2.dll tem problemas para localizar os arquivos usando esse formato.

    Se os schemas estão em uma pasta compartilhada na rede, você pode mapear para uma letra de unidade.

    O XML validou normalmente aqui.

    Amigo. Muito obrigado. Problema de fato é o caminho no formato que você citou. Abraços até mais. Problema resolvido.

    • Curtir 1
  2. Amigos. boa  tarde, estou tentando efetuar a transmissão de um CTE porém estou recebendo essa mensagem informada no Titulo (duas mensagens). Já efetuei verificação dos schemas. Estou utilizando para o tipo de transmissão o modal rodoviário (não sei se tem algo a ver com o erro mencionado). As mensagens são exibidas ao passar pela funcao ACBrCTe1.Conhecimentos.Validar. Em anexo estou enviando o xml da nota que estou tentando transmitir sem exito. Desde já agradeço.

    35180901798588000214570010000006131468785996-cte.xml

  3. Também estou recebendo o erro citado acima para a versão 4.00 da nfe. As configurações do aplicativo de exemplo são as seguintes:

    SSLLIB - libWinCrypt
    CryptLib - cryWinCrypt
    httpLib - httpWinHttp
    XMLSignLib - xsMsXml

     Se utilizo sslType como LT_TLSv1_2 ou LT_SSLv2 recebo a mensagem conforme imagem em anexo, para todos os outros SSLType funcionam. Já fiz a verificação da cadeia de certificados para a V5 e também. O webservice que estou utilizando é de são paulo em produção e o tipo do certificado é token.

    ImagemErro.jpg

  4. 13 horas atrás, BigWings disse:

    Nos manuais dos webservices disponibilizados não há nada que indique a possibilidade de obter a situação atual da manifestação de uma NFe. Isso existia no antigo método NFeConsultaDest que já foi desativado.

    Entendido. Muito obrigado pela atenção dispensada!

  5. 16 minutos atrás, BigWings disse:

    Para as NFe de emissão própria, os eventos gerados por terceiros (manifestação do destinatário, CTe autorizado, registro de passagem...) são retornados pelo método DistribuicaoDFe.

    Os eventos originados pelo próprio emitente não são retornados, já que o mesmo já tem o XML do evento no momento da emissão do evento.

    O método de Consulta de protocolo retorna apenas os eventos de cancelamento, carta de correção e EPEC. A UF tem, porém, a prerrogativa de retornar os demais eventos.

    Amigo. Obrigado pela resposta. Quanto ao que foi enviado acima. Tenho o XML da emissão porém por diversas vezes recebi timeout do webservice e o evento foi processado. Gostaria de poder consultar se o evento foi realmente processado pois se eu enviar novamente o evento terei a duplicidade e saberei que o mesmo foi enviado mas não sei se o mesmo foi o ultimo evento de manifestação vinculado a nota (suponhamos que alguma outra manifestação seja feita através de outro software e essa seja a ultima manifestação da nota e a que é valida para a receita). O software da receita consegue recuperar todos os eventos da NFe. Não existe nada parecido que possa ser implementado? Desde já agradeço e me desculpe pela duplicidade nos tópicos...

  6. Em 10/04/2017 at 13:25, Reinaldo Silveira disse:

    Não sei se é o jeito correto, mas por enquanto estou pegando o status da seguinte forma:

    Realizo a DistribuicaoDFe e mostro as notas em um grid. Nesse momento, caso não conste manifestação pelo meu sistema, chamo um método que consulta os eventos NFe e retorna a última manifestação. Ex:

    
    function ConsultaSitManifesto(pChave: String): String;
    var i: Integer;
    begin
      ACBrNFe1.WebServices.Consulta.procEventoNFe.Clear;
      ACBrNFe1.WebServices.Consulta.NFeChave := pChave;
      ACBrNFe1.WebServices.Consulta.Executar;
    
      cdsEventos.EmptyDataSet;
    
        for i := 0 to ACBrNFe1.WebServices.Consulta.procEventoNFe.Count -1 do
          if ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[i].RetEventoNFe.retEvento.Items[0].RetInfEvento.tpEvento in
            [teManifDestConfirmacao, teManifDestCiencia, teManifDestDesconhecimento, teManifDestOperNaoRealizada] then
          begin
            cdsEventos.Append;
            cdsEventosDataHora.AsDateTime := ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[i].RetEventoNFe.retEvento.Items[0].RetInfEvento.dhRegEvento;
            cdsEventosDescricao.AsString  := TpEventoToStr(ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[i].RetEventoNFe.retEvento.Items[0].RetInfEvento.tpEvento);
            cdsEventos.Post;
          end;
    
      cdsEventos.Last;  //IndexFieldNames := 'DatHora';
    
      Result := cdsEventosDescricao.AsString;
    end;

    onde cdsEventos é um ClientDataSet em memória, ordenado por Data/Hora (porque os eventos podem vir fora de ordem),

    Bom, é isso. Se alguém está fazendo de alguma outra forma, favor compartilhar :-)

    Boa tarde. Amigo Reinaldo, essa função continua funcionando para as notas a partir da versão 4.0? Não estou conseguindo obter os eventos relacionados a NFe. Alguma modificação com relação a isso ou realmente essa é o único modo?. Desde já agradeço...

  7. Em 17/08/2015 at 17:06, Reinaldo Silveira disse:

    Boa tarde.

    Tenho uma rotina no sistema que consulta os eventos de NF-e. Porém tenho observado que as notas fiscais que possuem mais de um evento, os mesmos são retornados fora de ordem, conforme exemplo:

    Dados mostrados no portal da NF-e:

    • Autorização de Uso (Cód.: 110100) 10/07/2015 às 12:00:37
    • Carta de Correção Eletrônica (Cód.: 110110) 13/07/2015 às 06:08:11
    • CT-e Autorizado (Cód.: 610600) 13/07/2015 às 12:57:39
    • Confirmação da Operação pelo Destinatário (Cód.: 210200) 23/07/2015 às 09:55:35

    (observe que os eventos são mostrados ordenados por data e hora)

    for cont := 0 to ACBrNFe1.WebServices.Consulta.procEventoNFe.Count -1 do
        ShowMessage(GetDescricaoTipoEvento(ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[cont].RetEventoNFe.retEvento.Items[0].RetInfEvento.tpEvento) +'  '+
                    DateTimeToStr(ACBrNFe1.WebServices.Consulta.procEventoNFe.Items[cont].RetEventoNFe.retEvento.Items[0].RetInfEvento.dhRegEvento));

    Retorno pelo ACBr:

    • Carta de Correção Eletrônica (Cód.: 110110)  13/07/2015 06:08:11
    • Confirmação da Operação pelo Destinatário (Cód.: 210200)  23/07/2015 09:55:35
    • CT-e Autorizado (Cód.: 610600)  13/07/2015 12:57:39

    Não sei qual o critério de ordenação que os eventos são retornados.

    Existe alguma forma do retorno ser ordenado por data e hora do evento?

     

    Amigos. Boa tarde. Estou reabrindo o tópico pois dessa forma que o amigo Reinaldo disse eu não conseguindo obter todos os eventos vinculados a NFe. Existe alguma outra maneira de obter esses eventos??? Desde já agradeço.

  8.  

    Em 12/01/2018 at 15:51, Alexsandro Lopes disse:

    boa tarde .. utilizo da seguinte forma antes de executar qualquer processo 

    logo arquivo no componente

    *ACBrNFe1.NotasFiscais.LoadFromFile(local do arquivo xml assinado mas sem protocolo');;

    *ACBrNFe1.Consultar;

    pronto o xml ja vai estar com protocolo sosalvar o arquivo onde desejar

    ;

    Muito obrigado. Funcionou corretamente. Resolvido!

  9. Em 12/01/2018 at 16:20, cefantacini disse:

    Eu enviei mail para a SEFAZ de SP sobre esse problema e recebi a seguinte resposta:

    Prezado contribuinte,

     Inicialmente agradecemos as informações enviadas. O problema realmente existe.

     Estamos trabalhando na solução e em breve será publicada uma atualização com a correção.

    Agradeço pelo retorno!

  10. Amigos, gostaria de saber de qual maneira posso adicionar a tag protNFe a um arquivo XML apenas assinado sem que seja necessário baixa-lo da receita novamente. Possuo o número do protocolo da emissão. Motivo pelo qual quero fazer isso: Algumas vezes ocorre timeout durante o envio do XML para receita e o arquivo XML processado não é salvo. Através do XML assinado e o número do protocolo de emissão e consulta é possível gerar a tag protNFe para que na impressão da danfe não apareça a mensagem: "NFE não enviada para a SEFAZ?"

  11. Amigos, hoje dia 11/01/2018 ainda estou com o mesmo problema no webservice de homologação que foi citado em varios tópicos acima relacionado aos percentuais de PGNn e PGNi onde o somatório de 100 passa pela validação dos schemas mas ao enviar para o webservice da SEFAZ SP recebo o retorno de que o somatório deve ser 1. Alguém obteve algum retorno com relação isso da sefaz ou alguma outra forma de contornar o problema? Desde já agradeço..

  12. Pessoal, acho que hoje irá normalizar, no site do ambiente nacional o tempo de resposta estava como NI (não informado) e hoje já possui um hifen no lugar. acredito que irá normalizar... Postem ai como estão. Pelo menos hoje até o momento nao tive reclamacoes de clientes...

  13. Amigos, estou tento o mesmo problema como já descreveram acima... a mesma nota tento transmitir e recebo erros variados de timeout, 12002 por exemplo. Já fiz todas as configuracoes mencionadas acima, mas o erro persiste, o mais engraçado é que em alguns clientes está acontecendo o problema e em outros não, mas todos do estado de SP. Alguém tem alguma solução ou é mesmo problema de instabilidade dos webservices de SP? Tem algo que possa ser feito para contornar o problema? Agradeço a ajuda desde o momento!!!!

  14. Amigo, primeiramente obrigado pela atenção. Eu tentei configurar o componente de duas maneiras. Se eu deixar com o parametro ExibirErroSchema = false o componente nao me retorna erros de quantidade de digitos no campo NCM por exemplo. Se eu deixo ele ativado ele me retorna apenas um dos erros de ncm, sendo que tenho erro em mais de um produto.

  15. Amigos, gostaria de saber se existe alguma maneira de se receber todos os erros de validação do xml de uma vez. Segue abaixo o código que estou utilizando para retornar os erros da validação. Estou postando o código completo. No método abaixo, estou formatando o retorno que é recebido apenas para uma mensagem mais amigavel ao usuario mas se o arquivo xml contiver 20 produtos com erro em algum campo apenas um deles é exibido. Eu gostaria de saber se tem como exibir todos os 20 erros de uma vez.

     

          try
            ACBrNFe.NotasFiscais.Clear;
            ACBrNFe.NotasFiscais.LoadFromFile(pathArquivo);
            ACBrNFe.NotasFiscais.Valida;
          except
            on e:exception do
              begin
                if not Assigned(frmRetValidacao) then
                  frmRetValidacao := TfrmRetValidacao.Create(application);
                frmRetValidacao.mmoTexto.Clear;
                frmRetValidacao.mmoCompleto.Clear;
     
                frmRetValidacao.mmoTexto.Text := ACBrNFe.NotasFiscais.Items[0].ErroValidacaoCompleto;
                frmRetValidacao.mmoTexto.Text := StringReplace(frmRetValidacao.mmoTexto.Text,RetornarConteudoEntre(frmRetValidacao.mmoTexto.Text,'value','failed'),' ',[rfReplaceAll]);            
     
                frmRetValidacao.mmoCompleto.Text := ACBrNFe.NotasFiscais.Items[0].ErroValidacaoCompleto;
     
                for i := 0 to frmRetValidacao.mmoTexto.Lines.Count do
                  begin
                    frmRetValidacao.mmoTexto.Lines := StringReplace(frmRetValidacao.mmoTexto.Lines,'violates pattern constraint of','não é um valor válido: ',[rfReplaceAll]);
                    frmRetValidacao.mmoTexto.Lines := StringReplace(frmRetValidacao.mmoTexto.Lines,'{http://www.portalfiscal.inf.br/nfe},'[rfReplaceAll]);
                    frmRetValidacao.mmoTexto.Lines := StringReplace(frmRetValidacao.mmoTexto.Lines,'The element','para o campo',[rfReplaceAll]);
                    frmRetValidacao.mmoTexto.Lines := StringReplace(frmRetValidacao.mmoTexto.Lines,'with value','',[rfReplaceAll]);
                    frmRetValidacao.mmoTexto.Lines := StringReplace(frmRetValidacao.mmoTexto.Lines,'failed to parse','',[rfReplaceAll]);
                  end;
     
                frmRetValidacao.mmoTexto.Text := StringReplace(frmRetValidacao.mmoTexto.Text,RetornarConteudoEntre(frmRetValidacao.mmoTexto.Text,'válido','para o campo'),' ',[rfReplaceAll]);
     
                frmRetValidacao.mmoTexto.Lines.Text := StringReplace(frmRetValidacao.mmoTexto.lines.text, #13,'', [rfReplaceAll] );
                frmRetValidacao.mmoTexto.Lines.Text := StringReplace(frmRetValidacao.mmoTexto.lines.text, #10,'', [rfReplaceAll] );
     
                frmRetValidacao.ShowModal;
                frmRetValidacao.Release;
                frmRetValidacao := nil;
                result := false;
              end;
          end;
        end;
     
    Vou colocar em anexo cujo erro está em no ncm dos dois produtos. mas o retorno que tenho desse codigo formatado é: 
     
    Falha na validação dos dados da nota 32
    '1' não é um valor válido para o campo 'NCM'  .
     
     
    Gostaria que aparecesse o erro para os dois produtos da maneira abaixo:
    Falha na validação dos dados da nota 32
    '1' não é um valor válido para o campo 'NCM'  .
    '1' não é um valor válido para o campo 'NCM'  .
     
    Não sei se consegui ser objetivo e me desculpem pelo tópico extenso

     

    35140906062050000180550010000000321000001441-nfe.xml

  16. Quando informo na tag indIEDest a forma isento o acbr ao invés de preencher com 2 a tag esta preenchendo com 1. Alguém poderia me ajudar a corrigir isso? O ambiente que estou usando eh de testes. Também gostaria de saber se alguém sabe como retornar todos os erros de validação da nota que eu só estou conseguindo pegar um dos erros se tiverem vários tenho que ir corrigindo cada um para que o próximo apareça. Desde ja agradeço.

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