Cómo mejorar una página Web HTML con un procedimiento

En esta sección:

Puede mejorar la funcionalidad de su página Web activando la inclusión de comandos HTML en sus procedimientos, por medio del comando -HTMLFORM de Dialogue Manager. -HTMLFORM es compatible con todos los elementos HTML estándar, incluidos los estilos de caracteres, hipervínculos, imágenes gráficas, tablas, formularios y marcos. Puede combinar un procedimiento con comandos HTML de las siguientes formas:


Principio de página

x
Cómo hacer referencia a una página Web externa

Cómo:

Puede incluir comandos HTML en su procedimiento especificando una página Web HTML en su procedimiento.



x
Sintaxis: Cómo Hacer referencia a una página Web externa desde un procedimiento
-HTMLFORM filename

donde:

filename

Es el archivo HTML que contiene la página Web de destino. El nombre del archivo HTML debe estar en mayúsculas.

  • En UNIX y Windows, éste es el nombre de 8 caracteres del archivo HTML que contiene la página Web. La extensión debe ser .HTM, no HTML.
  • En Windows y UNIX, la extensión del archivo debe ser .HTM.
  • En z/OS, éste es el nombre de un archivo en el PDS asignado al ddname WWWHTM, o el ddname de un archivo secuencial. El archivo tiene las variables bloqueadas (VB).

Nota: El tiempo de diseño del Compositor HTML no ha sido desarrollado para ser usado con esta construcción. Si lo utiliza, puede que la herramienta no funcione correctamente y dejará de ser compatible.

Si emplea archivo HTML diferentes, no podrá utilizar los comandos y variable de Dialogue Manager en el archivo. Sin embargo, sí pueden utilizarse las secuencias de escape de Dialogue Manager, descritas en Cómo incluir variables en una página Web HTML.


Principio de página

x
Cómo insertar comandos HTML en un procedimiento

Cómo:

Para incluir comandos HTML en su procedimiento, insértelos en un procedimiento.

Nota:



x
Sintaxis: Cómo Insertar comandos HTML en un procedimiento WebFOCUS
-HTMLFORM BEGIN
       .
       .
       .
-HTMLFORM END

donde:

-HTMLFORM BEGIN

Señala el principio de los comandos HTML.

-HTMLFORM END

Señala el final de los comandos HTML.

Nota: Se da por sentado que las líneas que no pertenecen a los comandos de Dialogue Manager son HTML.

Puesto que se evalúan todas las variables de Dialogue Manager citadas entre los comandos -HTMLFORM BEGIN y -HTMLFORM END, incluso las que se encuentran entre las etiquetas de comentarios, debe asignarles un valor por defecto o escapar el símbolo de ampersand mediante un carácter de barra vertical (|), para que no se interprete como el inicio del nombre de una variable. Por ejemplo, en el ejemplo siguiente, el ampersand se escapa utilizando el carácter de barra vertical, para que no se evalúe la definición de la variable, en el comentario:

-HTMLFORM BEGIN
<HTML>
<HEAD>
<SCRIPT>
/* escaping the ampersand in a comment: &|x=y */
</SCRIPT>
</HEAD>
<BODY>
Test variable in Javascript comments
</BODY>
</HTML>
-HTMLFORM END


Ejemplo: Cómo incluir una página Web en un procedimiento

El siguiente procedimiento contiene una solicitud de informe y el comando -HTMLFORM, que personaliza la página Web en que aparece el informe. El informe está centrado en la ventana del navegador y aparece con la fuente Arial, en azul.

TABLE FILE SHORT
SUM PROJECTED_RETURN
BY COUNTRY
ON TABLE HOLD AS SHORT FORMAT HTMTABLE
END
-HTMLFORM BEGIN
<HTML><HEAD><STYLE>TD {FONT-FAMILY: ARIAL; COLOR: BLUE; }</STYLE></HEAD>
<BODY><DIV ALIGN="CENTER">
!IBI.FIL.SHORT;
</DIV></BODY></HTML>
-HTMLFORM END

Aparece la siguiente página Web:


Principio de página

x
Cómo insertar un procedimiento en una página Web HTML

Cómo:

Puede insertar uno o varios informes o archivos HTML en su página Web, mediante los comandos -HTMLFORM.



x
Procedimiento: Cómo Insertar un informe en una página Web HTML

Para insertar un informe en una página Web creada con comandos -HTMLFORM:

  1. Cree un procedimiento de informe que recupere y aplique un formato a los datos del informe, y guarde la salida de cada informe en un archivo temporal independiente. Se ha utilizado la siguiente sintaxis en el procedimiento de informe:
    ON TABLE HOLD FORMAT HTMTABLE AS reportname

    Nota: El archivo temporal creado para la salida no se encuentra disponible para el usuario.

  2. Si está usando un archivo HTML externo para mostrar la página Web que está insertando el informe, el procedimiento de informe debe especificar el archivo con el siguiente comando:
    -HTMLFORM filename

    Nota: Si no está usando un archivo HTML externo, los comandos HTML de la página Web pueden residir en el mismo archivo, utilizando -HTMLFORM BEGIN y -HTMLFORM END para separar los comandos HTML del resto del procedimiento.

  3. En los comandos HTML de la página Web, especifique la ubicación en que va a aparecer cada informe o archivo HTML, utilizando un código de escape HTML. La sintaxis del código de escape es
    !IBI.FIL.reportname

    donde:

    reportname

    Es el nombre de archivo del informe que va a ser insertado en la página Web. El comando !IBI.FIL admite nombres de archivos con un máximo de 8 caracteres para poder leerlos correctamente. Si supera los 8 caracteres, el comando entero es tratado como una cadena HTML literal.

    Los archivos insertados con la secuencia de escape !IBI.FIl pueden contener otras secuencias de este tipo. Si se hace referencia a un archivo que no existe, se devuelve un mensaje de error.



Ejemplo: Cómo insertar varios informes en una sola página Web HTML

Este ejemplo explica cómo insertar varios informes en una sola página Web HTML. El siguiente código genera tres informes; cada uno compuesto por los mismos datos sobre el sector automovilístico, clasificados de tres maneras distintas: por país, tipo de carrocería y fabricante.

TABLE FILE CAR
"REPORT 1 - BY COUNTRY"
PRINT CAR MODEL BODYTYPE
BY COUNTRY
ON TABLE HOLD FORMAT HTMTABLE AS REPORT1
ON TABLE SET STYLE *
TYPE=HEADING,STYLE=BOLD,COLOR=RED,$
ENDSTYLE
END
TABLE FILE CAR
"REPORT 2 - BY BODY TYPE"
PRINT CAR MODEL COUNTRY
BY BODYTYPE
ON TABLE HOLD FORMAT HTMTABLE AS REPORT2
ON TABLE SET STYLE *
TYPE=HEADING,STYLE=BOLD,COLOR=BLUE,$
ENDSTYLE
END
TABLE FILE CAR
"REPORT 3 - BY MANUFACTURER"
PRINT MODEL BODYTYPE COUNTRY
BY CAR
ON TABLE HOLD FORMAT HTMTABLE AS REPORT3
ON TABLE SET STYLE *
TYPE=HEADING,STYLE=BOLD,COLOR=GREEN,$
ENDSTYLE
END
-HTMLFORM BEGIN
!IBI.FIL.REPORT1;
!IBI.FIL.REPORT2;
!IBI.FIL.REPORT3;
-HTMLFORM END

Las siguientes imágenes muestran tres informes que han sido insertados en un único documento HTML:



Ejemplo: Cómo insertar variables en una sola página Web HTML

Este ejemplo genera un informe compuesto por códigos de productos y cantidades, que muestra la hora y fecha actual de las variables de sistema de Dialogue Manager. A continuación se explica la forma en que se combinan los elementos necesarios para mostrar este informe. Los números de la izquierda corresponden a las siguientes notas:

Paso 1 - First.htm

Configure la página Web que va a albergar el informe. La página debe guardarse en un directorio dentro de EDAPATH o APPPATH, para que WebFOCUS pueda encontrarla. El nombre del siguiente archivo es first.htm:

   <HTML>
   <BODY> 
2. Time: 
3. !IBI.FIL.&TOD <BR> 
2. Date: 
3. !IBI.FIL.&DATE <BR>
   <HR SIZE=5> 
4. <!--WEBFOCUS TABLE UPPER--> 
   </BODY>
   </HTML>

Nota: La línea de comentarios HTML debe cerrarse con una etiqueta de cierre de comentario (-->) o un corchete angular de cierre (>), sin ninguna otra etiqueta HTML.

Paso 2 - Amper.fex

Cree su solicitud de informe:

    TABLE FILE GGORDER
    SUM QUANTITY BY PCD
    IF PCD EQ 'B$$$'  
1. ON TABLE HOLD FORMAT HTMTABLE AS UPPER
    END 
5. -RUN 
6. -HTMLFORM first

Paso 3 - First.htm

Cree una página web para iniciar el procedimiento de informe:

<HTML>
<BODY>
<P>
<P>
<A HREF="/ibi_apps/WFServlet?IBIF_ex=amper">Click here.</A>
</BODY>
</HTML>

Después de crear el procedimiento y las dos páginas Web, podrá llamar a la página Web que inicia el procedimiento, desde el navegador. Una vez iniciado el procedimiento se ejecuta el informe:

  1. El comando HOLD extrae la salida del informe a un archivo temporal, desde donde puede enviarse a una página Web.
  2. Los códigos Hora: y Fecha: especifican el texto que aparecerá sobre el informe en la página Web.
  3. WebFOCUS lee los comentarios, que identifican las variables que aparecen en la página Web.
  4. WebFOCUS lee el comentario HTML, que identifica el informe mostrado. El nombre de esta tabla es el nombre asignado en el comando HOLD del procedimiento. En la página Web, WebFOCUS sustituye el informe designado por el código correspondiente.
  5. El comando -RUN ejecuta el informe.
  6. El comando de Dialogue Manager fusiona la salida del informe con el contenido de first.htm, el archivo HTML que contiene su página Web.

Se genera la siguiente página Web:


Principio de página

x
Cómo incluir variables en una página Web HTML

Cómo:

En WebFOCUS, puede usar las variables de Dialogue Manager para insertar valores de variables en una página Web. Esto se lleva a cabo especificando el nombre de la variable con un código de escape WebFOCUS. Puede emplear el valor de una variable como texto en una página Web HTML o como un valor en un campo de entrada de un formulario HTML. Puede incluir una variable creada por ud., o variables del sistema como &DATE (la fecha de hoy) o &TOD (hora del día). Puede haber muchas etiquetas de sustitución de variables en una sola página Web.

Para usar una variable en una página Web creada con los comandos -HTMLFORM, primero debe declarar la variable con -SET o -DEFAULT. Consulte Cómo personalizar un procedimiento con variables para información de uso de la variables.



x
Sintaxis: Cómo Devolver el valor de una variable en una página Web HTML
<!--WEBFOCUS VAR [&]&variable-->

o

!IBI.{AMP|GLB}.[&]&variable;

donde:

AMP

Devuelve el valor de una variable local.

GLB

Devuelve el valor de una variable global.

variable

Es una variable local o global.

Nota: La línea de comentarios HTML debe cerrarse con una etiqueta de cierre de comentario (-->) o un corchete angular de cierre (>), sin ninguna otra etiqueta HTML.



x
Sintaxis: Cómo Devolver la longitud de una variable en una página Web HTML
!IBI.{AML|GLL}.[&]&variable;

donde:

AML

Devuelve la longitud de una variable local.

GLL

Devuelve la longitud de una variable global.



x
Sintaxis: Cómo Usar una variable en una página Web

La sintaxis de la variable local en un campo de entrada de un formulario es

<INPUT TYPE=TEXT NAME=variable     VALUE="!IBI.AMP.variable;">

donde:

variable

Es el nombre de la variable.

Al realizar las sustituciones se reemplaza la totalidad de la cadena, empezando por el signo de exclamación (!) y terminando por el punto y coma (;). No es posible incluir las variables cuyos valores incluyen secuencias de escape internas, en su flujo de comandos.


WebFOCUS