La Web del Programador: Comunidad de Programadores
 
    Pregunta:  36826 - PROBLEMA CON POWER BUILDE E INFORMIX
Autor:  Marta Borras Ferre
¿Como puedo recuperar un campo de una tabla de tipo text (memo) en un DataWindow?

Estoy trabajando con PB5 contra Informix con una conexión nativa (IN7).

En una de las tablas de informix existe un campo de tipo Text (Memo).
Si intento crear un DataWindow que muestre las columnas de la tabla no
me permite seleccionar el campo indicado.

Si hago la trampa de incluirlo a través del SQL Dessigner, lo permite
incluir en el DataWindow, pero al refrescar, se produce el error -608
de informix (Illegal attemp to convert Text/Byte blob type).

He probado de hacer la conexión a través de ODBC y no tengo ningún
problema con este campo, peró me interesa trabajar con la conexión
nativa contra informix.

Gracias.

  Respuesta:  Pedro Herrarte
Tienes que hacerlo a traves de SQL embebido con SELECTBLOB

Si tu SQL es

string ls_texto

SELECT TEXTO
INTO:ls_texto
FROM MI_TABLA
WHERE...;

Te truncará los datos o generará error.
Prueba

blob mi_blob

SELECTBLOB TEXTO
INTO:mi_blob
FROM MI_TABLA
WHERE...;

string ls_texto
ls_texto = string(mi_blob)

:-)