Me han consultado como mostrar en un informe, una imagen almacenada en una tabla de la base de datos.
Esto es en realidad muy sencillo, e involucra el uso de la función dbms_lob.getlength().
El procedimiento a seguir es el siguiente:
- Cree una nueva página en su aplicación de tipo Informe
- Incluya una consulta SQL similar a la siguiente:
SELECT "PRODUCT_ID" "PRODUCT_ID", "PRODUCT_NAME" "PRODUCT_NAME", "PRODUCT_DESCRIPTION" "PRODUCT_DESCRIPTION", "LIST_PRICE" "LIST_PRICE", dbms_lob.getlength("PRODUCT_IMAGE") "PRODUCT_IMAGE" FROM "DEMO_PRODUCT_INFO"
Observe la inclusión de la función dbms_lob.getlength()
- Complete el informe
- Haga clic en el enlace Informe en la sección de regiones
- Ahora haga clic en el icono de edición de la columna correspondiente a la imagen
- En la sección de Formato de Columna, en el campo Formato Numérico/Fecha agregue el siguiente texto:
IMAGE:DEMO_PRODUCT_INFO:PRODUCT_IMAGE:PRODUCT_ID::::::inline:Descargar
en donde:
- DEMO_PRODUCT_INFO, es el nombre de la tabla del reporte,
- PRODUCT_IMAGE, es el nombre de la columna BLOB que contiene la imagen a mostrar,
- PRODUCT_ID, es el nombre de la columna llave de la tabla.
- Finalmente haga clic en el botón
Eso es todo, si ejecutan la nueva página, deberían estar viendo en cada línea del reporte, la correspondiente imagen en la columna indicada.
Pueden observar un reporte igual al descrito en mi aplicación de ejemplo en OTN.
Los espero en la siguiente.
Hola estuve creando un reporte tal como tu lo indicaste ysolo me muestra un espacio vacio o una – pero nada mas no se si será la forma de guardar la imagen en la tabla si hay alguna forma especial dimela porque ya no se que hacer pongo el formato y todo lo demas pero nada la imagen no me aparece, no se si habra alguna configuracion especial de apex para que muestre las imagens o que mismo, por cierto tengo apex 4.0.2 en ingles
No existe nada expecial que hacer, pero sin más información es dificil poder ayudarte a descifrar que es lo que está mal.
Que tal!!!
En mi caso ejecuto perfectamente la consulta..pero me salen enormes las imagenes y lo que necesito es que el usuario pueda verlas como catalogo..como hago para poner un tamaño a la visualizacion de las fotos??
Gracias de antemano