Cómo añadir una imagen a un informe

Cómo:

Referencia:

Con una hoja de estilos puede añadir y colocar una imagen en un informe. Una imagen, digamos, un logo, aporta identidad corporativa y atractivo visual a un informe. Puede añadir más de una imagen creando múltiples declaraciones.

También puede añadir una imagen como fondo a un informe. Se puede hacer un mosaico o repetir una imagen de fondo para que cubra toda el área sobre la cual se muestra el informe. Una imagen unida a un informe completo, o bien en un encabezado o pie puede también aparecer con la imagen de fondo.

Las imágenes deben tener una extensión soportada por el navegador, como GIF (Graphic Interchange Format) o JPEG (Joint Photographic Experts Group). Los informes PDF y PostScript son compatibles con archivos GIF y JPEG, además de los SVG creados por el motor de gráficos de WebFOCUS.

Con respecto a la salida PDF, HTML o DHTML, basada en orígenes de datos compatibles con datos de tipo Objeto binario grande (BLOB en sus siglas inglesas) (Microsoft SQL Server, DB2, Oracle, Informix y PostgreSQL, utilizando sus datos de tipo BYTEA), puede almacenar una imagen en un campo BLOB del origen de datos.

La imagen debe residir en el servidor de informes de WebFOCUS en un directorio con nombre en EDAPATH o APPPATH. Si el archivo no se encuentra en la ruta de búsqueda, proporcione el nombre completo de la ruta.


Principio de página

x
Referencia: Compatibilidad de navegadores y dispositivos con imágenes de documentos HTML

La compatibilidad con la presentación de imágenes y gráficos en informes HTML y DHTL, se proporciona mediante un recurso de inserción de imágenes basado en el navegador del cliente. La salida generada por los navegadores Internet Explorer, o en escenarios en los que el navegador es desconocido (por ejemplo cuando el informe se distribuye con ReportCaster), es compatible con la inclusión de imágenes mediante la creación de un archivo de almacenamiento web (.mht). En el resto de navegadores, las imágenes presentan una codificación de 64 bits, dentro del archivo .htm generado.

SET HTMEMBEDIMG es el comando diseñado para poder acceder a los informes de WebFOCUS desde cualquier navegador o dispositivo. Se encuentra establecido en AUTO por defecto, lo que determina el algoritmo de codificación utilizado, en función del navegador del equipo cliente que envíe la solicitud de informe. Si el navegador es Internet Explorer o se desconoce (como los informes distribuidos por ReportCaster), WebFOCUS sigue generando archivos Web (.mht). Para el resto de navegadores, WebFOCUS codifica la imagen dentro de un archivo HTML (.htm).

SET HTMLEMBEDIMG={OFF|ON|AUTO}

donde:

OFF

No afecta al comportamiento por defecto. Si HTMLARCHIVE se encuentra en ON, se generan archivos .mht.

ON

Codifica las imágenes dentro del archivo .htm.

AUTO

Determina cómo manipular las imágenes, según el navegador que ha enviado la solicitud. En las solicitudes enviadas desde un navegador Internet Explorer, se utiliza HTMLARCHIVE para insertar las imágenes en un archivo .mht. Para el resto de navegadores, HTMLEMBEDIMG codifica la imagen dentro de un archivo .htm. Si el navegador es desconocido, como sucede con las solicitudes de informe enviadas por ReportCaster, AUTO utilizará la propiedad HTMLARCHIVE que esté en vigor. AUTO es el valor predeterminado.

El algoritmo de codificación de 64 bits, compatible con imágenes inferiores a 32Ks de tamaño, es compatible con Internet Explorer 8. En Internet Explorer 8, Information Builders recomienda seguir utilizando el formato .mht generado por HTMLARCHIVE. En Internet Explorer 9, o superiores, y en otros navegadores, el nuevo algoritmo es compatible con imágenes de cualquier tamaño.

Nota: Consulte la información del navegador para asegurarse de que es compatible con la codificación de 64 bits.

Para obtener la mayor compatibilidad posible, Information Builders recomienda usar la propiedad AUTO, para generar el tipo de archivo correspondiente a la configuración del usuario (cuando sea conocida). La siguiente tabla representa cómo interactúa HTMLEMBEDIMG con HTMLARCHIVE, en distintos navegadores.

Navegador

HTMLEMBEDIMG

HTMLARCHIVE

Archivo generado *

Internet Explorer

ON

ON

.HTM

ON

OFF

.HTM

OFF

ON

.MHT

OFF

OFF

.HTM

AUTO

ON

.MHT

AUTO

OFF

.HTM

Otros

ON

ON

.HTM

ON

OFF

.HTM

OFF

ON

.MHT

OFF

OFF

.HTM

AUTO

ON

.HTM

AUTO

OFF

.HTM

Desconocido

ON

ON

.MHT

ON

OFF

.HTM

OFF

ON

.MHT

OFF

OFF

.HTM

AUTO

ON

.MHT

AUTO

OFF

.HTM

* Nota: Para extensiones de archivos en la columna Archivo generado:



x
Referencia: Atributos de imagen

Atributo

Descripción

IMAGE

Añade una imagen.

IMAGEALIGN

Coloca una imagen. Esto sólo se aplica a informes HTML.

POSITION

Coloca una imagen.

IMAGEBREAK

Controla la generación de un salto de línea después de la imagen. Sólo afecta a los informes HTML sin hojas de estilos internas en cascada.

SIZE

Establece el tamaño de la imagen.

ALT

Proporciona la descripción de una imagen, para satisfacer los criterios de la sección de accesibilidad (Ley de la inversión en la fuerza laboral, de Estados Unidos de 1998). ALT sólo se aplica a informes HTML.

