PDA

Ver la Versión Completa : Imagenes FastReport


rpadin
24-08-2004, 11:58:46
Buenos días.

El problema es el siguiente:

1. Tenemos en una base de datos una tabla con datos, por ejemplo "amigos" y otra tabla con las fotos de los amigos "FotosAmigo"

2. Las fotos de los amigos las podemos guardar en 2 formatos: JPG y BMP

3. Quiero imprimir una lista de los amigos, con sus fotos:

Nombre del amigo Foto
---------------------------------------------------
Amigo 1 SUFoto


4. El problema: ¿Que pasa con FastReport?, que en la construcción del informe, tienes que especificar en el objecto imagen el tipo de imagen. Si pones BMP, el informe no funcionará con los JPGs, y vicebersa.

La pregunta sería:

¿ COmo puedo especificar dinámicamente, para cada fila que se imprima, el tipo de la imagen que quiero mostrar?, ¿Como accedo al objecto que contiene la imagen? ¿en cual de los eventos sería el mejor punto de acceso?

Un saludo y gracias
Ramiro

Sirkius
24-08-2004, 12:12:26
He estado probando en OnBeginBand y no he conseguido nada :(.

Para acceder a un objeto:

(frReport.FindObject('objeto') as TfrPictureView).BlobType :=

Ahí va un Integer, pero no se cual. Es cuestion de probar...

Gydba
24-08-2004, 13:20:54
Hola,

Tendrías que utilizar un complemento para las imágenes JPG (Aunque no sé si es tan así con su ultima versión, que por cierto no he probado).

Tal vez este link te de una idea:
http://www.clubdelphi.com/foros/showthread.php?t=12742&highlight=fastreport

saludos!

Cabanyaler
25-08-2004, 08:36:16
Hola, en el evento Beforeprint de la banda de detalle del report que estés diseñando, debes asignar la ruta del fichero que contiene la imágen a imprimir;
p.e.:

// Asignación de la imagena al campo foto
QRImageFoto.Picture.LoadFromFile('C:\fotos\Nomfoto.JPG');

Cambiando en la misma ruta en formato string del fichero de imágen, el nombre del fichero a imprimir.
Tb puedes consultar para ampliar conocimiento de esta forma de imprimir imágenes, la funcion LoadFromFile.

Espero haber aportado algo. Suerte. :)

rpadin
25-08-2004, 08:36:23
Hola y buenos días a todos!!!

Muchas gracias Sirkius, tu ayuda me abrió los ojos ...

He estado probando en OnBeginBand y no he conseguido nada :(.

Para acceder a un objeto:

(frReport.FindObject('objeto') as TfrPictureView).BlobType :=

Ahí va un Integer, pero no se cual. Es cuestion de probar...

He puesto en la tabla de imagenes un campo tipo, y dependiendo del tipo pues asigno a la propiedad BlobType el código correcto. Hasta aquí muy bien!!!

En el caso de imprimir la ficha de un único amigo, no hay problema, está funcionando de maravilla ... pero!!!, si lo que quiero es imprimir varias fichas de amigos, con sus respectivas fotos, PLAF!!!! falla!!!

He estado toda la tarde del martes con este problemita ... ¿Alguna otra idea ...? tan buena como la anterior.

Un saludo
Ramiro

rpadin
26-08-2004, 09:12:21
:D

Pues si!!! ... buenos días!!!

Una de dos o era el o era yo!!! :D

... no hay goliat que no caiga con una buena pedrada entre ceja y ceja ... :D

El problema estaba en el componente para mostrar las imágenes, no sé porqué, pero debía de estar mal insertado en el informé que daba problemas de manera aleatoria, fue quitar el componente, volver a ponerlo, darle las mismas propiedades ... y ale!!! ya funciona!!! increíble!!!

Un saludo y gracias por la ayuda!!
Ramiro