Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Oracle (https://www.clubdelphi.com/foros/forumdisplay.php?f=22)
-   -   Problemas con TStoredProc (https://www.clubdelphi.com/foros/showthread.php?t=58925)

Daniel Muniz 06-08-2008 14:28:27

Problemas con TStoredProc
 
Hola:
Tengo el siguiente problema:
Estoy invocando desde delphi 5 un procedimiento de Oracle 10g, lo vengo usando hace tiempo sin problemas, pero ahora se me planteo una dificultad al tratar "traer" una imagen desde la base.
La misma esta en un campo blob y es parametro de salida del procedimiento:
El codigo es el siguiente:

sp1.ProcedureName:='k_tc_gestiontarjetas.p_calidadCampania';
sp1.Parameters.CreateParameter('lectura',ftString,pdInput,250,'');
sp1.Parameters.ParamByName('lectura').Value:=lecturafinal;
sp1.Parameters.CreateParameter('informacion',ftstring,pdOutput,250,'');
sp1.Parameters.CreateParameter('info_tarjeta',ftstring,pdOutput,250,'');
sp1.Parameters.CreateParameter('error',ftstring,pdOutput,250,'');
sp1.Parameters.CreateParameter('foto',ftBlob,pdOutput,100000000,'');
sp1.ExecProc; // Ejecuto el procedimiento
lista.lines.append(sp1.Parameters.ParambyName('informacion').value);

El error me da al ejecutar y es el siguiente:
"Invalid variant type conversion" y es por el campo blob.
Yo en delphi no intento hacer nada con el parametro, ya me da el error al ejecutar el procedure


Gracias Daniel

poliburro 06-08-2008 14:36:43

Me parece que usas el Bde para conectarte a oracle, lamentablemente por pasar via ODBC no soporta los campos blob de oracle. Deberás migrar a otra tecnología que si los soporte (ADO por ejemplo).

Saludos.

Daniel Muniz 07-08-2008 19:01:59

problemas blob
 
Hola:
Primero, gracias por responderme
Ahora me estoy conectando con ADO y recibe bien el campo blob.
El problema lo tengo despues para cargar el blob, que en realidd en el TStoredProc es blob y en la base tambien.
Pero cuando lo levanto en delphi lo ve como variant y no lo puedo cargar en una componete Timage.
E probado cargarlo en TBlobStream, pero no le gusta, dice que no puedo cargar un variant en un TBlobStream.

Gracias
Daniel


La franja horaria es GMT +2. Ahora son las 21:23:14.

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