Usuários SAC valdirdill 188 Posted November 30, 2020 Usuários SAC Report Share Posted November 30, 2020 Bom dia, Estou com um problema que ocorreu já umas duas vezes em 1 cliente. O problema é off-tópic, mas como tem relação com gravação de dados em DFes, talvez alguém do grupo já tenha vivido situação semelhante e agradeço se puder me ajudar. É o seguinte: para gravar os XMLs de DFes no banco de dados, utilizamos a função zip da acbrUtil. O erro acontece quando vamos descompactar (unzip) o dado gravado. Dá o "error reading zip file". Analisando o dado gravado no banco nesse campo aparece o seguinte texto: x��:[��Ȓ��+��<���"�zi�&WQnrQ��|�(� O texto é bem maior, mas tudo assim, com caracteres estranhos. É como se o sistema ao gravar ou então o banco de dados tivesse disparado uma conversão em outro encoding. Investigando mais, verificamos que não é o zip() que causou o problema. Imagino eu que possa ser alguma coisa na máquina do usuário. Em outros campos de outras tabelas onde o conteúdo do texto tenha acentos, ocorreu o mesmo problema, ou seja, ficou gravados caracteres estranhos no banco. Por exemplo: Um texto que deveria estar assim: Iniciou a NFe 95 série 1, vinculada à venda n° 97 Está assim: Iniciou a NFe 95 série 1, vinculada à venda nº 97 O mais estranho ainda é que isso ocorreu apenas em um dia específico. Nos dias anteriores e nos dias seguintes, o mesmo sistema, no mesmo banco de dados, tudo foi gravado corretamente. É como se alguma coisa na máquina, nesse dia e apenas nesse, tivesse mudado e depois retornado ao normal. O charset do banco é CHARACTER SET WIN1252 COLLATE WIN_PTBR. Se alguém já tiver passado por uma situação dessas e puder me dar alguma dica... Obrigado. Valdir Dill Rio de Janeiro - RJ Link to post Share on other sites
Juliomar Marchetti 3,854 Posted November 30, 2020 Report Share Posted November 30, 2020 Está usando FireDAC? Juliomar Marchetti Ajude o Projeto ACBr crescer - Assine o SAC skype: juliomar telegram: juliomar http://www.juliomarmarchetti.com.br Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Link to post Share on other sites
Usuários SAC valdirdill 188 Posted November 30, 2020 Author Usuários SAC Report Share Posted November 30, 2020 2 minutos atrás, Juliomar Marchetti disse: Está usando FireDAC? Sim. Valdir Dill Rio de Janeiro - RJ Link to post Share on other sites
Fundadores Solution Daniel Simoes 8,704 Posted November 30, 2020 Fundadores Solution Report Share Posted November 30, 2020 Por algum motivo, o Banco de Dados salvou essa informação como UTF8... pode ser algo no Banco, ou na configuração de conexão a ele... a conversão do stream do ZIP.para UTF8, corrompeu o mesmo... O caractere que aparece no inicio da string... é o "BOM", sinalizador de UTF8 https://pt.wikipedia.org/wiki/Marca_de_ordem_de_byte 2 Daniel Simões de Almeida O melhor TEF, é com o Projeto ACBr - Clique e Conheça Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Link to post Share on other sites
EMBarbosa 3,384 Posted December 7, 2020 Report Share Posted December 7, 2020 @valdirdill O Firebird aceita você informar o formato (collate) nos campos. Também permite fazê-lo na conexão. Se o seu SQL não possuir esses valores, será usado o valor padrão da conexão ou da tabela dependendo do caso. []'s Elton Ajude o Projeto ACBr crescer - Assine o SAC (15) 2105-0750 (15)99790-2976. Um engenheiro de Controle de Qualidade(QA) entra num bar. Pede uma cerveja. Pede zero cervejas. Pede 99999999 cervejas. Pede -1 cervejas. Pede um jacaré. Pede asdfdhklçkh. Link to post Share on other sites
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now