Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Como guardar un MEMO o un RICHEDIT en una db... (https://www.clubdelphi.com/foros/showthread.php?t=47452)

Greco 28-08-2007 19:36:53

Como guardar un MEMO o un RICHEDIT en una db...
 
Hola,
Estoy experimentando en mi primera aplicación como modo de aprendizaje de Delphi y me encontre con un problema que de seguro es simple y facil de solucionar pero que debido a mi corta experiencia ya que soy novato no lo he podido solucionar.

Estoy trabajando con el componente AbsoluteDB y necesito guardar unos registros en una base de datos
El problema que tengo es que no se como guardar la informacion del campo RichEdit.

Este es el parte del código que tengo para crear la tabla y la db (en caso de que no exista) al momento de ejecutar la aplicación:

Código Delphi [-]
...
   begin 
      Clear;
         Add('entNo',ftAutoInc,0,False);
         Add('entTitulo',ftString,150,False);
         Add('entCategoria',ftString,50,False);
         Add('entSubcategoria',ftString,50,False);
         Add('entContenido',ftFmtMemo,0,False);
    end;
...
En base a la ayuda que aparece en la web del componente AbsoluteDB.

y al momento de la insercion de contenido hago esto:

Código Delphi [-]
...
  Insert;
    FieldByName('entTitulo').AsString :=Edit1.Text;
    FieldByName('entCategoria').AsString :=Combobox1.Text;
    FieldByName('entSubcategoria').AsString :=Combobox2.Text;
    FieldByName('entContenido').AsFmtMemo :=RichEdit1.Lines;
  Post;
...
Tambien sacado de la ayuda de la WEB.

El problema que tengo es que no me logra guardar el campo RichEdit en la base de datos, al momento de compilar me muestra este mensaje:

Código Delphi [-]
[Error] Umain.pas(131): Undeclared identifier: 'AsFmtMemo'
[Fatal Error] Apuntes.dpr(8): Could not compile used unit 'Umain.pas'

AQUI estan los tipos de datos para la base de datos segun la ayuda del absoluteDB.

Si alguien puede darme una mano en esto ya que no se como poder solucionarlo, al parecer es un problema con el tipo de dato o algo que estoy haciendo mal en el RichEdit.
Cualquier cosa aquí estaré pendiente, si necesitan que proporcione mas datos o lo que sea.

Saludos

maeyanes 28-08-2007 19:53:55

Hola!

El error te indica que no encuentra la propiedad AsFmtMemo para el objeto TField que devuelve el método FieldByName.

Puedes intentar asignando el campo como:

Código Delphi [-]
FieldByName('entContenido').AsString :=RichEdit1.Lines.Text;

Saludos...

egostar 28-08-2007 19:54:54

Hola Greco

Prueba con esto:

Código Delphi [-]
    
    FieldByName('entTitulo').Value :=Edit1.Text;
    FieldByName('entCategoria').Value :=Combobox1.Text;
    FieldByName('entSubcategoria').Value :=Combobox2.Text;
    FieldByName('entContenido').Value :=RichEdit1.Lines.Text;

oops, se me han adelantado, saludos [maeyanes]

Salud OS.

Greco 28-08-2007 20:27:02

Cita:

Empezado por maeyanes (Mensaje 226586)
Hola!

El error te indica que no encuentra la propiedad AsFmtMemo para el objeto TField que devuelve el método FieldByName.

Puedes intentar asignando el campo como:

Código Delphi [-]FieldByName('entContenido').AsString :=RichEdit1.Lines.Text;


Saludos...

Muchas gracias, puse la linea que me dijiste y funcionó.
La verdad es que en un principio proble con AsSring pero colocaba
RichEdit1.Lines; o RichEdit1.Text; pero nunca probé con
RichEdit1.Lines.Text; por desconocimiento mio.
Gracias.

Cita:

Empezado por egostar (Mensaje 226587)
Hola Greco

Prueba con esto:

Código Delphi [-]
FieldByName('entTitulo').Value :=Edit1.Text;
FieldByName('entCategoria').Value :=Combobox1.Text;
FieldByName('entSubcategoria').Value :=Combobox2.Text;
FieldByName('entContenido').Value :=RichEdit1.Lines.Text;


oops, se me han adelantado, saludos [maeyanes]

Salud OS.

Tambien probé las lineas que posteaste y la verdad es que tambien funcionaron.
Gracias por la ayuda.


::::::::::::::::::::::TEMA SOLUCIONADO::::::::::::::::::::::


La franja horaria es GMT +2. Ahora son las 22:39:33.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi