Ir para conteúdo
  • Cadastre-se

dev botao

Quebra de linha na NFS-e, qual o procedimento correto?


Ver Solução Respondido por Italo Giurizzato Junior,
  • Este tópico foi criado há 599 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Boa tarde

Estou tentando fazer uma quebra de linha na descrição dos itens, utilizando um <br> para isso. O provedor onde estou testando isso é o IPM, cidade de Novo Hamburgo / RS.

O envio ocorre com sucesso, o RPS chega na Prefeitura e é convertido para NFS-e.

A NFS-e impressa na Prefeitura fica com a quebra de linha.

Só que ao processar o XML de retorno, o componente gera esse erro (me parece que é ali na leitura do retorno): "Premature end of data in tag EnviarLoteRpsSincronoResposta line 1"

Por causa do erro, o sistema não chega a gerar os arquivos, mas peguei os dados fazendo debbug. Seque:

Esse é meu XML de envio

image.thumb.png.47a2a6d476216fc39c26d9aa48974a16.png

 

Esse é o de retorno

image.thumb.png.37f3ca5b16a1fcddb0ee446546784c4d.png

  • Consultores
  • Solution
Postado

Bom dia Marcio,

Se tratando de NFS-e, você vai sempre usar o ";" (ponto e virgula) como quebra de linha não importa qual seja o provedor.

O componente se encarrega de trocar o (ponto e virgula) pelo caractere ou sequencia de caracteres utilizados pelo provedor em questão.

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

Postado

Boa noite

Italo, precisa setar alguma configuração para isso?

Pelo menos aqui nesse exemplo manteve o ';'

image.thumb.png.9110673a62243c4cd17b4cce61b7e7ca.png

 

A não ser que o provedor IPM não permita isso então.

Postado

Ítalo, fiz o teste mas não deu certo.

Dei uma olhada na unit e na verdade tem que ser feito na procedure Configuracao da TACBrNFSeProviderIPM204, isso porque essa classe não herda de TACBrNFSeProviderIPM e sim de TACBrNFSeProviderABRASFv2.

Fiz esse ajuste no arquivo:

image.png.0cf0043401047d03c60ec61beddfdb82.png

E a XML parece ter ficado correto:

image.thumb.png.7358608647cf273154a85a904a4c8804.png

Mas obtive o erro "XML declaration allowed only at the start of the document".

Esse mesmo erro eu já havia tido com a tua alteração. Então acho que é no provedor, pois o XML da tua alteração não tinha mudança alguma.

Vou voltar as alterações depois e testar novamente.

  • Curtir 2
Postado

Pelo jeito é o provedor que está com problema no recebimento de lotes, é um erro de SQL se olharmos o retorno que consegui pegar.

Já avisei o provedor. Acho que a alteração que fiz na TACBrNFSeProviderIPM204 deve ter funcionado, mas não consegui confirmar por causa do erro que o provedor está retornando em homologação.

Assim que eu tiver retorno deles eu testarei novamente.

erro em homologação.txt

  • Curtir 1
Postado

Ítalo, fiz o teste e funcionou certinho somente passando um linebreak mesmo (#$D#$A). Veja:

Visualização da nota:
image.thumb.png.46f68cbfd7caa28dcd1b1347cace80df.png

PDF da nota:

image.thumb.png.3e318eec180907c72b7e88c02f225008.png

XML enviado:

image.thumb.png.16dfd0bfd9285ac9ace91b4dbefad14d.png

 

Alteração no  IPM.Provider.pas:

image.thumb.png.2fbd0aabb0fb88bb2e3e4658bdbab424.png

  • 2 semanas depois ...
Postado

Boa tarde

Fiz o teste em ambiente de homologação e deu certo.

Somente teremos notas em produção lá pelo dia 10, então se alguém puder fazer o teste e postar aqui o feedback...

Mas ficou tudo OK em homologação.

  • Curtir 1
  • Este tópico foi criado há 599 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • 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.