Cómo guardar y recuperar archivos HOLD

Cómo:

Referencia:

En WebFOCUS, los archivos HOLD se guardan en un directorio temporal mientras son procesados y se borran cuando se interrumpe la conexión con el servidor. Si desea retener estos archivos para usarlos en otro momento, puede guardar el origen de datos HOLD y su archivo máster asociado en un lugar específico, mediante comandos APP.

Para informar en base a un archivo máster de HOLD más adelante, puede añadir la aplicación a sus ruta APP, si no lo está ya, o puede emplear un nombre de dos partes (appname/mastername) en el comando TABLE FILE.

Para informar en base al archivo de datos HOLD guardado, puede emitir un comando FILEDEF que especifica donde encontrar el archivo, antes de emitir el comando TABLE FILE.

Para ver una explicación, vaya a Cómo especificar una ubicación de almacenamiento para archivos de datos y máster de HOLD


Principio de página

x
Sintaxis: Cómo Especificar una ubicación de almacenamiento para un archivo máster HOLD (Windows, UNIX, OpenVMS)
APP MAP appname path_to_directory APP HOLDDATA appname APP HOLDMETA appname

donde:

APP MAP
Asocia una ubicación de directorio al nombre de una aplicación.
APP HOLDDATA
Especifica el nombre de la aplicación para archivos de datos HOLD.
APP HOLDMETA
Especifica el nombre de la aplicación para archivos máster de HOLD.
path_to_directory
Especifica el directorio en que se van a guardar estos archivos.
appname
Es el nombre de una aplicación.

Debe añadir los comandos APP a un perfil admitido para que queden disponibles a todos los procedimientos, en lugar de emitirlos en cada procedimiento que necesite acceso al directorio de aplicación. Además, debe añadir la aplicación a su ruta para que la encuentren sus procedimientos.



Ejemplo: Cómo especificar una ubicación de almacenamiento para archivos de datos y máster de HOLD

El siguiente ejemplo para WebFOCUS en UNIX explica cómo crear una aplicación llamada holdapp y guardar archivos de datos y archivos máster de HOLD, en el directorio \ggtmp asignado a la aplicación.

Coloque los comandos siguientes en cualquier perfil admitido:

APP MAP holdapp /ggtmp
APP HOLDDATA holdapp
APP HOLDMETA holdapp

La siguiente solicitud crea un archivo máster de HOLD llamado sales.mas y un archivo de datos de HOLD, sales.ftm, que quedan almacenados en el directorio /ggtmp:

TABLE FILE GGSALES
PRINT SEQ_NO CATEGORY PRODUCT
ON TABLE HOLD AS SALES
END

Para emitir una solicitud TABLE basada en el archivo HOLD, primero debe emitir un comando FILEDEF que apunte al archivo de datos de HOLD. El DDNAME de FILEDEF es el nombre AS especificado en el comando HOLD. Si no se ha especificado un nombre AS, el DDNAME es HOLD:

FILEDEF SALES DIR \ggtmp\sales.ftm

También debe asegurarse de que WebFOCUS pueda encontrar el archivo máster. Para ello, compruebe que la aplicación se encuentra en la ruta de aplicación. Puede añadirla a la ruta mediante este comando:

APP APPENDPATH holdapp

A continuación, emita una solicitud basada en el archivo HOLD:

TABLE FILE SALES
PRINT *
END

Opcionalmente, puede emitir la solicitud TABLE basada en el archivo HOLD utilizando un nombre de dos partes (nombre de aplicación y nombre de archivo máster):

TABLE FILE holdapp/sales
PRINT *
END


Principio de página

x
Referencia: Cómo asignar archivos HOLD en z/OS

El archivo HOLD queda asignado automáticamente, si no lo está ya en z/OS. Esto significa que el sistema podría borrar por sí mismo el archivo al final de la sesión. Puesto que los archivos HOLD suelen borrarse, ésta es la opción predeterminada deseada. Sin embargo, si desea guardar el archivo, le recomendamos que asigne el archivo máster de HOLD al ddname HOLDMAST como un conjunto de datos permanente y que también asigne el archivo de datos de HOLD a un conjunto de datos permanente. Las asignaciones pueden llevarse a cabo desde CLIST o JCL por lotes del servidor de informes estándar o en un perfil o procedimiento. Por ejemplo, si su procedimiento incluía el comando siguiente:

ON TABLE HOLD AS SALES

podría usar asignaciones como éstas:

ALLOC F(HOLDMAST)  DA('qualif.HOLDMAST.DATA') SHR REUSE
ALLOC F(SALES)  DA('qualif.SALES.DATA') SHR REUSE

Tenga en cuenta que ddname HOLDMAST no debe referirse al mismo PDS a que se han referido los ddnames MÁSTER y FOCEXEC.


WebFOCUS