guarasemini Postado Ontem às 20:10 Postado Ontem às 20:10 Boa tarde a todos. Estou com um problema no loadfromFile do acbrNFe para a impressão de um DANFE. O nome do emitente tem acento, quando eu faço o loadfromFile do arquivo XML e passa no XMLStr := ConverteXMLtoNativeString(XMLStr); ele remove o acento e coloca um caractere especial. O XML não tem a tag de utf-8, mas quando entra no "function UTF8ToNativeString(const AUTF8String: AnsiString): String;" para maior que delphi 12, e faz o "UTF8ToString(AUTF8String);", ele "quebra" o XML. Como algumas DANFEs minhas precisam ser apresentadas para orgao publico, alguns estão incomodados com isso. Na DANFE está marcado para remover acentos, mas o problema é quando faz esse conversão. Alguem pode me auxiliar ?
Fundadores Daniel Simoes Postado Há 23 horas Fundadores Postado Há 23 horas O ACBr presume, que todos os XMLs de DFe's são UTF8 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.
guarasemini Postado Há 9 horas Autor Postado Há 9 horas 14 horas atrás, Daniel Simoes disse: O ACBr presume, que todos os XMLs de DFe's são UTF8 então, mas não sendo e convertendo gera esse problema de caracteres especiais. Tem algo que posso fazer ?
butcher4556 Postado Há 8 horas Postado Há 8 horas Pelo que parece o problema está na codificação do XML. O ACBr espera UTF-8, então se o arquivo vem sem essa definição pode acabar quebrando os caracteres. Eu verificaria primeiro como esse XML está sendo gerado, porque corrigir na origem costuma ser melhor do que tratar depois no carregamento. 1
guarasemini Postado Há 8 horas Autor Postado Há 8 horas 27 minutos atrás, butcher4556 disse: Pelo que parece o problema está na codificação do XML. O ACBr espera UTF-8, então se o arquivo vem sem essa definição pode acabar quebrando os caracteres. Eu verificaria primeiro como esse XML está sendo gerado, porque corrigir na origem costuma ser melhor do que tratar depois no carregamento. concordo com você ! O problema é que é um xml de fornecedor, dai fica complicado
Agnaldo Prates Postado Há 8 horas Postado Há 8 horas Ao que parece,o problema não está no ACBr, mas na função que UTF8ToUnicodeString do Delphi. Prates, Agnaldo
guarasemini Postado Há 8 horas Autor Postado Há 8 horas Estou colocando os "problemas" que localizei. Mudei para o loadfromfile novamente e estou colocando as imagens de onde está "certo" e onde "quebra" para ver se alguem pode me auxiliar. As imagens são debbugando a TNotasFiscais.LoadFromFile. No memorystrema como utf está correto e no ansi quebra. Deixei destacado a quebra do caractere especial em questão. Novamente, obrigado pela atenção de todos.
Fundadores Daniel Simoes Postado Há 6 horas Fundadores Postado Há 6 horas Se possivel, anexe o XML para analise 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.
guarasemini Postado Há 5 horas Autor Postado Há 5 horas 26 minutos atrás, Daniel Simoes disse: Se possivel, anexe o XML para analise Desculpa, havia esquecido 35260443987515000725550010000549591147977207.xml
Fundadores Daniel Simoes Postado Há 4 horas Fundadores Postado Há 4 horas Parece tudo correto, com o XML.. está em UTF8 e tem a Declaração de Encoding, no inicio do arquivo Como reproduzir o Problema, no Demo do ACBr ? Basta carregar o arquivo, e imprimir a DANFE ? Você está usando Fast, Fortes ou FPDPF ? 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.
guarasemini Postado Há 4 horas Autor Postado Há 4 horas 6 minutos atrás, Daniel Simoes disse: Parece tudo correto, com o XML.. está em UTF8 e tem a Declaração de Encoding, no inicio do arquivo Como reproduzir o Problema, no Demo do ACBr ? Basta carregar o arquivo, e imprimir a DANFE ? Você está usando Fast, Fortes ou FPDPF ? Sim, eu fiz o seguinte: criei um novo projeto, adicionei acbrnfe e acbrdanfefr (uso fastreport), so apontei para o DANFeRetrato.fr3 que fica dentro a pasta report do exemplo do AcbrNFe. Coloquei 1 button e fiz acbrnfe1.notafiscais.loadfromfile(<path do XML>) e a danfe sai com o caractere errado. Estou utilizando delphi 13.1 + fastrerport 2026.2.1. E sim, esta com a tag utf, verifiquei isso pelo notaped ++. Mas quando passas nas rotinas que deixei na mensagem anterior, ele quebra.
Fundadores Daniel Simoes Postado Há 4 horas Fundadores Postado Há 4 horas O problema pode estar na Classe do Fast Report do ACBr, ou ainda no arquivo .fr3 Você está usando o .FR3 disponibilizado pelo ACBr ? Infelizmente não consigo testar, usando o Fast Report 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.
Fundadores Daniel Simoes Postado Há 3 horas Fundadores Postado Há 3 horas No Demo do ACBr, em Fortes, não ocorre o problema procedure TfrmACBrNFe.btnImprimirClick(Sender: TObject); begin OpenDialog1.Title := 'Selecione a NFe'; OpenDialog1.DefaultExt := '*-nfe.XML'; OpenDialog1.Filter := 'Arquivos NFe (*-nfe.XML)|*-nfe.XML|Arquivos XML (*.XML)|*.XML|Todos os Arquivos (*.*)|*.*'; OpenDialog1.InitialDir := ACBrNFe1.Configuracoes.Arquivos.PathSalvar; if OpenDialog1.Execute then begin ACBrNFe1.NotasFiscais.Clear; ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName); ACBrNFe1.NotasFiscais.Imprimir; end; end; Também não ocorreu, usando o FPDF 35260443987515000725550010000549591147977207-nfe.pdf Ahh.. fiz o testes em Lazarus/FPC... Qual a sua IDE e Sistema Operacional ? 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.
guarasemini Postado Há 1 hora Autor Postado Há 1 hora 2 horas atrás, Daniel Simoes disse: No Demo do ACBr, em Fortes, não ocorre o problema procedure TfrmACBrNFe.btnImprimirClick(Sender: TObject); begin OpenDialog1.Title := 'Selecione a NFe'; OpenDialog1.DefaultExt := '*-nfe.XML'; OpenDialog1.Filter := 'Arquivos NFe (*-nfe.XML)|*-nfe.XML|Arquivos XML (*.XML)|*.XML|Todos os Arquivos (*.*)|*.*'; OpenDialog1.InitialDir := ACBrNFe1.Configuracoes.Arquivos.PathSalvar; if OpenDialog1.Execute then begin ACBrNFe1.NotasFiscais.Clear; ACBrNFe1.NotasFiscais.LoadFromFile(OpenDialog1.FileName); ACBrNFe1.NotasFiscais.Imprimir; end; end; Também não ocorreu, usando o FPDF 35260443987515000725550010000549591147977207-nfe.pdf 7.93 kB · 1 download Ahh.. fiz o testes em Lazarus/FPC... Qual a sua IDE e Sistema Operacional ? Estou com windows 11, Delphi 13.1 e fastReport 2026.2.1
Recommended Posts
Crie uma conta ou entre para comentar
Você precisar ser um membro para fazer um comentário
Criar uma conta
Crie uma nova conta em nossa comunidade. É fácil!
Crie uma nova contaEntrar
Já tem uma conta? Faça o login.
Entrar Agora