Foros del Web » Programación para mayores de 30 ;) » .NET »

Una de Crystal y objetos OLE

Estas en el tema de Una de Crystal y objetos OLE en el foro de .NET en Foros del Web. Buenos días, Intento insertar un campo blob (Objeto OLE de Access) como imagen en un reporte de crystal reports, para que la imagen sea mostrada ...
  #1 (permalink)  
Antiguo 31/01/2006, 05:03
Avatar de moNTeZIon  
Fecha de Ingreso: enero-2005
Ubicación: Lliçà de Munt - BCN
Mensajes: 1.625
Antigüedad: 19 años, 4 meses
Puntos: 9
Una de Crystal y objetos OLE

Buenos días,

Intento insertar un campo blob (Objeto OLE de Access) como imagen en un reporte de crystal reports, para que la imagen sea mostrada como una campo más de los que estoy mostrando, por cada registro. Pero la imagen no aparece.
Puesto que en formularios y otros tipos de programación se debe extraer la información binaria de ese campo antes de empezar a trabajar con él, imagino que me estará ocurriendo algo parecido, y por eso no puedo meter el campo directamente, como si se tratara de un campo Varchar.

¿Saben como insertar esa imagen en el reporte? Alguna liga al respecto? Lo que sea..
Muchas Gracias!
__________________
..:: moNTeZIon ::..
  #2 (permalink)  
Antiguo 31/01/2006, 10:11
Avatar de moNTeZIon  
Fecha de Ingreso: enero-2005
Ubicación: Lliçà de Munt - BCN
Mensajes: 1.625
Antigüedad: 19 años, 4 meses
Puntos: 9
1)
Estoy intentando montar "algo" que me recupere el dato binario de Access y me lo muestre en un PictureBox, para asegurarme de que hay algo en el campo.

Tengo este código, que he visto repetidas veces buscando por ahi:
Código:
Dim bytBLOBData() As Byte = dS.Tables("Presupuestos").Rows(2)("Foto")
Dim stmBLOBData As New MemoryStream(bytBLOBData)
PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage
PictureBox1.Image = Image.FromStream(stmBLOBData)
Pero me da este error en la última linea (la del ...FromStream...)
Código:
Excepción no controlada del tipo 'System.ArgumentException' en system.drawing.dll

Información adicional: Parámetro utilizado no válido.
Me he asegurado de que los datos estén en el dataset. Saben qué puede estar ocurriendo?

2)
Esto ocurre también, no se por qué: En la BD de access de la que tengo que extraer las fotos, he notado que los registros que tienen algo en el campo "Foto" pone algo como "Datos binarios largos". En cambio, cuando le doy al botón derecho > Insertar Objeto > Y Selecciono una imagen JPG, me muestra "Foto de Microsoft Photo Editor 3.0" en el campo, en vez de mostrar el "Datos binarios largos" como los demás.
Pero lo curioso, es que metiendo directamente el campo Foto en el Crystal Report y ejecutando, me muestra esa imagen añadida por mi (la que ha quedado marcada como "Foto de Microsoft Photo Editor 3.0"), pero no las demás.
¿Tendrá algo que ver con el tema este?

3)
Y para aclarar más, encontré este tema en otro foro, que tiene el mismo problema que yo, si le quieren dar un vistazo, aunque la respuesta que le dan creo que no sirve de mucho...
http://www.programacion.net/foros/32/msg/135275/

Gracias por vuestra atencion.
Saludos!
__________________
..:: moNTeZIon ::..

Última edición por moNTeZIon; 31/01/2006 a las 10:20
  #3 (permalink)  
Antiguo 31/01/2006, 13:04
Avatar de moNTeZIon  
Fecha de Ingreso: enero-2005
Ubicación: Lliçà de Munt - BCN
Mensajes: 1.625
Antigüedad: 19 años, 4 meses
Puntos: 9
Bueno, para más inri, llevo todo el día tras de esto, y me acaban de confirmar que el dato guardado como binario en el campo "Foto" es la ruta de la imagen y no la imagen en si. La imagen está en una carpeta.

¿Que han guardado la ruta en formato binario en vez de texto? Pues si

De todas formas, ahora lo que necesito es obtener ese dato (aunque sea texto). Debería pasarlo a un stream y luego a un string o algo así??

Siento el malentendido. Yo he perdido todo el dia con esto.

Un saludo!
__________________
..:: moNTeZIon ::..
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:06.