La descripción también se muestra como una descripción en ventana emergente cuando su ratón o su cursor pasan por encima de la imagen en la salida de informe.

PRESERVERATIO

ON especifica que la relación de aspecto (relación entre altura y anchura) de la imagen debe mantenerse cuando se haya establecido en un SIZE determinado. Esto evita que se distorsione el aspecto de la imagen. La imagen se ajusta al mayor tamaño soportado por la relación de aspecto, dentro de los límites marcados por SIZE. Compatible con imágenes de salida PDF y PostScript.

BACKIMAGE

Añade una imagen de fondo.



x
Sintaxis: Cómo Añadir una imagen a un informe HTML

Esta sintaxis se aplica a un informe HTML. Para más detalles acerca de cómo añadir una imagen a un informe PDF, PS o HTML con una CSS interna, vaya a Cómo Añadir una imagen a un informe PDF, PS o HTML con una hoja de estilos interna en cascada.

TYPE={REPORT|heading}, IMAGE={url|(column)} [,IMAGEALIGN=position]
     [,IMAGEBREAK={ON|OFF}] [,ALT='description'], $

donde:

REPORT

Inserta una imagen en el cuerpo de un informe. REPORT es el valor predeterminado.

Note: No se admite la opción IMAGE=(column) con TYPE=REPORT.

heading

Inserta una imagen en un encabezado o pie. Los valores válidos son TABHEADING, TABFOOTING, HEADING, FOOTING, SUBHEAD y SUBFOOT.

url

Es el URL del archivo de imagen. La imagen debe existir en un archivo separado en un formato admitido por su navegador, como GIF o JPEG. El archivo puede estar ubicado en su servidor web local o en cualquier servidor accesible desde su red. Para obtener información detallada, consulte Cómo especificar un URL.

column

Es un campo alfanumérico en una solicitud (por ejemplo, un campo de visualización o un campo BY) cuyo valor es un URL que apunta a un archivo de imagen. Especifique un valor con el atributo COLUMN que se describe en Cómo identificar un componente de informe en una hoja de estilo de WebFOCUS. Column debe estar entre paréntesis.

Esta opción le permite añadir diferentes imágenes a un encabezado o pie, dependiendo del valor del campo. Consulte Cómo utilizar un nombre de archivo en un origen de datos en un informe HTML.

IMAGEALIGN = position

Es la posición de la imagen.

Nota: IMAGEALIGN no es compatible con HTMLCSS=ON. HTMLCSS=ON permite colocar las imágenes dentro de un encabezado o pie, utilizando el atributo POSITION para especificar una posición relativa a la esquina superior izquierda del encabezado o del pie. Para más información sobre el atributo POSITION, consulte Cómo Añadir una imagen de un campo BLOB a un informe PDF, DHTML o HTML.

Los valores válidos son:

TOP en que la esquina superior izquierda de la imagen se alinea con el texto del encabezado o pie. Si la imagen se une a todo el informe, aparece en la parte superior del informe.

MIDDLE en que la imagen aparece en la parte central del encabezado o pie. Si la imagen se une a todo el informe, aparece en la parte central del informe.

BOTTOM en que la esquina inferior derecha de la imagen se alinea con el texto del encabezado o pie. Si la imagen se une a todo el informe, aparece en la parte inferior del informe.

LEFT en que la imagen aparece a la izquierda del texto del encabezado o pie. Si la imagen se une a todo el informe, aparece a la izquierda del informe.

RIGHT en que la imagen aparece a la derecha del texto del encabezado o pie. Si la imagen se une a todo el informe, aparece a la derecha del informe.

IMAGEBREAK

Controla la generación de un salto de línea después de la imagen. Los valores válidos son:

ON, que genera un salto de línea después de la imagen para que el elemento que venga a continuación (como un texto de encabezado de informe) aparezca en la próxima línea.

OFF que suprime un salto de línea después de la imagen, de manera que un elemento que siga a esta se mantenga en la misma línea. OFF es el valor predeterminado.

description

Es la descripción textual de una imagen, para satisfacer los criterios de la sección 508 sobre accesibilidad (Ley de Estados Unidos). La descripción debe ir entre comillas simples.

La descripción también se muestra como una descripción en ventana emergente cuando su ratón o su cursor pasan por encima de la imagen en la salida de informe.


Principio de página

x
Referencia: Cómo especificar un URL

Las siguientes pautas son las mismas tanto para la sintaxis IMAGE=url como para IMAGE=(column). En el último caso, se aplica a un URL almacenado en un campo de origen de datos.

Especifique un URL:

Se aplica lo siguiente:



Ejemplo: Cómo añadir una imagen GIF a un encabezado de informe HTML

Esta solicitud añade el logo de Gotham Grinds a un encabezado de informe. El logo se encuentra en un archivo de imagen por separado que se identifica mediante un URL relativo en el atributo IMAGE.

TABLE FILE GGORDER
ON TABLE SUBHEAD
"PRODUCTS ORDERED ON 08/01/96"
SUM QUANTITY AS 'Ordered Units' BY PRODUCT
WHERE PRODUCT EQ 'Coffee Grinder' OR 'Coffee Pot'
WHERE ORDER_DATE EQ '08/01/96'
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE * 
TYPE=TABHEADING, IMAGE=/IBI_APPS/IBI_HTML/GGDEMO/GOTHAM.GIF, IMAGEBREAK=ON, $ 
ENDSTYLE
END 

Cuando IMAGEBREAK está en ON, genera una interrupción de línea entre el logo y el texto del encabezado.



Ejemplo: Cómo crear un encabezado de informe con una imagen JPEG insertada
TABLE FILE EMPLOYEE
ON TABLE SUBHEAD
"Employee Salary Information and Courses"
" "
" "
" "
" "
" "
" "
" "
" "
" "
PRINT CURR_SAL BY COURSE_NAME
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF, $
TYPE=TABHEADING, IMAGE=C:\IBI\APPS\IMAGES\Pencils.jpg, 
POSITION=(.5 .5), SIZE=(.5 .5), $
ENDSTYLE
END

Nota: La imagen empleada en esta solicitud no se distribuye mediante WebFOCUS.

La salida es:



Ejemplo: Cómo utilizar un nombre de archivo en un origen de datos en un informe HTML

A continuación se explica cómo insertar una imagen en un SUBHEAD y utilizar una imagen diferente para cada valor del campo BY en que aparezca el SUBHEAD.

DEFINE FILE CAR
FLAG/A12=
DECODE COUNTRY ( 'ENGLAND' 'uk' 'ITALY' 'italy'
   'FRANCE' 'france' 'JAPAN' 'japan' );
END
TABLE FILE CAR
PRINT FLAG NOPRINT AND MODEL AS '' BY COUNTRY NOPRINT AS '' BY CAR AS ''
WHERE COUNTRY EQ 'ENGLAND' OR 'FRANCE' OR 'ITALY' OR 'JAPAN'
ON COUNTRY SUBHEAD
"                     <+0>Cars produced in <ST.COUNTRY"
HEADING CENTER
"Car Manufacturer Report"
" "
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE *
TYPE=SUBHEAD, IMAGE=(FLAG), $
TYPE=REPORT, GRID=OFF, $
TYPE=HEADING, SIZE=12, STYLE=BOLD, $
TYPE=SUBHEAD, STYLE=BOLD, $
ENDSTYLE
END

La salida es:



Ejemplo: Cómo proporcionar una descripción de imagen mediante el atributo ALT

A continuación vea cómo utilizar el atributo ALT. El atributo ALT proporciona una descripción de una imagen que los lectores de pantalla puedan interpretar, para cumplir con la Sección 508. La descripción también se muestra como una descripción en ventana emergente cuando su ratón o su cursor pasan por encima de la imagen en la salida de informe.

TABLE FILE GGSALES
SUM UNITS BY PRODUCT
ON TABLE SUBHEAD
"Report on Units Sold"
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE *
TYPE=TABHEADING, IMAGE=gglogo, IMAGEBREAK=ON, POSITION=(.25 .25),
   SIZE=(.5 .5), ALT='Gotham Grinds Logo Image', $
GRID=OFF, $
ENDSTYLE
END

La salida es:


Principio de página

x
Sintaxis: Cómo Añadir una imagen de fondo

Esta sintaxis se aplica a un informe HTML.

[TYPE=REPORT,] BACKIMAGE=url, $

donde:

TYPE=REPORT

Aplica la imagen a todo el informe. No se requiere, pues es el predeterminado

url

Es el URL de un archivo GIF o JPEG. Especifica un archivo en su servidor web local o en un servidor accesible desde su red.

El URL puede ser una dirección absoluta o relativa. Consulte Atributos de imagen.

Cuando especifique un archivo GIF, puede omitir la extensión del archivo.



Ejemplo: Cómo añadir una imagen de fondo

Esta solicitud añade una imagen de fondo a un informe. El archivo de imagen CALM_BKG.GIF reside en la dirección relativa que se ha mostrado.

TABLE FILE GGSALES
SUM UNITS DOLLARS
BY CATEGORY BY PRODUCT
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE *
TYPE=REPORT, STYLE=BOLD, GRID=OFF, $ 
TYPE=REPORT, BACKIMAGE=/IBI_APPS/IBI_HTML/TEMPLATE/CALM_BKG.GIF, $ 
ENDSTYLE
END

El fondo ha sido colocado como mosaico a través del área del informe:


Principio de página

x
Sintaxis: Cómo Añadir una imagen a un informe PDF, PS o HTML con una hoja de estilos interna en cascada

Esta sintaxis corresponde a informes PDF, PS o HTML con una hoja de estilos interna en cascada. La imagen puede estar en un archivo independiente.

Los informes con una hoja de estilos interna en cascada se tratan de páginas HTML con una hoja de estilos en cascada (CSS), almacenada entre las etiquetas de estilo, en el interior del documento HTML.

TYPE={REPORT|heading}, IMAGE={url|file|(column)} [,BY=byfield]
[,POSITION=([+|-]x [+|-]y )] [,SIZE=(w h)] ,$

donde:

REPORT

Inserta una imagen en el cuerpo de un informe. La imagen se muestra en el fondo del informe. REPORT es el valor predeterminado.

heading

Inserta una imagen en un encabezado o pie. Los valores válidos son TABHEADING, TABFOOTING, FOOTING, HEADING, SUBHEAD y SUBFOOT.

Proporcione suficiente espacio en blanco en el encabezado o el pie, de manera que la imagen no se solape con el encabezado o el pie. Coloque también el texto del encabezado o del pie a la derecha de la imagen con marcadores de posición o con el atributo POSITION en la hoja de estilos.

url

informe HTML con hoja de estilos interna en cascada:

Es la dirección absoluta o relativa del archivo de imagen. La imagen debe existir en un archivo separado en un formato admitido por su navegador, como GIF o JPEG. El archivo puede estar ubicado en su servidor web local o en cualquier servidor accesible desde su red. Para obtener información detallada, consulte Cómo especificar un URL.

file

Informe PDF o PS:

