Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 3408 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

Boa Tarde !

   Estou importando o arquivo XML em anexo referente a teste para inutilização de um CT-e.

   Ao executar o procedimento localAcbrCte.InutCTe.LerXMLFromString("texto do arquivo xml") as opções localAcbrCte.InutCTe.Serie, localAcbrCte.InutCTe.nCTIni, localAcbrCte.InutCTe.nCTFin, localAcbrCte.InutCTe.CNPJ entre outras não são preenchidas.

   Pelo que notei nessa função "function TinutCTe.LerXMLFromString(const AXML: String): boolean;", está considerando como se fosse um arquivo de RETORNO DE INUTILIZAÇÃO já confirmado, mas na verdade é um arquivo de envio para SOLICITAR A INUTILIZAÇÃO.

Att.

Leandro Vignoto

 

Inu41150710377952000182570010000028191000028281_20150730114056-ped-inu.xml

  • Consultores
Postado

Boa tarde Leandro,

O componente ACBrCTe gera o XML de pedido de inutilização no momento do seu envio.

Não existe a possibilidade de você gerar esse XML fora do componente e depois tentar ler ele para poder envia-lo.

O método LerXMLFromString do Inutilização é para ler o retorno e depois imprimir através do método ImprimirInutilizacao.

Consultor SAC ACBr

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

Projeto ACBr

Analista de Sistemas / Araraquara-SP

Araraquara - A era dos Trólebus

  • Membros Pro
Postado

Ok, Italo....

   Comparando com a mesma rotina do componente do NFe, realmente ele faz o que você falou, porem tem uma pequena diferença entre eles, sendo:

No CT-e ele considera os dados somente se estiver autorizado (function TRetInutCTe.LerXml: boolean;)

      if cStat = 102 then
      begin
        (*DR10 *)Fano      := Leitor.rCampo(tcInt, 'ano');
        (*DR11 *)FCNPJ     := Leitor.rCampo(tcStr, 'CNPJ');
        (*DR12 *)FModelo   := Leitor.rCampo(tcInt, 'mod');
        (*DR13 *)FSerie    := Leitor.rCampo(tcInt, 'serie');
        (*DR14 *)FnCTIni   := Leitor.rCampo(tcInt, 'nCTIni');
        (*DR15 *)FnCTFin   := Leitor.rCampo(tcInt, 'nCTFin');
        (*DR16 *)FdhRecbto := Leitor.rCampo(tcDatHor, 'dhRecbto');
        (*DR17 *)FnProt    := Leitor.rCampo(tcStr, 'nProt');
      end;

No NF-e ele considera os dados, independente do cStat. (function TRetInutNFe.LerXml: Boolean)

Att.

Leandro Vignoto

 

 

  • Membros Pro
Postado

Obrigado Italo...

Só para deixar registrado, no manual da NFE na página 50 está igual ao do item que você passou, porém as duas funções tem comportamentos diferentes no ACBR

Mas vlw, agora está entendido.

t+

Leandro

  • Curtir 1
  • Este tópico foi criado há 3408 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

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