Nf-e (infAdic) (RESOLVIDO)

Bom dia a todos!!

Gostaria de ajuda para resolver uma questão…
Tenho q enviar observação para NF-e, eu uso o campo infAdic para isso conforme mostro abaixo…

Porém ele dá erro…

[quote]ERRO: Ao validar a nota fiscal série: 15 nota: 38 loja: 2
Linha: 135 Coluna: 57 Messagem erro: cvc-pattern-valid: Value ‘OBSERVACAO DE TESTE PARA FINS DE VERIFICACAO DE TAMANHO DO CAMPO CONFORMEEEEEEEEEE
TESTANDO TD PARA VER SE VAI COM ESTE TAMANHO.,’ is not facet-valid with respect to pattern ‘[!-ÿ]{1}[ -ÿ]{0,}[!-ÿ]{1}|[!-ÿ]{1}’ for type ‘#AnonType_infCplinfAdicinfNFeTNFe’.
Linha: 135 Coluna: 57 Messagem erro: cvc-type.3.1.3: The value ‘OBSERVACAO DE TESTE PARA FINS DE VERIFICACAO DE TAMANHO DO CAMPO CONFORMEEEEEEEEEE
TESTANDO TD PARA VER SE VAI COM ESTE TAMANHO.,’ of element ‘infCpl’ is not valid.
[/quote]

E mesmo efetuando o teste em http://www.sefaz.rs.gov.br/NFE/NFE-VAL.aspx, apresenta a seguinte mensagem…

[quote]
- The ‘http://www.portalfiscal.inf.br/nfe:infCpl’ element is invalid - The value ‘OBSERVACAO DE TESTE PARA FINS DE VERIFICACAO DE TAMANHO DO CAMPO CONFORMEEEEEEEEEE TESTANDO TD PARA VER SE VAI COM ESTE TAMANHO.,’ is invalid according to its datatype ‘String’ - The Pattern constraint failed.
TAG: NFe[1]/infNFe/infAdic/infCpl/[/quote]

Em resumo, qq informação com mais de 40 caracteres, obtenho este erro, alguém sabe pq?

Atenciosamente,
Léo.

===============================================================================

30/08/2010

O problema era o que eu suspeitava mesmo, ele não aceita caracteres de quebra de linha, como \n ou \r, por isso dava erro.
Com isso, antes de montar o xml, eu removo esses caracteres, e o arquivo é enviado sem problemas.

Atenciosamente,
Leonardo.

[quote=lbvitoriano]Bom dia a todos!!

Gostaria de ajuda para resolver uma questão…
Tenho q enviar observação para NF-e, eu uso o campo infAdic para isso conforme mostro abaixo…

Porém ele dá erro…

[quote]ERRO: Ao validar a nota fiscal série: 15 nota: 38 loja: 2
Linha: 135 Coluna: 57 Messagem erro: cvc-pattern-valid: Value ‘OBSERVACAO DE TESTE PARA FINS DE VERIFICACAO DE TAMANHO DO CAMPO CONFORMEEEEEEEEEE
TESTANDO TD PARA VER SE VAI COM ESTE TAMANHO.,’ is not facet-valid with respect to pattern ‘[!-ÿ]{1}[ -ÿ]{0,}[!-ÿ]{1}|[!-ÿ]{1}’ for type ‘#AnonType_infCplinfAdicinfNFeTNFe’.
Linha: 135 Coluna: 57 Messagem erro: cvc-type.3.1.3: The value ‘OBSERVACAO DE TESTE PARA FINS DE VERIFICACAO DE TAMANHO DO CAMPO CONFORMEEEEEEEEEE
TESTANDO TD PARA VER SE VAI COM ESTE TAMANHO.,’ of element ‘infCpl’ is not valid.
[/quote]

E mesmo efetuando o teste em http://www.sefaz.rs.gov.br/NFE/NFE-VAL.aspx, apresenta a seguinte mensagem…

[quote]
- The ‘http://www.portalfiscal.inf.br/nfe:infCpl’ element is invalid - The value ‘OBSERVACAO DE TESTE PARA FINS DE VERIFICACAO DE TAMANHO DO CAMPO CONFORMEEEEEEEEEE TESTANDO TD PARA VER SE VAI COM ESTE TAMANHO.,’ is invalid according to its datatype ‘String’ - The Pattern constraint failed.
TAG: NFe[1]/infNFe/infAdic/infCpl/[/quote]

Em resumo, qq informação com mais de 40 caracteres, obtenho este erro, alguém sabe pq?

Atenciosamente,
Léo.

===============================================================================

30/08/2010

O problema era o que eu suspeitava mesmo, ele não aceita caracteres de quebra de linha, como \n ou \r, por isso dava erro.
Com isso, antes de montar o xml, eu removo esses caracteres, e o arquivo é enviado sem problemas.

Atenciosamente,
Leonardo.[/quote]Amigo, uma pergunta sobre isso.
Você remove as quebras de linhas e substitui por o que?
Eu preciso que haja separação entre alguns parágrafos na observação (apenas 3 pequenos parágrafos onde cada um deles deve ter pelo menos 1 linha).

Bom dia!

Então eu substituo por espaço mesmo…e fica na mesma linha…

Atenciosamente.

Pois é, mas no meu caso o texto fica sem sentido se eu deixar tudo como uma única linha. Vou ter que descobrir o que fazer nesse caso.

[quote=lbvitoriano]Bom dia!

Então eu substituo por espaço mesmo…e fica na mesma linha…

Atenciosamente.[/quote]

Troque pela quebra de linha :

public static String limparCaracteresEspeciaisXML(String texto) { texto = Lib.palavraSemAcento(texto.trim()). replaceAll("[<]", "<"). replaceAll("[>]", ">"). replaceAll("[\"]", """). replaceAll("[&]", "&"). replaceAll("[']", "'"). replaceAll("[\n]", "
"); return texto; }