Es el nombre del archivo de imagen. Debe residir en el servidor de informes de WebFOCUS en un directorio con nombre en EDAPATH o APPPATH. Si el archivo no se encuentra en la ruta de búsqueda, proporcione el nombre completo de la ruta.

Cuando especifique un archivo GIF, puede omitir la extensión del archivo.

column

Es el campo alfanumérico en el origen de datos que contiene el nombre de un archivo de imagen. Utilice el atributo COLUMN que se describe en Cómo identificar un componente de informe en una hoja de estilo de WebFOCUS. Column debe estar entre paréntesis.

El campo que contiene el nombre o imagen del archivo debe ser un campo de visualización o un campo BY citado en la solicitud.

Fíjese que el valor del campo se interpreta exactamente como si fuera introducido como el URL de la imagen en la hoja de estilos. Si omite el sufijo, se añade .GIF por defecto. SET BASEURL puede resultar útil a la hora de añadir el URL base de las imágenes. En este caso, el valor del campo no necesita incluir el URL completo.

Esta sintaxis es útil, por ejemplo, si desea insertar una imagen en un SUBHEAD y quiere una imagen diferente por cada valor del campo BY en que aparezca el SUBHEAD. Consulte Cómo utilizar un nombre de archivo en un origen de datos en un informe HTML.

byfield

Es el campo de clasificación que ha generado el subencabezado o subpie.

POSITION

Es la posición inicial de la imagen.

+|-

Mide la distancia horizontal o vertical desde la esquina superior izquierda del componente de informe en que se inserta la imagen.

x

Es la posición de inicio horizontal de la imagen desde la esquina superior izquierda de la página física del informe, expresada en la unidad de medida especificada por el parámetro UNITS.

Coloque los valores de x e y entre paréntesis y sin comas entre ellos.

y

Es la posición de inicio vertical de la imagen desde la esquina superior izquierda de la página física del informe, expresada en la unidad de medida especificada por el parámetro UNITS.

SIZE

Es el tamaño de la imagen. De forma predeterminada, la imagen se añade en su tamaño original.

w

Es el ancho de la imagen, expresado en la unidad de medida especificada por el parámetro UNITS.

Coloque los valores de w y h entre paréntesis y sin comas entre ellos.

h

Es la altura de la imagen, expresada en la unidad de medida especificada por el parámetro UNITS.



Ejemplo: Cómo añadir una imagen GIF a un informe HTML con hoja de estilos en cascada interna

Un URL localiza el archivo de imagen GOTHAM.GIF en un servidor llamado WEBSRVR1. El atributo TYPE añade la imagen al encabezado de informe. POSITION coloca la imagen a un cuarto de pulgada en sentido horizontal, y un décimo de pulgada en sentido vertical, de la esquina superior izquierda de la página de informe. La imagen es de una pulgada de ancho por una de alto, como se ha especificado en SIZE.

SET HTMLCSS = ON
TABLE FILE GGSALES
SUM UNITS BY PRODUCT
ON TABLE SUBHEAD
"REPORT ON UNITS SOLD"
" "
" "
" "
" "
" "
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE *
TYPE=REPORT, GRID=OFF, $ 
TYPE=TABHEADING, IMAGE=HTTP://WEBSRVR1/IBI_APPS/IBI_HTML/GGDEMO/GOTHAM.GIF,
     POSITION=(.25 .10), SIZE=(1 1), $ 
ENDSTYLE
END

El logo de la compañía se sitúa en el encabezado del informe con el tamaño especificado:



Ejemplo: Cómo añadir una imagen GIF a un informe PDF

El archivo de imagen en este ejemplo es GOTHAM.GIF. El atributo POSITION coloca la imagen a un cuarto de pulgada en sentido horizontal, y un décimo de pulgada en sentido vertical, de la esquina superior izquierda de la página de informe. La imagen mide media pulgada de ancho y media de altura, tal como se ha especificado en SIZE.

SET ONLINE-FMT = PDF
TABLE FILE GGSALES
SUM UNITS BY PRODUCT
ON TABLE SUBHEAD
"Report on Units Sold"
" "
" "
" "
" "
" "
ON TABLE SET PAGE-NUM OFF
ON TABLE SET STYLE * 
TYPE=TABHEADING, IMAGE=GOTHAM.GIF, POSITION=(.25 .25), SIZE=(.5 .5), $ 
ENDSTYLE
END

El informe es:


Principio de página

x
Sintaxis: Cómo Añadir una imagen de un campo BLOB a un informe PDF, DHTML o HTML

Con respecto a la salida PDF, HTML o DHTML, basada en orígenes de datos compatibles con datos de tipo Objeto binario grande (BLOB en sus siglas inglesas) (Microsoft SQL Server, DB2, Oracle, Informix y PostgreSQL, utilizando sus datos de tipo BYTEA), puede almacenar una imagen en un campo BLOB del origen de datos.

Las hojas de estilos WebFOCUS empleadas para producir salida de informes en formato PDF, HTML o DHTML, pueden acceder a un campo BLOB como origen de la imagen, cuando una copia del campo BLOB contiene una copia binaria, exacta, de una imagen GIF o JPEG. Los informes HTML y DHTML también son compatibles con las imágenes PNG. Puede combinar imágenes de distintos formatos (GIF, JPEG, PNG) en un mismo campo BLOB. WebFOCUS determina el formato a partir del encabezado de la imagen. La imagen puede insertarse en columnas, encabezados, pies, subencabezados o subpies de informe.

El campo BLOB debe aparecer citado en un comando PRINT o LIST, en la solicitud (la agregación no es compatible). Los informes con imágenes BLOB son compatibles como componentes de los informes compuestos coordinados.

