Gráficos no aparecen luego de actualizar a Apex 3.2 o 3.2.1

October 13th, 2009

Grafico no se muestra

El siguiente problema puede ocurrir en cualquier plataforma.

Después de actualizar a Apex 3.2 o Apex 3.2.1 desde una versión anterior, los gráficos de tipo “flash” y SVG ya no aparecen en la pantalla. Este problema sucede únicamente cuando se accesa Apex via Web Cache, no así cuando se hace en modo “empotrado”.

La causa de este problema, es que la variable #HOST# no está tomando el valor apropiado. Si se está usando Web Cache esta variable debe tomar el valor del puerto Web Cache, pero en su lugar está tomando el valor del puerto del servidor HTTP.

Para solucionar este problema:

  1. Defina el puerto Web Cache en el archivo marvel.conf / dads.conf
    PlsqlCGIEnvironmentList SERVER_PORT=
    Por ejemplo:
    PlsqlCGIEnvironmentList SERVER_PORT=80
  2. Reinicie el servidor HTTP

Espero que les sea de utilidad.

Crear informe con imagen almacenada en una tabla

October 9th, 2009

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:

  1. Cree una nueva página en su aplicación de tipo Informe
  2. Incluya una consulta SQL similar a la siguiente:
  3. 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()

  4. Complete el informe
  5. Haga clic en el enlace Informe en la sección de regiones
  6. Enlace Informe

  7. Ahora haga clic en el icono de edición de la columna correspondiente a la imagen
  8. Icono edición

  9. En la sección de Formato de Columna, en el campo Formato Numérico/Fecha agregue el siguiente texto:
  10. IMAGE:DEMO_PRODUCT_INFO:PRODUCT_IMAGE:PRODUCT_ID::::::inline:Descargar

    Formato de Columna

    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.
  11. Finalmente haga clic en el botón Botón Aplicar

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.