Formatação de campos no Interbase
03/04/2003
0
Eu estou desenvolvendo uma aplicação onde eu tenho dois RichEdit que precisam ter informações de formatação diferentes.
Por exemplo: em um dos RichEdit eu tenho o texto ´a casa caiu´ e quero que apenas a palavra casa fique em negrito.
Durante a execução do programa eu sei como fazer isso, o meu problema é gravar esta informação no banco de dados, pois quando eu precisar acessar essa informação novamente o banco precisa retornar a palavra casa em negrito.
Eu criei para os RichEdit campos do tipo Blob com subtype text ( já tentei com binario também ) e não funcionou.
Na verdade, eu não sei se ele não está gravando ou se quando eu mando ele carregar o RichEdit com a informação eu estou fazendo isso de forma incorreta.
Alguém pode me ajudar ? Eu estou precisando disso o mais rápido possível, eu tenho que entregar esse sistema amanhã para o meu cliente.
Obrigado.
Cleber
Cleber.sanchez
Posts
04/04/2003
Anonymous
Apenas, tenha certeza de gravar no campo o TEXTO FORMATADO do RichEdit (Texto RTF) e não o Texto Puro.
um ex:
procedure TFormX.SaveRichText;
var
Stm: TStream;
begin
RichEdit1.PlainText := False;
Stm := TMemoryStream.Create;
try
RichEdit1.Lines.SaveToStream(Stm);
Stm.Position := 0;
TBlobField(IBQuery1.FieldByName(´CAMPO_BLOB´)).LoadFromStream(Stm);
finally
Stm.Free;
end;
end;
Abraço
04/04/2003
Cleber.sanchez
Eu estou usando o campo do tipo BLOB com subtype TEXT, agora, em relação ao código que você me mandou ocorrem dois erros:
1. Eu estou utilizando procedures para gravar os dados no Interbase,
então eu passo direto parâmetros para o Interbase e peço para ele
executar a procedure. Se eu substituir a linha que você comenta da
Quary pelo parâmetro da procedure ele me retorna um erro dizendo:
´Access Violation´.
2. Caso eu execute o mesmo procedimento que você comenta na
mensagem ele me retorna um erro dizendo: ´Failed to Save Stream´.
Você sabe o que eu poderia estar fazendo para resolver isso ?
Abraços.
Cleber
04/04/2003
Anonymous
insert into TABELA (codigo, doc) values (:codigo, :doc)
então, vc pode atribuir o parâmetro DOC (tipo Blob) com o código q mostrei!
e então executar o IBSQL
Abraço
Clique aqui para fazer login e interagir na Comunidade :)