Utilizando los siguientes comandos SET, las imágenes BLOB funcionarán con HTML y DHTML en cualquier navegador:

TYPE={REPORT|heading}, IMAGE={url|file|(column)} [,BY=byfield]
[,POSITION=([+|-]x [+|-]y )] [,SIZE=(w h)] [,PRESERVERATIO={ON|OFF}],$
TYPE=DATA, COLUMN=imagefield, IMAGE=(imagefield), SIZE=(wh)
[,PRESERVERATIO={ON|OFF}] ,$

donde:

REPORT

Inserta una imagen en el cuerpo de un informe. La imagen se muestra en el fondo del informe. REPORT es el valor predefinido (no se admite con imágenes almacenadas en campos BLOB, que sí se admiten en salida PDF).

heading

Inserta una imagen en un encabezado o pie. Los valores aceptables son FOOTING, HEADING, SUBHEAD y SUBFOOT.

Si la imagen se va a insertar en un encabezado, subencabezado, pie o subpie en lugar de en una columna, la declaración de hoja de estilos se encarga de colocar la imagen en el encabezado, subencabezado, pie o subpie. Para que la imagen BLOB quede disponible a la hoja de estilos, debe hacer referencia al campo BLOB en el comando PRINT o LIST, con la opción NOPRINT. No haga referencia al nombre del campo BLOB en el propio encabezado o pie.

Proporcione suficiente espacio en blanco en el encabezado o el pie, de manera que la imagen no se solape con el encabezado o el pie. Coloque también el texto del encabezado o del pie a la derecha de la imagen con marcadores de posición o con el atributo POSITION en la hoja de estilos.

file

Es el nombre del archivo de imagen. Debe residir en el servidor de informes de WebFOCUS en un directorio con nombre en EDAPATH o APPPATH. Si el archivo no se encuentra en la ruta de búsqueda, proporcione el nombre completo de la ruta.

Cuando especifique un archivo GIF, puede omitir la extensión del archivo.

column

Es un campo BLOB del origen de datos que contiene una copia binaria exacta de una imagen GIF o JPEG. Los formatos HTML y DHTML también son compatibles con imágenes en formato PNG. Puede combinar imágenes de distintos formatos (GIF, JPEG, PNG) en un mismo campo BLOB. WebFOCUS determina el formato a partir del encabezado de la imagen. La imagen puede insertarse en columnas, encabezados, pies, subencabezados o subpies de informe. Utilice el atributo COLUMN que se describe en Cómo identificar un componente de informe en una hoja de estilo de WebFOCUS. Column debe estar entre paréntesis.

El campo que contiene el nombre o imagen del archivo debe ser un campo de visualización o un campo BY citado en la solicitud.

byfield

Es el campo de clasificación que ha generado el subencabezado o subpie.

imagefield

Es cualquier referencia de columna válida para el campo BLOB que contiene la imagen. Tenga en cuenta que se debe hacer referencia al campo BLOB en un comando PRINT o LIST de la solicitud.

Si se omite, el tamaño predeterminado es de 1 x 1 pulgadas. El ancho de la columna y el espacio del interlineado se ajusta automáticamente para acomodar la imagen.

POSITION

Es la posición inicial de la imagen.

+|-

Mide la distancia horizontal o vertical desde la esquina superior izquierda del componente de informe en que se inserta la imagen.

x

Es la posición de inicio horizontal de la imagen desde la esquina superior izquierda de la página física del informe, expresada en la unidad de medida especificada por el parámetro UNITS.

Coloque los valores de x e y entre paréntesis y sin comas entre ellos.

y

Es la posición de inicio vertical de la imagen desde la esquina superior izquierda de la página física del informe, expresada en la unidad de medida especificada por el parámetro UNITS.

SIZE

Es el tamaño de la imagen. De forma predeterminada, la imagen se añade en su tamaño original. Tenga en cuenta que las imágenes almacenadas en campos BLOB sólo son compatibles con la salida PDF, HTML o DHTML.

w

Es el ancho de la imagen, expresado en la unidad de medida especificada por el parámetro UNITS.

Coloque los valores de w y h entre paréntesis y sin comas entre ellos.

h

Es la altura de la imagen, expresada en la unidad de medida especificada por el parámetro UNITS.

Si se omite SIZW, se emplean las dimensiones originales de la medida (todas las imágenes GIF, JPEG y PNG tienen un tamaño original, sin escala, basado en las dimensiones de su bitmap).

[PRESERVERATIO={ON|OFF}]

No es compatible con imágenes en formato PNG. PRESERVERATIO=ONON especifica que la relación de aspecto (relación entre altura y anchura) de la imagen debe mantenerse cuando se haya establecido en un SIZE determinado. Esto evita que se distorsione el aspecto de la imagen. La imagen se ajusta al mayor tamaño soportado por la relación de aspecto, dentro de los límites marcados por SIZE. Se admite en la salida PDF o PS. OFF no mantiene la relación de aspecto. OFF es el valor predeterminado.

El tamaño real, almacenado en un campo BLOB, puede variar de una imagen a otra. El ajuste del tamaño permite que las imágenes quepan mejor en un informe con columnas. Nota: Las imágenes almacenadas en campos BLOB sólo son compatibles con la salida PDF, HTML o DHTML.



Ejemplo: Cómo insertar una imagen de un campo BLOB en una columna de informe

El origen de datos de Microsoft SQL Server llamado retaildetail, contiene información de producto sobre una tienda de ropa y calzado deportivo. El origen de datos Microsoft SQL Server, llamado retailimage, tiene el mismo campo de Id. de producto y una imagen de cada producto almacenada en un campo llamado prodimage, con datos de tipo BLOB.

