Saving and Retrieving HOLD Files

How to:

Reference:

In WebFOCUS, HOLD files are saved to a temporary directory during processing and deleted after the connection to the server is broken. If you wish to retain these files for later use, you can save the HOLD data source and its associated Master File to a specific location using APP commands.

To report against the HOLD Master File at a later time, you can add the application to your APP path, if it is not already there, or you can use a two-part name (appname/mastername) in the TABLE FILE command.

To report against the saved HOLD data file, you can issue a FILEDEF command that specifies where to find the file before you issue the TABLE FILE command.

Syntax: How to Specify a Storage Location for a HOLD Master File (Windows, UNIX, OpenVMS)

APP MAP appname path_to_directory APP HOLDDATA appname APP HOLDMETA appname

where:

APP MAP
Associates a directory location with an application name.
APP HOLDDATA
Specifies the application name for HOLD data files.
APP HOLDMETA
Specifies the application name for HOLD Master Files.
path_to_directory
Specifies the directory in which to store the files.
appname
Is an application name.

You should add the APP commands to a supported profile so that they will be available to all of your procedures rather than issuing them in every procedure that needs to access the application directory. In addition, you should add the application to your path so that it will be found by your procedures.

Example: Specifying a Storage Location for HOLD Data and Master Files

The following example for WebFOCUS on UNIX illustrates how to create an application named holdapp and store HOLD data files and Master Files in the \ggtmp directory that is mapped to that application.

Place the following commands in any supported profile:

APP MAP holdapp /ggtmp
APP HOLDDATA holdapp
APP HOLDMETA holdapp

The following request creates a HOLD Master file named sales.mas and a HOLD data file named sales.ftm that will be stored in the /ggtmp directory:

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

To issue a TABLE request against the HOLD file, you must first issue a FILEDEF command that points to the HOLD data file. The DDNAME for the FILEDEF is the AS name specified in the HOLD command. If no AS name was specified, the DDNAME is HOLD:

FILEDEF SALES DIR \ggtmp\sales.ftm

You must also make sure that WebFOCUS can find the Master File. One way to do this is to make sure that the application is in your application path. You can add it to the path with the following command:

APP APPENDPATH holdapp

Then you can issue a request against the HOLD file:

TABLE FILE SALES
PRINT *
END

Alternatively, you can issue the TABLE request against the HOLD file using a two-part name (application name and Master File name):

TABLE FILE holdapp/sales
PRINT *
END

Reference: Allocating HOLD Files on z/OS

The HOLD file is dynamically allocated if it is not currently allocated on z/OS. This means the system may delete the file at the end of the session, even if you have not. Since HOLD files are usually deleted, this is a desired default. However, if you want to save the file, we recommend that you allocate the HOLD Master File to the ddname HOLDMAST as a permanent data set, and allocate the HOLD data file to a permanent data set as well. The allocations can be performed within the standard TIBCO WebFOCUS® Reporting Server CLIST or batch JCL or in a profile or procedure. For example, if your procedure had the following command:

ON TABLE HOLD AS SALES

you could use allocations similar to the following:

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

Note that ddname HOLDMAST must not refer to the same PDS referred to by the MASTER and FOCEXEC ddnames.