Hola amigos y compañeros.
Tengo un formulario con varios campos. Uno de ellos es un campo memo. Esos campos los guardo en una tabla. El campo memo tengo que guardarlo en un campo de tipo BLOB, definido en la tabla como: BLOB
sub_type 0 segment size 80.
Antes trabajaba con delphi 7 y Firebird 2.5 y todo funcionaba bien.
Ahora estoy migrando la aplicación a delphiXE con el mismo firebird y he tropezado con este problema.
Cuando voy a guardar en la tabla el campo memo del formulario, o bien no me guarda nada, o bien me guarda caracteres raros, puntos,...
Código Delphi
[-]
with QRegistro do
begin
close;
sql.clear;
sql.add('INSERT INTO REGISTRO_LLAMADAS_CLIENTES VALUES(:P0,:P1,:P2,:P3,:P4,:P5,:P6,:P7)');
params[0].AsInteger := StrToInt(EditCodCli.Text);
params[1].AsString := EditCliente.Text;
params[2].AsDateTime := Fecha.DateTime;
params[3].AsString := EditAsunto.Text;
params[4].AsString := MemoObservaciones.Text;
params[5].AsString := NuevaCita;
params[6].AsInteger := StrToInt(EditCodAge.Text);
params[7].AsString := EditNomAge.Text;
try
ExecSQL;
except
Cancel;
end;
end;
El campo que da estos problemas es el parámetro 4. He probado con "params[4].AsBlob" - con "params[4].AsMemo" y nada.
Estoy seguro que es una chorrada, pero estoy bloqueado y no consigo dar con ella.
He consultado también en el foro y no he encontrado ninguna solución.
Un saludo y gracias anticipadas.