El siguiente archivo máster describe el origen de datos Microsoft SQL Server llamado retaildetail.

FILENAME=RETAILDETAIL, SUFFIX=SQLMSS  , $
  SEGMENT=SEG01, SEGTYPE=S0, $
    FIELDNAME=FOCLIST, ALIAS=FOCLIST, USAGE=I5, ACTUAL=I4, $
    FIELDNAME=PRODUCTID, ALIAS=ProductId, USAGE=A5, ACTUAL=A5,
      MISSING=ON, $
    FIELDNAME=DEPARTMENT, ALIAS=Department, USAGE=A10, ACTUAL=A10,
      MISSING=ON, $
    FIELDNAME=CATEGORY, ALIAS=Category, USAGE=A30, ACTUAL=A30,
      MISSING=ON, $
    FIELDNAME=SPORTS, ALIAS=Sports, USAGE=A30, ACTUAL=A30,
      MISSING=ON, $
    FIELDNAME=GENDER, ALIAS=Gender, USAGE=A10, ACTUAL=A10,
      MISSING=ON, $
    FIELDNAME=BRAND, ALIAS=Brand, USAGE=A25, ACTUAL=A25,
      MISSING=ON, $
    FIELDNAME=STYLE, ALIAS=Style, USAGE=A25, ACTUAL=A25,
      MISSING=ON, $
    FIELDNAME=COLOR, ALIAS=Color, USAGE=A25, ACTUAL=A25,
      MISSING=ON, $
    FIELDNAME=NAME, ALIAS=Name, USAGE=A80, ACTUAL=A80,
      MISSING=ON, $
    FIELDNAME=DESCRIPTION, ALIAS=Description, USAGE=A1000, ACTUAL=A1000,
      MISSING=ON, $
    FIELDNAME=PRICE, ALIAS=Price, USAGE=D7.2, ACTUAL=D8,
      MISSING=ON, $

El siguiente archivo máster describe el origen de datos Microsoft SQL Server llamado retailimage, que tiene el mismo campo de Id. de producto y una imagen de cada producto almacenada en un campo llamado prodimage, con datos de tipo BLOB.

FILENAME=RETAILIMAGE, SUFFIX=SQLMSS  , $
  SEGMENT=RETAILIMAGE, SEGTYPE=S0, $
    FIELDNAME=PRODUCTID, ALIAS=PRODUCTID, USAGE=A5, ACTUAL=A5, $
    FIELDNAME=PRODIMAGE, ALIAS=F02BLOB50000, USAGE=BLOB, ACTUAL=BLOB,
      MISSING=ON, $

La siguiente solicitud establece un join entre los dos orígenes de datos e imprime los nombres y precios de los productos con la imagen correspondiente. La salida se genera en formato DHTML.

-* Rel 7705 DHTML and HTML supports including Image stored in 
-* BLOB field in report column, heading, footing, subhead, or 
-* subfoot
-* Rel 769 supports PDF format
JOIN PRODUCTID IN RETAILDETAIL TO PRODUCTID IN RETAILIMAGE
TABLE FILE RETAILDETAIL
HEADING CENTER
"Product List"
" "
PRINT NAME/A20 PRICE PRODIMAGE AS 'PICTURE'
BY PRODUCTID NOPRINT
BY NAME NOPRINT
ON NAME UNDER-LINE
ON TABLE SET PAGE NOPAGE
-**************************
-* Lines between asterisk lines required for BLOB image support 
-* for HTML and DHTML formats.
ON TABLE SET HTMLEMBEDIMG AUTO
-* Required to support IE8 with images larger than 32K
ON TABLE SET HTMLARCHIVE ON
-*Required for image positioning in subheads in HTML reports
ON TABLE SET HTMLCSS ON 
-**************************
ON TABLE PCHOLD FORMAT DHTML
ON TABLE SET STYLE *
TYPE=REPORT,COLOR=BLUE,FONT=ARIAL, GRID=OFF,$
TYPE=HEADING, SIZE = 18, COLOR=RED,$
TYPE=DATA,COLUMN=PRODIMAGE,IMAGE=(PRODIMAGE),SIZE=(1 1),$
ENDSTYLE
END

La imagen queda colocada en la columna de informe, siguiendo la declaración de hoja de estilos, que nombra el campo de imagen y establece el tamaño y posición de la imagen en la columna.

TYPE=DATA,COLUMN=PRODIMAGE,IMAGE=(PRODIMAGE),SIZE=(1 1),$

La salida parcial indica que el formato DHTML mantiene los espacios especificados.

La siguiente solicitud genera la salida en formato HTML.

-* Rel 7705 DHTML and HTML supports including Image stored in 
-* BLOB field in report column, heading, footing, subhead, or
-* subfoot
-* Rel 769 supports PDF format
JOIN PRODUCTID IN RETAILDETAIL TO PRODUCTID IN RETAILIMAGE
TABLE FILE RETAILDETAIL
HEADING CENTER
"Product List"
" "
PRINT NAME/A20 PRICE PRODIMAGE AS 'PICTURE'
BY PRODUCTID NOPRINT
BY NAME NOPRINT
ON NAME UNDER-LINE
ON TABLE SET PAGE NOPAGE
-**************************
-* Lines between asterisk lines required for BLOB image support 
-* for HTML and DHTML formats.
ON TABLE SET HTMLEMBEDIMG AUTO
-* Required to support IE8 with images larger than 32K
ON TABLE SET HTMLARCHIVE ON
-*Required for image positioning in subheads in HTML reports
ON TABLE SET HTMLCSS ON 
-**************************
ON TABLE PCHOLD FORMAT HTML
ON TABLE SET STYLE *
TYPE=REPORT,COLOR=BLUE, GRID=OFF, FONT=ARIAL,$
TYPE=HEADING, SIZE = 18, COLOR=RED,$
TYPE=DATA,COLUMN=PRODIMAGE,IMAGE=(PRODIMAGE),SIZE=(1 1),$
ENDSTYLE
END

