♥ 0 | Ao exportar o ficheiro SAF-T ocorre o erro:
“99999 – FOR XML could not serialize the data for node ‘Description’ because it contains a character (0x001E) which is not allowed in XML. To retrieve this data using FOR XML, convert it to binary, varbinary or image data type and use the BINARY BASE64 directive.”
Como ultrapassar este erro? Marked as spam |
Private answer A situação está relacionada com a existência de um documento que não tem linhas. O caracter 0x001E que em decimal corresponde ao código 30 (em alguns casos ocorre também o erro 0x001F = 31) não é suportado em XML. Para identificar o registo em causa, pode executar a seguinte script SQL. SELECT PATINDEX('%' + char(30) + '%',strCVDNome) AS Posicao, strCVDNome, * Depois de identificar o registo em erro, deve aceder ao mesmo e apagar o valor aí existente e reescrever manualmente o valor, isto para garantir que limpa o caracter não suportado. Obs: Pode ter de ajustar as scripts sql, neste exemplo está a verificar o campo nome do cliente, pode ocorrer noutros campos e noutras tabelas. Marked as spam |