Pregunta: | 17838 - RICHEDIT Y SQL SERVER |
Autor: | Pablo Toscanini |
Trabajo con SQL server y Delphi 5 , y necesito guardar un campo richedit , pero al recuperar la informacion desde la tabla solo obtengo el texto , y pierdo todos los atributos ( Tipo de Font , color , etc ).
uso un procedimiento para guardar los datos , el campo esta definido como text en sql server , en la forma uso un RichEdit donde el usuario tiene controles para definir el Font , color , etc. Alguna Idea? Muchas Gracias. |
Respuesta: | Rubén Regalado Alarcón |
No sé si con MS SQL funcione en forma identica a Oracle. En Oracle yo uso un campo Blob y se sigue el mismo procedimiento que si fueras a guardar una imagen.
Guarda el RichEdit en un archivo temporal. Usa un TBlobStream y conéctalo al campo blob de tu tabla MS SQL. Para leer el archivo RTF puedes usar BlockRead para llenar un buffer y después utilizar el método Write del TBlobStream para actualizar tu campo blob. Para leer, usar lo contrario: Conectar un TBlobStream al campo Blob. Leer, utilizando el método Read del TBlobStream. Escribir a un archivo temporal, utilizando BlockWrite. Cargar el archivo temporal en el RichEdit. |