[firebase-br] Firebird Multiplataforma - Problemas com o Blob

Christian e Ana Luiza Britto chriseana em gmail.com
Qui Dez 3 13:18:48 -03 2015


Olá Sandro e turma da lista Firebird,

Ontem postei uma mensagem pedindo apoio. Agradeço pelas muitas dicas
recebidas. No final das contas, Gladiston e Sandro me ajudaram a
encontrar a solução. Não era o Firebird, mas a forma como estava
usando um componente do Lazarus-Free Pascal. Neste sentido, a partir
de ideias encontradas na web adaptei um código encontrado (créditos
dentro do programa) para adequar-se à minha solução. Como gratidão,
envio para todos a lista a rotina que resolveu meu problema. Trata-se
de uma rotina que converte caracteres especiais de uma string para
HTML Entities.

Espero que gostem,
Mais uma vez obrigado,
Christian



Em 02/12/15, Christian e Ana Luiza Britto<chriseana em gmail.com> escreveu:
> Olá Gladiston e Sandro,
>
> Muito obrigado pelas informações, ajudaram MUITO.
> Realmente  o problema não é com o banco de dados. As informações estão
> armazenadas corretamente. Testei o banco no Linux com o FlameRobin e
> tudo está devidamente acentuado lá.
>
> O problema só pode estar com o TIpHtmlPanel.
>
>  Eu também fiz um teste com o componente THTMLViewer e deu o mesmo
> problema.
>
> Testei apresentar as informações com o Token HTML no Windows e no
> Linux e funcionou corretamente. Não entendi o porque, mas acho que vou
> ter que fazer uma função para substituir os caracteres... Uffff
>
> Sandro, você teria esta função pronta?
>
> Desde já agradeço a todos os comentários da comunidade, todos foram
> válidos e me ajudaram muito.
>
> Grande abraço,
> Christian
>
> Em 02/12/15, Sandro Souza<escovadordebits em gmail.com> escreveu:
>> Bom dia/tarde/noite Christian.
>>
>> Acabei de fazer um teste com o TIpHtmlPanel no Lazarus 0.9.30.2-2 no
>> Zorin
>> OS 6.4 (baseado no Ubuntu 12.04) e ele exibiu corretamente os tokens
>> HTMLs
>> que eu utilizei, ou seja, no pior dos casos, você pode fazer simplesmente
>> uma função de conversão de texto normal em tokens HTMLs que vai funcionar
>> perfeitamente no TIpHtmlPanel.
>>
>> Não testei no Lazarus de Windows.
>>
>> A propósito, o Lazarus pode gerar executáveis para outras plataformas a
>> partir das outras, ou seja, nas opções do projeto, eu informo para qual
>> plataforma eu desejo gerar o executável (cross compilação).
>>
>> Eu estou no Linux de 64 bits, mas posso alterar as opções do projeto para
>> que o Lazarus gere um executável para o Windows de 32 bits por exemplo.
>>
>> Não sei se você já conhecia esse recurso.
>>
>> Bom, espero ter ajudado mais que atrapalhado. :D
>>
>> Em 2 de dezembro de 2015 15:00, Christian e Ana Luiza Britto <
>> chriseana em gmail.com> escreveu:
>>
>>> Olá Glaucos,
>>> Acabei de testar e não deu certo.
>>> Quando apresento o campo na tela utilizando a função ShowMessage os
>>> dados aparecem corretamente. Mas, quando utilizo o componente IBPro
>>> não funciona mais.
>>> Parece ser algo com o componente.
>>>
>>> Um detalhe estranho, no Windows eu consigo fazer os dados aparecerem
>>> corretamente utilizando a função UTF8ToANSI. O problema é que no Mac e
>>> Linux os dados não são apresentados corretamente.
>>> Abs,
>>> Christian
>>>
>>> Em 02/12/15, Glaucos Ginez<glaucosginez em gmail.com> escreveu:
>>> > Pode ser algum problema com o Lazarus mesmo, tente fazer uma conversão
>>> > no
>>> > conteúdo antes de exibi-lo com:
>>> >
>>> > SysToUFT8 ou UTF8ToSys
>>> >
>>> > Em 2 de dezembro de 2015 13:40, Christian e Ana Luiza Britto <
>>> > chriseana em gmail.com> escreveu:
>>> >
>>> >> Olá Marcos,
>>> >> Inelizmente não funcionou. Acrescentei o Charset correto e nada
>>> >> mudou.
>>> >> Postei mais dois emails para o grupo com mais informação,
>>> >> Abs,
>>> >> Christian
>>> >>
>>> >> Em 02/12/15, Marcos Carlos<mlimacarlos em gmail.com> escreveu:
>>> >> > Boa Tarde Christian...
>>> >> >
>>> >> >    Codificação de caracteres é uma coisa meio estranha... Eu não
>>> >> > tenho
>>> >> > experiência com o Lazarus, mas no Java existe uma diretiva que vc
>>> >> > coloca
>>> >> a
>>> >> > codificação nos parâmetros de conexão. Eu tenho usado UNICODE_CI_AI
>>> com
>>> >> > o
>>> >> > firebird 2.5.1 e na string de conexão com o banco, neste caso
>>> >> > falando
>>> >> > de
>>> >> > JDBC, fica mais ou menos assim:
>>> >> >
>>> >> > jdbc:firebirdsql:url:db?encoding=
>>> >> >
>>> >> > Eu testei minha aplicação em windows e linux e funciona normalmente
>>> com
>>> >> > todos os acentos no lugar. Seu problema com certeza é a codificação
>>> >> > de
>>> >> > caracteres. Agora a questão é achar onde isso é configurado no
>>> Lazarus.
>>> >> >
>>> >> > abraço,
>>> >> >
>>> >> > Marcos de Lima Carlos
>>> >> > mail to: mlimacarlos em gmail.com
>>> >> > http://blog.sirandsir.com/  <http://blog.sirandsir.com/> - Blog da
>>> Sir
>>> >> > &
>>> >> > Sir
>>> >> > http://inventory.sirandsir.com/ - Sir&Sir inventory!
>>> >> >
>>> >> > <http://www.sirandsir.com>
>>> >> >
>>> >> >
>>> >> > Em 2 de dezembro de 2015 13:37, Christian e Ana Luiza Britto <
>>> >> > chriseana em gmail.com> escreveu:
>>> >> >
>>> >> >> Olá,
>>> >> >>
>>> >> >> Desenvolvi uma aplicação em Lazarus 1.4.4 e Firebird 2.5.1. No
>>> >> >> programa, tenho um campo Blob Subtype 1 - UTF8. Criei o banco de
>>> dados
>>> >> >> no Firebird para Windows 10. Copiei o banco para Linux Kubuntu
>>> >> >> 14.05
>>> e
>>> >> >> Mac OS X Mavericks. Aplicação está rodando corretamente, mas
>>> >> >> quando
>>> >> >> apresento os dados deste campo Blob a acentuação não aparece
>>> >> >> corretamente. No Linux aparece de uma, no Mac de outra. Apenas no
>>> >> >> Windows funciona corretamente. Obs. Utilizo a mesma versão do
>>> Firebird
>>> >> >> em todos os OS.
>>> >> >>
>>> >> >> Podem me ajudar?
>>> >> >> Grande abraço,
>>> >> >> Christian
>>> >> >>
>>> >> >> ______________________________________________
>>> >> >> FireBase-BR (www.firebase.com.br) - Hospedado em
>>> >> >> www.locador.com.br
>>> >> >> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>> >> >> http://www.firebase.com.br/fb/artigo.php?id=1107
>>> >> >> Para consultar mensagens antigas:
>>> >> >> http://www.firebase.com.br/pesquisa_lista.html
>>> >> >>
>>> >> > ______________________________________________
>>> >> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>> >> > Para saber como gerenciar/excluir seu cadastro na lista, use:
>>> >> > http://www.firebase.com.br/fb/artigo.php?id=1107
>>> >> > Para consultar mensagens antigas:
>>> >> > http://www.firebase.com.br/pesquisa_lista.html
>>> >> >
>>> >>
>>> >> ______________________________________________
>>> >> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>> >> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>> >> http://www.firebase.com.br/fb/artigo.php?id=1107
>>> >> Para consultar mensagens antigas:
>>> >> http://www.firebase.com.br/pesquisa_lista.html
>>> >>
>>> > ______________________________________________
>>> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>> > Para saber como gerenciar/excluir seu cadastro na lista, use:
>>> > http://www.firebase.com.br/fb/artigo.php?id=1107
>>> > Para consultar mensagens antigas:
>>> > http://www.firebase.com.br/pesquisa_lista.html
>>> >
>>>
>>> ______________________________________________
>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>> Para consultar mensagens antigas:
>>> http://www.firebase.com.br/pesquisa_lista.html
>>>
>>
>



Mais detalhes sobre a lista de discussão lista