Jump to content

dev botao

Erro 'is not a valid date and time' servidor Etherium componente ACBrNFSeX


Go to solution Solved by Italo Giurizzato Junior,
  • Este tópico foi criado há 496 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro

Bom dia,

Estou testando com o exe de exemplo do Acbr a cidade de Taubaté/SP provedor Etherium e o novo componente AcbrNfseX para posteriormente adicionar ao meu sistema esse município, porém, estou encontrando um problema descrito no título com o formato (DD/MM/YYYY) da data de emissão do xml de retorno desse município. Tag do retorno comp-nfse.xml: <DataEmissao>13/10/2022</DataEmissao>

Analisando os commits percebi que em Junho o Italo commitou novas variáveis configuráveis por provedor para tentar resolver esse problema. No caso do Etherium estavam configuradas como:

  FpFormatoDataRecebimento := tcDatUSA;
  FpFormatoDataEmissao := tcDatUSA;
  FpFormatoDataHora := tcDatUSA;

Fiz a troca dessas variáveis para o tipo tcDatVcto que utiliza formato DD/MM/YYYY.

A princípio o primeiro local que estava ocorrendo erro que era na Unit AcbrNfseXProviderABRASFv2 na função TratarRetornoConsultaNFSeporRps resolveu, porém, o mesmo erro ocorreu em outro local, nas funções LerDataEmissao e LerDataEmissaoRps:

function TNFSeR_ABRASFv2.LerDataEmissao(const ANode: TACBrXmlNode): TDateTime;
begin
  Result := ObterConteudo(ANode.Childrens.FindAnyNs('DataEmissao'), tcDatHor);
end;


Esse código acima fica na Unit ACBrNFSeXLerXml_ABRASFv2, conforme pode ser reparado, nas funções de leitura da data de emissão o componente não respeita o configurado no provedor e está usando fixo o tipo tcDatHor que tenta fazer a leitura com formato YYYY/MM/DD

Troquei manualmente esses tipos para tcdatVcto e conseguir enviar a nota, ler xml, fazer a impressão, realizar as consultas e fazer o cancelamento sem problemas.

Minha dúvida é, estou configurando algo errado já que pelo fórum percebi que algumas pessoas estão utilizando Taubaté com Etherium e nenhuma relatou esse problema?

Obs: Já utilizo diversos provedores de NFS-e com Acbr com o componente de Nfse antigo, esse é o primeiro provedor que uso o AcbrNfseX.

Agradeço a atenção.

Link to comment
Share on other sites

  • Consultores

Bom dia,

Você poderia anexar o XML retornado após o envio no modo Síncrono, envio unitário e as consultas para que eu possa analisar?

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link to comment
Share on other sites

  • Membros Pro

Boa tarde @Italo Giurizzato Junior

Desculpa a demora, ia mesmo comentar aqui o resultado de mais uns testes que fiz e vi sua resposta agora.

Enfim, realizando uns testes percebi que o problema ocorre apenas ao consultar a nfs-e por rps, eu havia mudado o exemplo para não fazer as consultas automaticamente no novo método de envio, pois assim eu já tinha pronto igual fazia no componente antigo e não ia precisar mudar praticamente nada no meu sistema, mas agora fiz uns testes deixando o exemplo como ele vem e ao enviar a nota pelo novo método "Emitir" e deixando o exemplo fazer a consulta automático deu certo, apenas quando tento chamar o serviço de consulta nfs-e por rps que acontece o problema acima mencionado.

Vou colocar em anexo o xml de retorno do envio com consulta automática e o de retorno da consulta de nfs-e por rps, realmente os dois xml's retornam com formatos diferentes nas datas.

Creio que vou mudar meu sistema para utilizar o Envio com consulta automática mesmo conforme o exemplo.

6685-comp-nfse.xml 75-lista-nfse-sinc.xml

Link to comment
Share on other sites

  • Consultores
  • Solution

Boa tarde,

Isso não pode ocorrer, independente do serviço que gera e retorna o XML da nota a formatação da data tem que ser igual para todos os retornos.

Se ao Consultar a NFS-e Por Rps a formatação da data do XML da NFS-e é diferente do XML retornado ao Consultar o Lote (por exemplo) é melhor entrar em contato com o provedor e expor o problema.

Se o provedor esta gerando com formatação diferente não tem o que ser feito do lado do componente.

Até da para identificar o formato DD/MM/AAAA e AAAA/MM/DD, mas não dá para identificar se a data esta no formato DD/MM/AAAA ou MM/DD/AAAA.

Consultor SAC ACBr

Italo Giurizzato Junior
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

Analista de Sistemas / e-mail: [email protected] / Fone: (16) 9-9701-5030 / Araraquara-SP

Araraquara - A era dos Trólebus

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.