Olá pessoal,
No Rps temos a tag <Discriminacao> ela pode conter até 2000 caracteres, se tratando dos provedores que seguem a versão 1 ou 2 do layout da ABRASF (os provedores que tem o seu próprio layout o nome da tag bem como a quantidade de caracteres com certeza vai ser diferente).
Muitos desenvolvedores querem incluir uma quebra de linha, pois bem, como fazer?
Ao alimentar o componente, ou seja, ao atribuir o texto ao campo Discriminacao, devemos sempre utilizar o caractere ";" (ponto e virgula).
O componente quando for gerar o XML do Rps se encarrega de substituir o ";" pelo caractere utilizado pelo provedor que pode ser outro.
Vejam a linha do código do componente que realiza essa troca:
Result.AppendChild(AddNode(tcStr, '#32', 'Discriminacao', 1, 2000, 1,
StringReplace(NFSe.Servico.Discriminacao, ';', FpAOwner.ConfigGeral.QuebradeLinha,
[rfReplaceAll, rfIgnoreCase]), DSC_DISCR));
A função StringReplace vai trocar o caractere ";" pelo conteúdo de: QuebradeLinha do campo: Discriminacao.
Fica ai mais uma dica de como alimentar o componente corretamente.