Jump to content

Embarcadero Conference 2019

22/10 - Visite o Stand do ACBr
Saiba mais

Nova Loja Oficial
loja.projetoacbr.com.br
Ajude o projeto a crescer, com estilo

Comprar

Balança SM100 performance surpreendente

Tecnologia Japonesa   Teclado e Visor resistentes a água
Consumo inteligente de etiquetas   Baixo custo de manutenção
Comunicação Ethernet e WIFI independentes

Saiba mais

Impressora de Etiquetas ELGIN - L42 PRO

Protocolos PPLA, PPLB, ZPL, EPL (automático)
Porta USB padrão Opcionais: Ethernet, Serial, Paralela
Sensor de Etiquetas Móvel Garantia de 18 meses

Saiba mais

Amaro José Loch

Erro leitura XML NFSE

Recommended Posts

Bom dia,

 

Recebi um XML da prefeitura de São José Santa Catarina, no campo vencimento esta assim 2019-02-15T00:00:00-02:00, mais na UNIT pcnLeitor o trecho do código esta assim ?

    tcDatVcto:
      begin
        if length(ConteudoTag)>0 then
          result := EncodeDate(StrToInt(copy(ConteudoTag, 07, 4)), StrToInt(copy(ConteudoTag, 04, 2)), StrToInt(copy(ConteudoTag, 01, 2)))
        else
          Result := 0;
      end;
 

Sendo assim esta o erro exception class EConvertError with message ''9-' is not a valid integer value

 

o correto seria 

    tcDatVcto:
      begin
        if length(ConteudoTag)>0 then
          result := EncodeDate(StrToInt(copy(ConteudoTag, 01, 4)), StrToInt(copy(ConteudoTag, 05 2)), StrToInt(copy(ConteudoTag, 07, 2)))
        else
          Result := 0;
      end; 

 

segue a unit corrigida.

 

 

 

pcnLeitor.pas

Agora, Amaro José Loch disse:

Bom dia,

 

Recebi um XML da prefeitura de São José Santa Catarina, no campo vencimento esta assim 2019-02-15T00:00:00-02:00, mais na UNIT pcnLeitor o trecho do código esta assim ?

    tcDatVcto:
      begin
        if length(ConteudoTag)>0 then
          result := EncodeDate(StrToInt(copy(ConteudoTag, 07, 4)), StrToInt(copy(ConteudoTag, 04, 2)), StrToInt(copy(ConteudoTag, 01, 2)))
        else
          Result := 0;
      end;
 

Sendo assim esta o erro exception class EConvertError with message ''9-' is not a valid integer value

 

o correto seria 

    tcDatVcto:
      begin
        if length(ConteudoTag)>0 then
          result := EncodeDate(StrToInt(copy(ConteudoTag, 01, 4)), StrToInt(copy(ConteudoTag, 05 2)), StrToInt(copy(ConteudoTag, 07, 2)))
        else
          Result := 0;
      end; 

 

segue a unit corrigida.

 

 

 

pcnLeitor.pas

 

 

ou poderíamos criar um novo campo para não da conflito com outros XMLS segue:

 

 

 

 

 

 

 

 

pcnLeitor.pas

pcnConversao.pas

pnfsNFSeR.pas

Share this post


Link to post
Share on other sites
12 minutos atrás, Amaro José Loch disse:

Bom dia,

 

Recebi um XML da prefeitura de São José Santa Catarina, no campo vencimento esta assim 2019-02-15T00:00:00-02:00, mais na UNIT pcnLeitor o trecho do código esta assim ?

    tcDatVcto:
      begin
        if length(ConteudoTag)>0 then
          result := EncodeDate(StrToInt(copy(ConteudoTag, 07, 4)), StrToInt(copy(ConteudoTag, 04, 2)), StrToInt(copy(ConteudoTag, 01, 2)))
        else
          Result := 0;
      end;
 

Sendo assim esta o erro exception class EConvertError with message ''9-' is not a valid integer value

 

o correto seria 

    tcDatVcto:
      begin
        if length(ConteudoTag)>0 then
          result := EncodeDate(StrToInt(copy(ConteudoTag, 01, 4)), StrToInt(copy(ConteudoTag, 05 2)), StrToInt(copy(ConteudoTag, 07, 2)))
        else
          Result := 0;
      end; 

 

segue a unit corrigida.

 

 

 

pcnLeitor.pas

 

 

ou poderíamos criar um novo campo para não da conflito com outros XMLS segue:

 

 

 

 

 

 

 

 

pcnLeitor.pas

pcnConversao.pas

pnfsNFSeR.pas

 

pcnLeitor.pas

Share this post


Link to post
Share on other sites
5 minutos atrás, Italo Jurisato Junior disse:

Boa tarde Amaro,

Somente a tag referente a data de vencimento ocorre o erro ao ler o XML?

Sim, já li outras notas sem problemas,  mais no XML não constava a TAG vencimento.

Se você verificar este XML tem esta TAG.

 

Share this post


Link to post
Share on other sites
16 minutos atrás, Italo Jurisato Junior disse:

Boa tarde Amaro,

Favor atualizar os fontes e faça novos testes.

Boa tarde,

 

 

Vi que você esta pegando a datahora da nota fiscal. Funcionou em parte.

Caso alguém queira pegar a data de vencimento mesmo não vai conseguir, não seria mais interessante criar uma nova variável para que as pessoas possam ter a data de vencimento informado pelo cliente?

 

Muito obrigado.

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...