La salida parcial indica que los espacios han cambiado, puesto que el navegador ha eliminado los espacios en blanco de la solicitud de informe HTML.

La siguiente solicitud genera la salida en formato PDF.

-* Rel 7705 DHTML and HTML supports including Image stored in 
-* BLOB field in report column, heading, footing, subhead, or 
-* subfoot
-* Rel 769 supports PDF format
JOIN PRODUCTID IN RETAILDETAIL TO PRODUCTID IN RETAILIMAGE
TABLE FILE RETAILDETAIL
HEADING CENTER
"Product List"
" "
PRINT NAME/A20 PRICE PRODIMAGE AS 'PICTURE'
BY PRODUCTID NOPRINT
BY NAME NOPRINT
ON NAME UNDER-LINE
ON TABLE SET PAGE NOPAGE
-**************************
-* Lines between asterisk lines required for BLOB image support 
-* for HTML and DHTML formats.
ON TABLE SET HTMLEMBEDIMG AUTO
-* Required to support IE8 with images larger than 32K
ON TABLE SET HTMLARCHIVE ON
-*Required for image positioning in subheads in HTML reports
ON TABLE SET HTMLCSS ON 
-**************************
ON TABLE PCHOLD FORMAT PDF
ON TABLE SET STYLE *
TYPE=REPORT,COLOR=BLUE, GRID=OFF,$
TYPE=HEADING, SIZE = 18, FONT = ARIAL, COLOR=RED,$
TYPE=DATA,COLUMN=PRODIMAGE,IMAGE=(PRODIMAGE),SIZE=(1 1),$
ENDSTYLE
END

La salida PDF parcial mantiene los espacios especificados y ofrece resultados similares a la salida DHTML.



Ejemplo: Cómo insertar una imagen de un campo BLOB en un subencabezado

El origen de datos de Microsoft SQL Server llamado retaildetail, contiene información de producto sobre una tienda de ropa y calzado deportivo. El origen de datos Microsoft SQL Server, llamado retailimage, tiene el mismo campo de Id. de producto y una imagen de cada producto almacenada en un campo llamado prodimage, con datos de tipo BLOB.

La siguiente solicitud establece une ambos orígenes de datos e imprime las imágenes de producto en un subencabezado. La salida se genera en formato DHTML. También puede generarse en formato HTML y PDF.

-* Rel 7705 DHTML and HTML supports including Image stored in
-* BLOB field in HTML report column, heading, footing, subhead,
-* or subfoot
-* Rel 769 supports PDF format
-*SET BASEURL='' - Required for embedded images to work. Overrides default
-* setting from WF Client.
SET BASEURL='' 
JOIN PRODUCTID IN RETAILDETAIL TO PRODUCTID IN RETAILIMAGE
TABLE FILE RETAILDETAIL
HEADING CENTER
"Product Catalog"
" "
PRINT NAME NOPRINT PRODIMAGE NOPRINT
BY PRODUCTID NOPRINT
ON PRODUCTID SUBHEAD
""
" ID: <10<PRODUCTID "
" Name: <10<NAME "
" Price: <7<PRICE "
" Image: "
""
""
""
""
""
ON TABLE SET PAGE NOPAGE
-**************************
-* Lines between asterisk lines required for BLOB image support 
-* for HTML and DHTML formats.
ON TABLE SET HTMLEMBEDIMG AUTO
-* Required to support IE8 with images larger than 32K
ON TABLE SET HTMLARCHIVE ON
-*Required for image positioning in subheads in HTML reports
ON TABLE SET HTMLCSS ON 
-**************************
ON TABLE PCHOLD FORMAT DHTML
ON TABLE SET STYLE *
TYPE=REPORT,COLOR=BLUE,FONT = ARIAL,$
TYPE=HEADING, COLOR = RED, SIZE = 16, JUSTIFY=CENTER,$
TYPE=SUBHEAD,BY=PRODUCTID,IMAGE=(PRODIMAGE),SIZE=(1 1), POSITION=(+2 +1),$
END

El resultado parcial es.



Ejemplo: Cómo ajustar el tamaño de una imagen en un campo BLOB

El origen de datos de Microsoft SQL Server llamado retaildetail, contiene información de producto sobre una tienda de ropa y calzado deportivo. El origen de datos Microsoft SQL Server, llamado retailimage, tiene el mismo campo de Id. de producto y una imagen de cada producto almacenada en un campo llamado prodimage, con datos de tipo BLOB.

La siguiente solicitud une ambos orígenes de datos y muestra la misma imagen en las tres columnas de la salida, con un tamaño y una configuración de PRESERVERATIO diferentes. Tenga en cuenta que PRESERVERATION=ON no es compatible con imágenes en formato PNG.

La salida se genera en formato DHTML. También puede generarse en formato HTML y PDF.

-* Rel 7705 DHTML and HTML supports including Image stored in
-* BLOB field in report column, heading, footing, subhead, or
-* subfoot
-* Rel 769 supports PDF format
JOIN PRODUCTID IN RETAILDETAIL TO PRODUCTID IN RETAILIMAGE
TABLE FILE RETAILDETAIL
PRINT PRODIMAGE AS '' PRODIMAGE AS '' PRODIMAGE AS ''
BY STYLE NOPRINT
WHERE NAME CONTAINS 'Pant' OR 'Tank'
ON STYLE UNDER-LINE
ON TABLE SET PAGE NOPAGE
-**************************
-* Lines between asterisk lines required for BLOB image support 
-* for HTML and DHTML formats.
ON TABLE SET HTMLEMBEDIMG AUTO
-* Required to support IE8 with images larger than 32K
ON TABLE SET HTMLARCHIVE ON
-*Required for image positioning in subheads in HTML reports
ON TABLE SET HTMLCSS ON 
-**************************
ON TABLE PCHOLD FORMAT DHTML
ON TABLE SET STYLE *
TYPE=REPORT,COLOR=BLUE,FONT = ARIAL,$
TYPE=DATA,COLUMN=P1,IMAGE=(PRODIMAGE),SIZE=(.75 .75),$
TYPE=DATA,COLUMN=P2,IMAGE=(PRODIMAGE),SIZE=(.75 1),PRESERVERATIO=ON,$
TYPE=DATA,COLUMN=P3,IMAGE=(PRODIMAGE),SIZE=(.75 1),PRESERVERATIO=OFF,$
END

Tenga en cuenta que PRESERVERATIO=OFF se ha especificado para mantener el ratio de altura y ancho de la imagen en la segunda columna, a pesar de que la altura SIZE del estilo especifica un valor distinto al estilo de la imagen de la primera columna. Además, como se ha especificado PRESERVERATIO=OFF para la tercera columna, no se mantiene el ratio de altura/ancho de la imagen, que aparece representada según lo especificado por los valores de altura y ancho SIZE del estilo de la solicitud (FEX).

A continuación le mostramos la salida parcial.



Ejemplo: Cómo insertar una imagen de un campo BLOB en un informe de resumen

Para insertar una imagen de un campo BLOB en un informe con datos de resumen, incluya dos comandos de visualización en la solicitud, un comando SUM para la información de resumen y un comando PRINT o LIST para mostrar la imagen y otros datos de detalles.

El origen de datos de Microsoft SQL Server llamado retaildetail, contiene información de producto sobre una tienda de ropa y calzado deportivo. El origen de datos Microsoft SQL Server, llamado retailimage, tiene el mismo campo de Id. de producto y una imagen de cada producto almacenada en un campo llamado prodimage, con datos de tipo BLOB.

La siguiente solicitud une ambos orígenes de datos. Contiene dos comandos de visualización, un comando SUM y un comando PRINT. El comando SUM agrega el precio total por cada categoría y muestra el nombre y el precio total de cada una en un subencabezado. El comando PRINT muestra la imagen de cada elemento de la categoría, junto con el número individual y el precio del producto en un subpie.

La salida se genera en formato DHTML. También puede generarse en formato HTML y PDF.

-* Rel 7705 DHTML and HTML supports including images stored in 
-* BLOB field in report column, heading, footing, subhead, or
-* subfoot
-* Rel 769 supports PDF format
SET PRINTPLUS=ON
JOIN PRODUCTID IN RETAILDETAIL TO PRODUCTID IN RETAILIMAGE
TABLE FILE RETAILDETAIL
HEADING CENTER
"Product Price Summary"
" "
SUM PRICE NOPRINT
BY CATEGORY NOPRINT
ON CATEGORY SUBHEAD 
" Category: <CATEGORY "
" Total Price: <PRICE "
" "
PRINT PRICE NOPRINT PRODIMAGE NOPRINT
BY CATEGORY NOPRINT
BY PRODUCTID NOPRINT
ON PRODUCTID SUBFOOT
" " 
" "
" "
" " 
" "
" "
" Product #: <PRODUCTID "
" Name: <NAME "
" Price: <FST.PRICE "
ON TABLE SET PAGE NOPAGE
-**************************
-* Lines between asterisk lines required for BLOB image support 
-* for HTML and DHTML formats.
ON TABLE SET HTMLEMBEDIMG AUTO
-* Required to support IE8 with images larger than 32K
ON TABLE SET HTMLARCHIVE ON
-*Required for image positioning in subheads in HTML reports]
ON TABLE SET HTMLCSS ON 
-**************************
ON TABLE PCHOLD FORMAT DHTML
ON TABLE SET STYLE *
TYPE=REPORT,COLOR=BLUE,FONT=ARIAL,$
TYPE=HEADING, COLOR=RED, SIZE=14, STYLE=BOLD, JUSTIFY=CENTER,$
TYPE=SUBHEAD, COLOR=RED, SIZE=12, STYLE=BOLD, JUSTIFY=CENTER,$
TYPE=SUBFOOT,BY=PRODUCTID,IMAGE=(PRODIMAGE),SIZE=(1 1), POSITION=(0 0),$
TYPE=SUBFOOT,BY=PRODUCTID,OBJECT=FIELD, ITEM=1, WRAP=5,$
END

La salida de la primera categoría es:


Principio de página

x
Referencia: Consideraciones de tamaño y compresión de archivos para imágenes en campos BLOB

El tamaño real, almacenado en un campo BLOB, puede variar de una imagen a otra. El ajuste del tamaño permite que las imágenes quepan mejor en un informe con columnas.

Los archivos con muchas imágenes pueden ser de gran tamaño. Si intenta reducir el tamaño de las imágenes mediante el atributo SIZE, no disminuirá el tamaño del archivo. Además, tenga en cuenta que SET FILECOMPRESS=ON no ayuda a reducir el tamaño de las imágenes en un archivo PDF, puesto que ya se han guardado de forma comprimida.


WebFOCUS