PDA

Ver la Versión Completa : Consulta con Campo Blob de Texto


Chaja
27-11-2007, 01:41:15
Estimados Amigos:

Bueno, hoy mi inquietud es la siguiente. Segun el codigo que pongo aca:

select mv.cliente as codigo , c.nombre,c.vendedor,c.direccion_comercial,
c.correoelectronico,c.observaciones,
c.telefono_comercial_1,c.telefono_comercial_2,
c.fechaultimacompra,c.ultimopago,c.limite_credito,
sum(mv.debe-mv.haber) as saldo2 from movccvta mv
right JOIN clientes c ON c.codigo = mv.cliente and c.activo= 'S'
group by mv.cliente,c.nombre,c.vendedor, c.direccion_comercial,
c.correoelectronico,c.observaciones,
c.telefono_comercial_1,c.telefono_comercial_2,
c.fechaultimacompra,c.ultimopago,c.limite_credito


donde el campo en negrita es un campo Blob de texto. Uso IB 6 con delphi 5. El tema es que cuando ejecuto el sql, me da un erro de conversion a String el Blob.

" Overflow Ocurred during data tyoe conversion
conversion error from string "BLOB" "


He usado el cast sin exito, y no se como resolver. Busque algo en los foros pero no encontre o no supe buscar.
Agradezco la ayuda

Gracias

afxe
27-11-2007, 09:32:25
No sé si existirá otra solución, pero lo que yo suelo hacer es no meter los blob en consultas agrupadas. Te doy la idea por si te sirve, aunque te repito que no sé si es la mejor solución:
Primero declaras la consulta agrupada:

select mv.cliente as codigo,
sum(mv.debe-mv.haber) as saldo2
from movccvta mv right JOIN clientes c
ON c.codigo = mv.cliente and c.activo= 'S'
group by mv.cliente;


Le asignas un datasource a este primer query y te creas otro query con los datos de la ficha del cliente:



select c.nombre,c.vendedor,c.direccion_comercial,
c.correoelectronico,c.observaciones,
c.telefono_comercial_1,c.telefono_comercial_2,
c.fechaultimacompra,c.ultimopago,c.limite_credito,
from clientes c
where c.codigo = :Codigo


Luego la unes con la propiedad DataSource de este Query al datasource que de la primera consulta.
A medida que vayas recorriendo la primera consulta se irá accediendo.

Suerte.

rastafarey
03-12-2007, 22:12:06
Bueno si mas no recuerdo he tirado la consulta directamento sobre el campo y todo funciona perfecto(us afirebir).

Pero siempre hay una solucion hay una udf freeudf o algo asi que trau una funcion para taranformar blob a varchar. Con esto ya tienes la solucion.

Espero te sirva.