Skip to content

fix(dps): rejeita quebra de linha e outro caractere de controle em campos TSString - #18

Merged
matheuscardosos merged 1 commit into
mainfrom
fix/dps-caracteres-controle
Aug 15, 2026
Merged

fix(dps): rejeita quebra de linha e outro caractere de controle em campos TSString#18
matheuscardosos merged 1 commit into
mainfrom
fix/dps-caracteres-controle

Conversation

@matheuscardosos

Copy link
Copy Markdown
Contributor

Descrição

Vários campos de texto livre do schema oficial (xLgr, xBairro, nro, xCpl, email, o xNome do IBSCBS.dest, e xDoc/xDocFiscal/xTipoChaveDFe/xTpReeRepRes do gReeRepRes) rejeitam quebra de linha, tabulação ou outro caractere de controle - confirmado validando contra o XSD oficial (tiposSimples_v1.01.xsd, tipo TSString) com a própria função montarXmlDps e o validador libxmljs2 que os testes já usam.

Sem checagem local, a SEFIN Nacional recusaria a DPS inteira (E1235) só por causa desse campo, em vez do SDK dar um erro local claro antes de submeter.

xDescServ (tipo TSStringComQuebraDeLinha) e o xNome do prestador/tomador/interm (tipo TSNomeRazaoSocial, sem pattern) são exceções confirmadas - o schema permite quebra de linha neles, então continuam sem essa validação.

Testes

  • 3 testes novos cobrindo os campos restritos (rejeita) e os exceção (permite).
  • Suite completa (64 testes) passando.

…mpos TSString

Varios campos de texto livre do schema oficial (xLgr, xBairro, nro, xCpl,
email, o xNome do IBSCBS.dest, xDoc/xDocFiscal/xTipoChaveDFe/xTpReeRepRes
do gReeRepRes) rejeitam quebra de linha - confirmado validando contra o
XSD oficial. Sem essa checagem local, a SEFIN Nacional recusaria a DPS
inteira (E1235) so por causa desse campo. xDescServ e o xNome do
prestador/tomador/interm continuam livres (schema nao restringe).
@matheuscardosos
matheuscardosos merged commit 4b6e2eb into main Aug 15, 2026
5 checks passed
@matheuscardosos
matheuscardosos deleted the fix/dps-caracteres-controle branch August 15, 2026 14:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant