La función de solicitud automática de ampersands de WebFOCUS le permite crear páginas de inicio que solicitan a los usuarios las variables ampersand necesarias para ejecutar un procedimiento. También puede diseñar la página de inicio que solicita la introducción de variables ampersand.
El aviso automático permite añadir descripciones de los procedimientos y variables, encabezados, valores predeterminados de variables y listas estáticas o dinámicas. Además, puede seleccionar parámetros y ejecutar un informe mientras consulta y modifica las selecciones de sus parámetros. También puede mostrar y ocultar parámetros para ampliar la pantalla según sea necesario.
Incluso puede crear una página de inicio que pida a los usuarios que seleccionen campos y, a continuación, empleen estas selecciones como objetos de los comandos de visualización y clasificación, en la solicitud de informe.
La siguiente imagen muestra una página de inicio que le indica que seleccione valores para los parámetros.
Nota: Los controles de lista del formulario de aviso automático aparecen según el orden en que están codificadas las variables ampersand en el procedimiento (FOCEXEC).
Después de ejecutar el informe, la salida aparece como se muestra en la imagen siguiente.
Desde la página de inicio de aviso automático de ampersands, tiene las siguientes opciones:
Opción |
Descripción |
---|---|
Ejecutar |
Pulse este botón para ejecutar el informe. |
Restablecer |
Pulse este botón para restablecer las selecciones de parámetro. |
Eliminar salida |
Pulse este botón para vaciar el área de salida del informe. |
Ejecutar en ventana nueva |
Seleccione esta casilla para abrir el informe en una nueva ventana de navegador. |
|
Pulse dos veces sobre la barra divisoria para ocultar parámetros en la vista de pantalla completa del informe. Pulse dos veces sobre la barra divisoria, nuevamente, para volver a la vista original de parámetros e informe. |
Es importante tener en cuenta las siguientes consideraciones sobre el aviso automático de ampersands:
TABLE FILE MOVIES HEADING PRINT MOVIES.MOVINFO.TITLE MOVIES.MOVINFO.COPIES BY MOVIES.MOVINFO.RATING BY MOVIES.MOVINFO.CATEGORY WHERE MOVIES.MOVINFO.RATING EQ &RATING.(OR(<General Audience,G>, <Not Rated,NR>,<Parental Guidance,PG>,<PG Over 13,PG13>,
<R Over 8,R>)).Select Favorite &| Desired Rating.;
ON TABLE SET PAGE-NUM OFF ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT HTML ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * UNITS=IN, SQUEEZE=ON, ORIENTATION=PORTRAIT,$ TYPE=REPORT, GRID=OFF, FONT='ARIAL', SIZE=9,$ TYPE=TITLE, STYLE=BOLD,$ TYPE=HEADING, SIZE=12, STYLE=BOLD,$ ENDSTYLE END
Se evalúan todas las variables de Dialogue Manager citadas en los comandos -HTMLFORM BEGIN y -HTMLFORM END, incluso las que se encuentran entre etiquetas de comentario. Si no quiere evaluar ninguna variable, puede especificar la opción NOEVAL (-HTMLFORM BEGIN NOEVAL). Si quiere combinar variables de WebFOCUS (que quiere solicitar, como &COUNTRY) con variables HTML especiales, no use la opción NOEVAL. Asigne un valor por defecto a cada variable o escape el símbolo de ampersand, mediante un carácter de barra vertical (|), para que no se interprete el ampersand 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> <BODY> HELLO &|nbsp &COUNTRY </BODY> </HTML> -HTMLFORM END
Cómo: |
Nota: Los ejemplos en los siguientes temas se han desarrollado en base a ejemplos anteriores; el código que representa el concepto que se está explicando aparece en negrita.
Puede añadir una descripción del procedimiento que proporcione información sobre el formulario o el propósito del procedimiento. El código que añade la descripción debe añadirse antes de la solicitud de informe. Esto resulta útil cuando el procedimiento forma parte de un servicio Web.
-<description>text</description>
donde:
Es la descripción del procedimiento. Si la descripción requiere varias líneas, repita las etiquetas <description> y </description>
Ésta es una descripción del procedimiento. Observe que la etiqueta sólo es visible en el código XML devuelto.
-<description>This procedure reports on Inventory </description>
-<description>by state, storename and product name. </description>
TABLE FILE CENTORD SUM QTY_IN_STOCK BY STATE BY STORENAME BY PRODNAME ON TABLE SUBHEAD "Inventory Report" WHERE STATE EQ '&STATE' WHERE STORENAME EQ '&STORENAME' WHERE PRODNAME EQ '&PRODNAME' END
Cómo: |
Puede añadir un encabezado al formulario que indique al usuario la información que debe introducir. El código que añade el encabezado debe añadirse antes de la solicitud de informe.
Nota: Esta funcionalidad sólo está disponible cuando la plantilla de la página de inicio se ha establecido en autoprompt_simple. Para más información, consulte Cómo personalizar la utilidad de solicitud automática de ampersands.
-<heading> text </heading>
donde:
Es el encabezado que aparecerá en el formulario.
El código siguiente proporciona un aviso con texto para el formulario.
-<description>This procedure reports on Inventory </description> -<description>by state, storename and product name. </description>
-<heading> Please specify a state, storename and product name: </heading>
TABLE FILE CENTORD SUM QTY_IN_STOCK BY STATE BY STORENAME BY PRODNAME ON TABLE SUBHEAD "Inventory Report" WHERE STATE EQ '&STATE' WHERE STORENAME EQ '&STORENAME' WHERE PRODNAME EQ '&PRODNAME' END
Cómo: |
Puede añadir una descripción de una variable que sustituya al nombre de la variable que indica al usuario que introduzca un valor, en el formulario. La descripción se añade al final del nombre de la variable, en la expresión WHERE o IF de la solicitud de informe.
'&variable.description.'
donde:
Es el nombre de la variable, incluido el ampersand (&), cuyo valor se está solicitando.
Es una descripción de la variable que sustituye al nombre de la variable, en el aviso.
Nota: Éstas son las limitaciones de uso para los valores de la descripción:
El ejemplo siguiente presenta un nombre más descriptivo para los campos STATE, STORENAME y PRODNAME, en el formulario. Las descripciones de los campos preceden a los controles de campos, en el formulario de aviso automático.
-<description>This procedure reports on Inventory </description> -<description>by state, storename and product name. </description> -<heading> Please specify a state, storename and product name: </heading> TABLE FILE CENTORD SUM QTY_IN_STOCK BY STATE BY STORENAME BY PRODNAME ON TABLE SUBHEAD "Inventory Report" WHERE STATE EQ '&STATE.2 letters for US State.' WHERE STORENAME EQ '&STORENAME.Store Name.' WHERE PRODNAME EQ '&PRODNAME.Product Name.' END
Cómo: |
Puede establecer un valor predeterminado para la variable. Este valor se utilizará cuando el usuario no haya introducido uno en el informe. El código que especifica un valor predeterminado de variable debe añadirse antes de la solicitud de informe.
-DEFAULT variable=value
donde:
Es la variable, incluido el ampersand, para el que está estableciendo un valor por defecto.
Es el valor predeterminado de la variable.
En el ejemplo siguiente se ha establecido el valor predeterminado NY para el campo STATE. Observe que debe haber un ampersand delante del nombre del campo en el comando -DEFAULT para que la variable ampersand contenga un atributo predeterminado en el formulario.
-<description>This procedure reports on Inventory </description> -<description>by state, storename and product name. </description> -<heading> Please specify a state, storename and product name: </heading>
-DEFAULT &STATE=NY
TABLE FILE CENTORD SUM QTY_IN_STOCK BY STATE BY STORENAME BY PRODNAME ON TABLE SUBHEAD "Inventory Report" WHERE STATE EQ '&STATE.2 letters for US State.' WHERE STORENAME EQ '&STORENAME.Store Name.' WHERE PRODNAME EQ '&PRODNAME.Product Name.' END
Cómo: |
Emplee el comando -DEFAULT para asignar un valor predeterminado a las variables de Dialogue Manager. Estas variables se devuelven en la información descriptiva XML, utilizada para las funciones de aviso de parámetros de WebFOCUS (Aviso automático de ampersands, Utilidad de publicación XML, Compositor HTML y Programación de ReportCaster).
Para inicializar una variable y evitar que sea utilizada con el aviso de parámetros de WebFOCUS, emplee el comando -DEFAULTH. Las variables inicializadas con -DEFAULTH no se utilizan con el aviso de parámetros. Puesto que estas variables no pueden mostrarse con las características de aviso de parámetros, el usuario no puede verlas.
El código que especifica un valor predeterminado de variable debe añadirse antes de la solicitud de informe.
Cómo: |
Puede añadir una lista de selección individual de valores. Los valores de la lista pueden ser estáticos o dinámicos.
'&variable.(value,value2[,value3][,value4]...).[description.]'
donde:
Es la variable, incluido el ampersand (&), para la que está proporcionando una lista de valores.
Son los valores que forman parte de la lista de valores que se pueden seleccionar para las variables.
Es una descripción opcional de la variable. Para más detalles sobre las restricciones, consulte Cómo añadir la descripción de una variable al formulario.
Nota: Los valores estáticos no pueden contener el carácter de coma (,) si se encuentran especificados en la sintaxis de la declaración WHERE, ya que la coma se emplea como carácter delimitador a la hora de especificar valores de visualización. Si uno o varios valores estáticos presentan una coma, colóquelos en un archivo y utilice la funcionalidad de lista dinámica (FIND).
A continuación aparece una lista con valores válidos para el campo STORENAME. El usuario sólo puede seleccionar un valor de la lista.
-<description>This procedure reports on Inventory </description>
-<description>by state, storename and product name. </description>
-<heading> Please specify a state, storename and product name: </heading>
-DEFAULT &STATE=NY
TABLE FILE CENTORD
SUM QTY_IN_STOCK BY STATE BY STORENAME BY PRODNAME
ON TABLE SUBHEAD
"Inventory Report"
WHERE STATE EQ '&STATE.2 letters for US State.'
WHERE STORENAME EQ '&STORENAME.(eMart,TV City,Web Sales).Store Name.'
WHERE PRODNAME EQ '&PRODNAME.Product Name.'
END
'&variable.(FIND return_fieldname [,display_fieldname] IN datasource).[description.]'
donde:
Es la variable, incluido el ampersand (&), para la que está proporcionando una lista de valores.
Es el nombre del campo que contiene los valores posibles de las variables devueltas al FOCEXEC.
Es el nombre del campo que contiene los valores posibles de las variables mostradas en el formulario de aviso automático.
Nota: return_fieldname y display_fieldname pueden ser un campo DEFINE en una MFD (descripción de archivo máster), pero no un campo DEFINE en un procedimiento.
Es el origen de datos que contiene los campos especificados en return_fieldname y display_fieldname. Si los campos residen en un archivo de referencia cruzada perteneciente a un origen de datos usado en un join, utilice el nombre del origen de datos que contiene los campos.
Nota: En las listas dinámicas, el Cliente WF construye la solicitud para obtener los valores, mediante el origen de datos especificado. Todos los comandos de entornos, como los comandos SET, necesarios para obtener los valores del origen de datos especificado, deben emitirse en el perfil del Servidor de WebFOCUS, en el perfil del usuario o en el perfil del Cliente WebFOCUS.
Es una descripción opcional de la variable. Para más detalles sobre las restricciones, consulte Cómo añadir la descripción de una variable al formulario.
La lista siguiente incluye valores válidos para el campo de nombre de producto. La lista se rellena con valores del origen de datos CENTORD. El usuario sólo puede seleccionar un valor de la lista.
-<description>This procedure reports on Inventory </description>
-<description>by state, storename and product number. </description>
-<heading> Please specify a state, storename and product name: </heading>
-DEFAULT &STATE=NY
TABLE FILE CENTORD
SUM QTY_IN_STOCK BY STATE BY STORENAME BY PROD_NUM
ON TABLE SUBHEAD
"Inventory Report"
WHERE STATE EQ '&STATE.2 letters for US State.'
WHERE STORENAME EQ '&STORENAME.(eMart,TV City,Web Sales).Store Name.'
WHERE PROD_NUM EQ '&PROD_NUM.(FIND PROD_NUM,PRODNAME IN CENTORD).Product Name.'
END
Cómo:
Referencia: |
Puede añadir una lista de selección múltiple de valores. Los valores de la lista pueden ser estáticos o dinámicos.
&variable.({AND|OR}(<displayvalue1,value1>, <displayvalue2,value2>,...<displayvalueN,valueN>)).[description.]
donde:
Es la variable, incluido el ampersand (&), para la que está proporcionando una lista de valores.
Son los valores que forman parte de la lista de valores que se pueden seleccionar para las variables.
Son los valores que forman parte de la lista de valores seleccionables de variables, pasados al servidor de informes.
Es una descripción opcional de la variable. Para más detalles sobre las restricciones, consulte Cómo añadir la descripción de una variable al formulario.
Nota: Los valores estáticos no pueden contener el carácter de coma (,) si se encuentran especificados en la sintaxis de la declaración WHERE, ya que la coma se emplea como carácter delimitador a la hora de especificar valores de visualización. Si uno o varios valores estáticos presentan una coma, colóquelos en un archivo y utilice la funcionalidad de lista dinámica (FIND).
A continuación aparece una lista con valores válidos para el campo STORENAME. El usuario puede seleccionar más de un valor de la lista.
-<description>This procedure reports on Inventory </description>
-<description>by state, storename and product name. </description>
-<heading> Please specify a state, storename and product name: </heading>
-DEFAULT &STATE=NY
TABLE FILE CENTORD
SUM QTY_IN_STOCK BY STATE BY STORENAME BY PRODNAME
ON TABLE SUBHEAD
"Inventory Report"
WHERE STATE EQ '&STATE.2 letters for US State.'
WHERE STORENAME EQ &STORENAME.(OR(eMart,TV City,Web Sales)).Store Name.
WHERE PRODNAME EQ '&PRODNAME.Product Name.'
END
&variable.({AND|OR}(FIND return_fieldname [,display_fieldname] IN datasource)).[description.]
donde:
Es la variable, incluido el ampersand (&), para la que está proporcionando una lista de valores.
Es el nombre del campo que contiene los valores posibles de las variables devueltas al FOCEXEC.
Es el nombre del campo que contiene los valores posibles de las variables mostradas en el formulario de aviso automático.
Nota: return_fieldname y display_fieldname pueden ser un campo DEFINE en una MFD (descripción de archivo máster), pero no un campo DEFINE en un procedimiento.
Es el origen de datos que contiene los campos especificados en return_fieldname y display_fieldname. Si los campos residen en un archivo de referencia cruzada perteneciente a un origen de datos usado en un join, utilice el nombre del origen de datos que contiene los campos.
Nota: En las listas dinámicas, el Cliente WF construye la solicitud para obtener los valores, mediante el origen de datos especificado. Todos los comandos de entornos, como los comandos SET, necesarios para obtener los valores del origen de datos especificado, deben emitirse en el perfil del Servidor de WebFOCUS, en el perfil del usuario o en el perfil del Cliente WebFOCUS.
Es una descripción opcional de la variable. Para más detalles sobre las restricciones, consulte Cómo añadir la descripción de una variable al formulario.
A continuación aparece una lista con valores válidos para el campo de estado. La lista se rellena con valores del origen de datos CENTORD. El usuario puede seleccionar más de un valor de la lista.
-<description>This procedure reports on Inventory </description>
-<description>by store code, state and product name. </description>
-<heading> Please specify a storename, state and product name: </heading>
TABLE FILE CENTORD
SUM QTY_IN_STOCK BY STORE_CODE BY STATE BY PRODNAME
ON TABLE SUBHEAD
"Inventory Report"
WHERE STORE_CODE EQ &STORE_CODE.(OR(FIND STORE_CODE,STORENAME
IN CENTORD)).Store Name.
WHERE STATE EQ &STATE.(OR(CA,IL,MA,NY,NJ,FL,TX)).2 letters for US State.
WHERE PRODNAME EQ '&PRODNAME.(FIND PRODNAME IN CENTORD).Product Name.'
END
&variable.(FROM Range1 TO Range2).
donde:
Es la variable numérica, incluido el ampersand (&), para la que está proporcionando una lista de valores.
Es el valor numérico inicial del intervalo de la lista de valores.
Es el valor numérico final del intervalo de la lista de valores.
A continuación aparece una lista de los valores numéricos aceptables para el campo QTY_IN_STOCK. Esta lista se rellena con valores del origen de datos CENTORD, que caen dentro del intervalo.
-<description>This procedure reports on Inventory </description> -<description>by state, storename and product name. </description> -<heading> Please specify a state, storename and product name: </heading> TABLE FILE CENTORD SUM QTY_IN_STOCK BY STATE BY STORENAME BY PRODNAME ON TABLE SUBHEAD "Inventory Report" WHERE QTY_IN_STOCK GT &STOCK.(FROM 5000 TO 10000). END
El ejemplo siguiente es correcto:
FOCEXEC=DRILLDOWN(COUNTRY=&COUNTRY.QUOTEDSTRING OTHER=xxx)
En cambio, el ejemplo siguiente no lo es; los espacios en blanco insertados en el parámetro &COUNTRY darán por terminado el drill-down.
FOCEXEC=DRILLDOWN(COUNTRY=&COUNTRY OTHER=xxx)
Para más información, consulte Cómo crear una cadena estándar, delimitada por comillas
Cuando la opción Ninguna selección se ha seleccionado o codificado de forma manual, dentro de una lista de selección múltiple, el valor del parámetro enviado al Servidor de WebFOCUS es _FOC_NULL, por defecto. A continuación, la capa de descripción del Servidor de WebFOCUS realiza un procesamiento interno de búsqueda en el procedimiento, para eliminar las frases de WebFOCUS (como BY o WHERE) o las expresiones que contienen _FOC_NULL. Después, el procedimiento es pasado al motor central de WebFOCUS para que ejecute la solicitud.
El siguiente ejemplo de WHERE explica cómo seleccionar o codificar manualmente la opción Ninguna selección, que genera el valor _FOC_NULL para las listas dinámicas de selección múltiple:
WHERE CATEGORY EQ &CATEGORY.(OR(FIND CATEGORY IN MOVIES)).CATEGORY. AND DIRECTOR EQ &DIRECTOR.(OR(FIND DIRECTOR IN MOVIES)).DIRECTOR.;
Aunque la opción devuelta para CATEGORY sea Ninguna selección, la prueba de DIRECTOR se procesará de cualquier modo.
El siguiente ejemplo de WHERE explica cómo seleccionar o codificar manualmente la opción Ninguna selección, que genera el valor _FOC_NULL para una lista estática de selección múltiple y otra dinámica:
WHERE COPIES EQ &COPIES.(<No Selection,_FOC_NULL>,<1,1>,<2,2>,<3,3>).COPIES. AND DIRECTOR EQ &DIRECTOR.(OR(FIND DIRECTOR IN MOVIES)).DIRECTOR.;
Cada lista debe estar completamente codificada en una sola línea del procedimiento.
Si está codificando un HEADING, FOOTING, SUBHEAD o SUBFOOT, debe haber, como mínimo, una línea que no incluya parámetro que se puede asignar al valor de _FOC_NULL.
Cuando la opción Ninguna selección se ha seleccionado o codificado de forma manual, dentro de una lista de selección múltiple, el valor del parámetro que puede enviarse al Servidor de WebFOCUS es FOC_NONE. A continuación, la capa de descripción del Servidor de WebFOCUS realiza un procesamiento interno de búsqueda en el procedimiento, para eliminar todas las líneas que no sean de Dialogue Manager (no empiezan por un guión ‘-’) y contengan FOC_NONE. Después, el procedimiento es pasado al motor central de WebFOCUS para que ejecute la solicitud.
Los siguientes ejemplos de WHERE indican cómo seleccionar o codificar manualmente la opción Ninguna selección, que genera el valor de FOC_NONE:
WHERE CATEGORY EQ &CATEGORY.(OR(FIND CATEGORY IN MOVIES)).CATEGORY.;
WHERE COPIES EQ &COPIES.(<No Selection,FOC_NONE>,<1,1>,<2,2>,<3,3>). COPIES.;
Consideraciones de codificación de FOC_NONE:
Cuando ejecuta una solicitud con una lista estática de selección múltiple, el recurso de Aviso automático de ampersands añade la opción Seleccionar todo, dinámicamente, a la lista de valores que, al estar seleccionada, asigna al parámetro todos los valores de la lista estática de selección múltiple. Si ha seleccionado valores individuales y de Seleccionar todo, se ignora el valor de Seleccionar todo.
Cuando Seleccionar todo se encuentra seleccionado, se asigna el valor de FOC_ALL al parámetro. Después, el Recurso de aviso automático de ampersands de WebFOCUS lleva a cabo un procesamiento interno para asignar los valores de la lista de selección al parámetro, separados por el calificador (AND u OR) especificado en la declaración WHERE que está haciendo referencia al parámetro.
El siguiente ejemplo presenta una declaración WHERE que está usando el calificador OR, con una lista estática de selección múltiple para el parámetro &RATING. El parámetro &RATING aparece citado en la declaración WHERE y en HEADING. HEADING muestra el modo en que el valor del parámetro se establece en todos los valores de la lista de selección múltiple, separados por el calificador OR.
TABLE FILE MOVIES HEADING " Ratings selected: " " &RATING " PRINT 'MOVIES.MOVINFO.TITLE' 'MOVIES.MOVINFO.COPIES' BY 'MOVIES.MOVINFO.RATING' BY 'MOVIES.MOVINFO.CATEGORY' HEADING "" FOOTING ""
WHERE MOVIES.MOVINFO.RATING EQ &RATING.(OR(<General Audience,G>,
<Not Rated,NR>,<Parental Guidance,PG>,<PG Over 13,PG13>,
<R Over 18,R>)).Rating.;
ON TABLE SET PAGE-NUM OFF ON TABLE NOTOTAL ON TABLE PCHOLD FORMAT HTML ON TABLE SET HTMLCSS ON ON TABLE SET STYLE * UNITS=IN, SQUEEZE=ON, ORIENTATION=PORTRAIT, $ TYPE=REPORT, GRID=OFF, FONT='ARIAL', SIZE=9, $ TYPE=TITLE, STYLE=BOLD, $ TYPE=HEADING, SIZE=12, STYLE=BOLD, $ ENDSTYLE END
La siguiente imagen muestra el formulario de Aviso automático de ampersands y el informe, con Seleccionar todo seleccionado.
El Cliente WebFOCUS asigna &RATING a la lista de valores, creando y añadiendo la siguiente sintaxis a la solicitud enviada al servidor de informes:
-SET &RATING='''G'' OR ''NR'' OR ''PG'' OR ''PG13'' OR ''R''';
Cómo: |
En las listas estáticas de campos, los nombres de campos y valores de clasificación se especifican en la lista de selección del comando de visualización o clasificación.
cmd &var.(<dsply1[,val1>],<dsply2[,val2>],...<dsplyN[,valN>]).[desc.]
donde:
Es el comando al que se aplicará la lista de campos. Los valores válidos son PRINT, COUNT, SUM, WRITE, ADD, BY y ACROSS.
Es la variable, incluido el ampersand (&), para la que está proporcionando una lista de valores de campos.
Son las entradas que aparecen en una página de inicio. Al seleccionar una entrada, el campo correspondiente queda seleccionado automáticamente.
Son los nombres de campos pasados al servidor de informes. Puede tratarse de nombres de campos cualificados que pueden ser omitidos, si el valor de visualización es idéntico al nombre del campo.
Es una descripción opcional de la variable.
Nota: La totalidad del comando, incluida la descripción, si la hay, debe aparecer en una línea de la solicitud de informe.
La siguiente solicitud, basada en el origen de datos GGSALES, permite que el usuario seleccione una de estas opciones de cada lista al ejecutar el procedimiento:
Nota: Para información sobre la opción Ninguna selección, consulte Procesamiento interno de _FOC_NONE.
TABLE FILE GGSALES HEADING "Sales Report Summary for: " "Fields: &SumFlds" "Sort: &SortBy" "Across: &Acrs" " " SUM &SumFlds.(<Sales,DOLLARS>,<Budget,BUDDOLLARS>,<Units,UNITS>).Sum. BY &SortBy.(<Category,GGSALES.SALES01.CATEGORY>,<PRODUCT>).By. ACROSS &Acrs.(<Area,REGION>,<State,ST>,<None,FOC_NONE>).Across. WHERE REGION NE 'West' ON TABLE SET PAGE NOPAGE ON TABLE PCHOLD FORMAT PDF ON TABLE SET STYLE * TYPE=REPORT, GRID=OFF, FONT=ARIAL,SIZE=10,SQUEEZE=ON,$ TYPE=HEADING, FONT=ARIAL, STYLE=BOLD, JUSTIFY=LEFT,$ TYPE=HEADING, LINE=1, FONT=ARIAL, STYLE=BOLD, JUSTIFY=LEFT,$ TYPE=TITLE, BACKCOLOR=BLACK, COLOR=WHITE,$ TYPE=ACROSSTITLE, BACKCOLOR=LIGHT BLUE, COLOR=BLUE,$ TYPE=ACROSSVALUE, BACKCOLOR=LIGHT GRAY, COLOR=GREEN,$ END
Al ejecutar la solicitud se abre la siguiente página de inicio, donde la selección del campo de clasificación REGION aparece como Área, la selección del campo DOLLARS, como Ventas, la del campo de clasificación CATEGORY y los campos de visualización BUDDOLLARS y UNITS, con un uso mixto de mayúsculas y minúsculas, y el valor de visualización de PRODUCT es idéntico al nombre del campo de clasificación. Sólo se permite una selección de cada lista.
Si selecciona Ventas, Categoría y Ninguno, se genera el informe siguiente:
cmd &var.(cmd(<dsply1[,val1>],<dsply2[,val2>],...<dsplyN[,srtN>])).[desc.]
donde:
Es el comando al que se aplicará la lista de campos. Los valores válidos son BY y ACROSS. Si añade el comando alrededor de la lista de selección, se genera una lista de selección múltiple.
Es la variable, incluido el ampersand (&), para la que está proporcionando una lista de valores de campos.
Son las entradas que aparecen en una página de inicio. Al seleccionar una entrada, el campo de clasificación correspondiente queda seleccionado automáticamente.
Son los nombres de campos pasados al servidor de informes. Puede tratarse de nombres de campos cualificados que pueden ser omitidos, si el valor de visualización es idéntico al nombre del campo.
Es una descripción opcional de la variable.
Nota: La totalidad del comando, incluida la descripción, si la hay, debe aparecer en una línea de la solicitud de informe.
cmd &var.(AND(<dsply1[,val1>],<dsply2[,val2>],...<dsplyN[,srtN>])).[desc.]
donde:
Es el comando al que se aplicará la lista de campos. Los valores válidos son PRINT, COUNT, SUM, WRITE y ADD.
Es la variable, incluido el ampersand (&), para la que está proporcionando una lista de valores de campos.
Es el conector que genera una lista de selección múltiple.
Son las entradas que aparecen en una página de inicio. Al seleccionar una entrada, el campo de clasificación correspondiente queda seleccionado automáticamente.
Son los nombres de campos pasados al servidor de informes. Puede tratarse de nombres de campos cualificados que pueden ser omitidos, si el valor de visualización es idéntico al nombre del campo.
Es una descripción opcional de la variable.
Nota: La totalidad del comando, incluida la descripción, si la hay, debe aparecer en una línea de la solicitud de informe.
La siguiente solicitud, basada en el origen de datos GGSALES, permite que el usuario seleccione una o varias de estas opciones al ejecutar el procedimiento:
TABLE FILE GGSALES HEADING "Sales Report Summary for: " "Fields: &SumFlds" "Sort: &SortBy" "Across: &Acrs" " " SUM &SumFlds.(AND(<Sales,DOLLARS>,<Budget,BUDDOLLARS>,<Units,UNITS>)).Sum. BY &SortBy.(BY(<Category,GGSALES.SALES01.CATEGORY>,<PRODUCT>)).By. ACROSS &Acrs.(ACROSS(<Area,REGION>,<State,ST>,<None,FOC_NONE>)).Across. WHERE REGION NE 'West' ON TABLE SET PAGE NOPAGE ON TABLE PCHOLD FORMAT PDF ON TABLE SET STYLE * TYPE=REPORT, GRID=OFF, FONT=ARIAL,SIZE=10,SQUEEZE=ON,$ TYPE=HEADING, FONT=ARIAL, STYLE=BOLD, JUSTIFY=CENTER,$ TYPE=HEADING, LINE=1, FONT=ARIAL, STYLE=BOLD, JUSTIFY=CENTER,$ TYPE=TITLE, BACKCOLOR=BLACK, COLOR=WHITE,$ TYPE=ACROSSTITLE, BACKCOLOR=LIGHT BLUE, COLOR=BLUE,$ TYPE=ACROSSVALUE, BACKCOLOR=LIGHT GRAY, COLOR = GREEN,$ END
Al ejecutar la solicitud se abre la siguiente página de inicio, donde la selección del campo de clasificación REGION aparece como Área, la selección del campo DOLLARS, como Ventas, la del campo de clasificación CATEGORY y los campos de visualización BUDDOLLARS y UNITS, con un uso mixto de mayúsculas y minúsculas, y el valor de visualización de PRODUCT es idéntico al nombre del campo de clasificación:
Si selecciona Ventas, Unidades, Categoría y Área, se genera el informe siguiente:
En listas dinámicas de campos, emplee el comando FIND en la lista de selección para recuperar los nombres de campos y valores de visualización de un origen de datos FOCUS.
Los ejemplos siguientes presentan tres orígenes de datos utilizados en los ejemplos en que se crearon las listas dinámicas de campos:
El procedimiento siguiente crea el origen de datos FOCUS, llamado GGDETFLD:
APP HOLD IBISAMP DEFINE FILE SYSCOLUM FLDDESC/A20=IF NAME EQ 'DOLLARS' THEN 'Dollars' ELSE IF NAME EQ 'BUDDOLLARS' THEN 'Budget' ELSE IF NAME EQ 'UNITS' THEN 'Units' ELSE 'N/A'; END TABLE FILE SYSCOLUM PRINT FLDDESC BY NAME WHERE TBNAME EQ 'GGSALES' WHERE NAME EQ 'DOLLARS' OR 'BUDDOLLARS' OR 'UNITS' ON TABLE HOLD AS GGDETFLD FORMAT FOCUS END
El procedimiento siguiente crea el origen de datos FOCUS, llamado GGBYFLD:
APP HOLD IBISAMP DEFINE FILE SYSCOLUM FLDDESC/A20=IF NAME EQ 'CATEGORY' THEN 'Category' ELSE IF NAME EQ 'PRODUCT' THEN 'Product' ELSE 'N/A'; END TABLE FILE SYSCOLUM PRINT FLDDESC BY NAME WHERE TBNAME EQ 'GGSALES' WHERE NAME EQ 'CATEGORY' OR 'PRODUCT' ON TABLE HOLD AS GGBYFLD FORMAT FOCUS END
El procedimiento siguiente crea el origen de datos FOCUS, llamado GGACRFLD:
APP HOLD IBISAMP DEFINE FILE SYSCOLUM FLDDESC/A20=IF NAME EQ 'REGION' THEN 'Region' ELSE IF NAME EQ 'ST' THEN 'State' ELSE 'N/A'; END TABLE FILE SYSCOLUM PRINT FLDDESC BY NAME WHERE TBNAME EQ 'GGSALES' WHERE NAME EQ 'REGION' OR 'ST' ON TABLE HOLD AS GGACRFLD FORMAT FOCUS END
cmd &var.(FIND return_fieldname [,display_fieldname] IN datasource).[description.]
donde:
Es el comando al que se aplicará la lista de campos. Los valores válidos son PRINT, COUNT, SUM, WRITE, ADD, BY y ACROSS.
Es la variable, incluido el ampersand (&), para la que está proporcionando una lista de valores de campos.
Es el nombre del campo que contiene los valores posibles de las variables devueltas al FOCEXEC.
Es el nombre del campo que contiene los valores posibles de las variables mostradas en el formulario de aviso automático.
Nota: return_fieldname y display_fieldname pueden ser un campo DEFINE en un archivo máster, pero no un campo DEFINE en un procedimiento.
Es el origen de datos que contiene los campos especificados en return_fieldname y display_fieldname. Si los campos residen en un archivo de referencia cruzada perteneciente a un origen de datos usado en un join, utilice el nombre del origen de datos que contiene los campos.
Nota: En las listas dinámicas, el Cliente WebFOCUS construye la solicitud para obtener los valores, mediante el origen de datos especificado. Todos los comandos de entornos, como los comandos SET, necesarios para obtener los valores del origen de datos especificado, deben emitirse en el perfil del Servidor de WebFOCUS, en el perfil del usuario o en el perfil del Cliente WebFOCUS.
Es una descripción opcional de la variable.
La siguiente solicitud, basada en el origen de datos GGSALES, genera tres listas dinámicas de selección simple mediante la recuperación de nombres de campos de los orígenes de datos FOCUS GGDETFLD, GGBYFLD y GGACRFLD:
TABLE FILE GGSALES HEADING "Sales Report Summary for: " "Fields: &SumFlds" "Sort: &SortBy" "Across: &Acrs" " " SUM &SumFlds.(FIND NAME, FLDDESC IN GGDETFLD).Sum Fields. BY &SortBy.(FIND NAME, FLDDESC IN GGBYFLD).By. ACROSS &Acrs.(FIND NAME, FLDDESC IN GGACRFLD).Across. WHERE REGION NE 'West' ON TABLE SET PAGE NOPAGE ON TABLE PCHOLD FORMAT PDF ON TABLE SET STYLE * TYPE=REPORT, GRID=OFF, FONT=ARIAL,SIZE=10,SQUEEZE=ON,$ TYPE=HEADING, FONT=ARIAL, STYLE=BOLD, JUSTIFY=CENTER,$ TYPE=HEADING, LINE=1, FONT=ARIAL, STYLE=BOLD, JUSTIFY=CENTER,$ TYPE=TITLE, BACKCOLOR=BLACK, COLOR=WHITE,$ TYPE=ACROSSTITLE, BACKCOLOR=LIGHT BLUE, COLOR=BLUE,$ TYPE=ACROSSVALUE, BACKCOLOR=LIGHT GRAY, COLOR = GREEN,$ END
Si ejecuta la solicitud, se abre la siguiente página de inicio con listas de selección simple para los comandos SUM, BY y ACROSS:
Si selecciona Dólares en la lista desplegable Campos de suma, Categoría, en la lista By, y Región, en la lista Across, se genera el informe siguiente:
cmd &var.(cmd(FIND return_fieldname [,display_fieldname] IN datasource)).[description.]
donde:
Es el comando al que se aplicará la lista de campos. Los valores válidos son BY y ACROSS. Si añade el comando alrededor de la lista de selección, se genera una lista de valores de selección múltiple.
Es la variable, incluido el ampersand (&), para la que está proporcionando una lista de valores de campos.
Es el nombre del campo que contiene los valores posibles de las variables devueltas al FOCEXEC.
Es el nombre del campo que contiene los valores posibles de las variables mostradas en el formulario de aviso automático.
Nota: return_fieldname y display_fieldname pueden ser un campo DEFINE en un archivo máster, pero no un campo DEFINE en un procedimiento.
Es el origen de datos que contiene los campos especificados en return_fieldname y display_fieldname. Si los campos residen en un archivo de referencia cruzada perteneciente a un origen de datos usado en un join, utilice el nombre del origen de datos que contiene los campos.
Nota: En las listas dinámicas, el Cliente WebFOCUS construye la solicitud para obtener los valores, mediante el origen de datos especificado. Todos los comandos de entornos, como los comandos SET, necesarios para obtener los valores del origen de datos especificado, deben emitirse en el perfil del Servidor de WebFOCUS, en el perfil del usuario o en el perfil del Cliente WebFOCUS.
Es una descripción opcional de la variable.
cmd &var.(AND(FIND return_fieldname [,display_fieldname] IN datasource)).[description.]
donde:
Es el comando al que se aplicará la lista de campos. Los valores válidos son PRINT, COUNT, SUM, WRITE y ADD.
Es la variable, incluido el ampersand (&), para la que está proporcionando una lista de valores de campos.
Es el conector que genera una lista de selección múltiple.
Es el nombre del campo que contiene los valores posibles de las variables devueltas al FOCEXEC.
Es el nombre del campo que contiene los valores posibles de las variables mostradas en el formulario de aviso automático.
Nota: return_fieldname y display_fieldname pueden ser un campo DEFINE en un archivo máster, pero no un campo DEFINE en un procedimiento.
Es el origen de datos que contiene los campos especificados en return_fieldname y display_fieldname. Si los campos residen en un archivo de referencia cruzada perteneciente a un origen de datos usado en un join, utilice el nombre del origen de datos que contiene los campos.
Nota: En las listas dinámicas, el Cliente WebFOCUS construye la solicitud para obtener los valores, mediante el origen de datos especificado. Todos los comandos de entornos, como los comandos SET, necesarios para obtener los valores del origen de datos especificado, deben emitirse en el perfil del Servidor de WebFOCUS, en el perfil del usuario o en el perfil del Cliente WebFOCUS.
Es una descripción opcional de la variable.
La siguiente solicitud, basada en el origen de datos GGSALES, genera tres listas dinámicas de selección múltiple mediante la recuperación de nombres de campos de los orígenes de datos FOCUS GGDETFLD, GGBYFLD y GGACRFLD:
TABLE FILE GGSALES HEADING "Sales Report Summary for: " "Fields: &SumFlds" "Sort: &SortBy" "Across: &Acrs" " " SUM &SumFlds.(AND(FIND NAME, FLDDESC IN GGDETFLD)).Sum Fields. BY &SortBy.(BY(FIND NAME, FLDDESC IN GGBYFLD)).By. ACROSS &Acrs.(ACROSS(FIND NAME, FLDDESC IN GGACRFLD)).Across. WHERE REGION NE 'West' ON TABLE SET PAGE NOPAGE ON TABLE PCHOLD FORMAT PDF ON TABLE SET STYLE * TYPE=REPORT, GRID=OFF, FONT=ARIAL,SIZE=10,SQUEEZE=ON,$ TYPE=HEADING, FONT=ARIAL, STYLE=BOLD, JUSTIFY=CENTER,$ TYPE=HEADING, LINE=1, FONT=ARIAL, STYLE=BOLD, JUSTIFY=CENTER,$ TYPE=TITLE, BACKCOLOR=BLACK, COLOR=WHITE,$ TYPE=ACROSSTITLE, BACKCOLOR=LIGHT BLUE, COLOR=BLUE,$ TYPE=ACROSSVALUE, BACKCOLOR=LIGHT GRAY, COLOR = GREEN,$ END
Si ejecuta la solicitud, se abre la siguiente página de inicio con listas de selección múltiple para los comandos SUM, BY y ACROSS. Tenga en cuenta que la opción Ninguna selección queda automáticamente añadida a cada lista:
Si selecciona Dólares, Unidades, Categoría y Región, se genera el informe siguiente:
Para personalizar el aspecto y comportamiento de la función de solicitud automática de ampersands, edite el archivo de plantilla de página de inicio que esté utilizando. Todas las plantillas disponibles de página de inicio se encuentran en el directorio ibi\WebFOCUS77\ibi_html\javaassist\ibi\html\describe. La plantilla predefinida es autoprompt_top.css.
Si desea personalizar la bandera, cree un imagen, guárdela en el directorio describe y cambie la propiedad de imagen de fondo, que aparece en negrita en el siguiente código de hoja de estilo en cascada (CSS):
#idBannerDiv {
height:41px;
background-image:url(style/logo_banner_TOP.gif);
background-position:top left;
background-repeat:no-repeat;
margin:0px;
margin-top:0px;
cursor:pointer; }
La opción de selección de distintas plantillas de página de inicio puede establecerse en la Consola de administración WebFOCUS, mediante la selección Solicitud de parámetros, situada bajo Configuraciones de cliente, donde puede establecer el valor IBIF_describe_xsl en una de las opciones de plantilla de página de inicio.
También puede introducir el nombre de la plantilla de página de inicio deseada en un FOCEXEC, usando el código siguiente:
<describe_xsl>template</describe_xsl>
donde:
Está establecido en uno de los siguientes valores de plantilla de página de inicio:
Puede especificar las propiedades del Aviso automático de ampersands directamente en un URL, para ejecutar un informe. Las propiedades configuración del Cliente WebFOCUS que puede especificar para el aviso de parámetros son las siguientes:
Los valores posibles para estas propiedades son:
Cuando se envía una solicitud al Cliente WebFOCUS para que ejecute un informe, el Cliente añade el siguiente parámetro a la solicitud enviada al Servidor de informes WebFOCUS.
WFDESCRIBE=value
donde:
Comunica al Servidor de informes WebFOCUS el nivel requerido para la evaluación del aviso de parámetros.
Es el valor de la propiedad del parámetro de configuración del Cliente WebFOCUS que puede especificarse en el URL enviado al Cliente, para que ejecute la solicitud de informe con la propiedad IBIF_wfdescribe. La propiedad IBIF_wfdescribe se usa en el URL para las solicitudes de autoservicio y las de Managed Reporting.
Puede usar la variable IBIC_server del Cliente WebFOCUS para especificar el nodo de servidor para el informe. Para más información sobre IBIC_server, consulte el manual Seguridad y administración de WebFOCUS.
El siguiente ejemplo presenta un URL, utilizado para ejecutar un procedimiento del Servidor de informes WebFOCUS llamado películas, en el nodo EDASERVE del Servidor de informes, con IBIF_wfdescribe configurado en XMLRUN:
http://hostname[:port]/ibi_apps/WFServlet?IBIF_ex=movies &IBIC_server=EDASERVE&IBIF_wfdescribe=XMLRUN
Nota: Debe evaluar los cambios efectuados en la propiedad de configuración del aviso de parámetros en un entorno de desarrollo o de prueba; la evaluación debe incluir informes y aplicaciones existentes que estén en ejecución.
Para más información sobre IBIF_wfdescribe, consulte la sección Cómo cambiar las propiedades del Cliente WebFOCUS en la consola de administración de WebFOCUS, en el capítulo Detalles de procesamiento central del Cliente WebFOCUS del manual Seguridad y administración de WebFOCUS.
Para más información sobre IBIMR_prompting, consulte Cómo cambiar las propiedades de informes de Managed Reporting en la sección Propiedades de Managed Reporting en la consola de administración de WebFOCUS, parte del capítulo Detalles de procesamiento de Managed Reporting del manual Seguridad y administración de WebFOCUS.
WebFOCUS |