Running and Configuring the FOCUS Database and FOCUS Database Server

The server supports its own internal database know as a FOCUS Database, and also includes its own FOCUS Database Server, also called a Sink Machine, for multi-user use. Sites running z/OS have the option of using the integrated FOCUS Database Server or keeping their FOCUS files on a legacy FOCUS Database Server, which runs as a separate batch job.

In many simple cases, syntax, such as ON TABLE HOLD AS MYAPP/MYDATA FORMAT FOCUS, will generate all that is needed for proper initial creation internally. However, more precise creations require a USE statement. On z/OS, a DYNAM or a JCL DD is also required, and the USE syntax will vary if a legacy database server is in use.

The general syntax of the USE statement is:

USE
XXX [NEW]
ZZZ [ON server]
XXX01 AS XXX  [ON server] READ
XXX02 AS XXX [ON server] READ
{path}AAA.foc AS AAA [ON server]
{path}BBB.foc AS BBB NEW
{app}/CCC AS CCC [ON server]
{app}/AAA AS AAA NEW
END

The AS phrase effectively allows you to access a file under an alternate name, with a different Master File or synonym, but it also allows you to concatenate the access of data partitioned as separate files. The AS phrase is also required syntax for path and app use. Syntax using full-path, native file names is only applicable to non-z/OS platforms (z/OS uses DYNAMs or DD names to point at specific datasets).

The NEW parameter indicates that the file is being specified for creation purposes (CREATE FILE). Creates may not be done on a database server. They must be done independent of the server and then placed under server access.

The ON phrase indicates the use of a database server. On z/OS, the choices for server names are FOCSU01 (server integrated) or FOCSBS (FOCUS legacy). All other platforms use the server name FOCSU01. The FOCSU01 node is a pre-configured and reserved name for the integrated FOCUS Database Server and may not be used for any other purposes. The server communication file (ODIN), can be configured to support additional FOCUS Database Server nodes and/or have additional nodes that point to the nodes of FOCUS Database servers configured under other servers.

When using an AS phrase in conjunction with an ON phrase for files where the physical name (not including path or extension) and the AS name do not match, the READ parameter is required to prevent an unintended opening for write.

Important: On z/OS, a single file cannot be accessed by both a legacy and an integrated FOCUS Database Server. You must select one or the other to manage access or you will encounter queue conflicts.


Top of page

Example: Using the Integrated FOCUS Database Server From a Global Server Profile (suprof.prf or edasprof.prf)

Using the Web Console, edit either suprof.prf (preferred) or edasprof.prf (alternative). On z/OS, add DYNAM ALLOC allocations and USE statements. On other platforms, only add USE statements.

For example, use the following syntax to enable the FOCUS Database Server to control access to the CAR data source.

On z/OS:

DYNAM ALLOC FI CAR DA <dsname> SHR REU
USE
CAR ON FOCSU01
END

On other platforms:

USE
CAR ON FOCSU01
END

Top of page

Example: Using the Integrated FOCUS Database Server With a JCL Statement (z/OS Only)

IRUNJCL JCL allocation

Add JCL statements for the FOCUS files to be managed, for example:

//CAR        DD DISP=SHR,DSN=<dsname>

The following sample USE command enables the FOCUS Database Server to control access to the CAR data source:

USE 
CAR ON FOCSU01
END

Top of page

Example: Using the Integrated FOCUS Database Server From Other Profiles or in a Procedure (FOCEXEC)

The syntax is similar when used in a profile, but on z/OS, the DYNAM uses the PERM option and is equivalent to a JCL allocation using IRUNJCL JCL.

For example, use the following syntax to enable the FOCUS Database Server to control access to the CAR data source:

On z/OS:

DYNAM ALLOC FI CAR DA <dsname> SHR PERM
USE
CAR ON FOCSU01
END

On other platforms:

USE
CAR ON FOCSU01
END

Top of page

Example: Using the Legacy FOCUS Database Server (Separated Batch Job, z/OS Only)

The following sample code identifies a legacy FOCUS Database Server using the odin.cfg node block FOCSBS:

USE
CAR ON FOCSBS
END

This sample node block resides in odin.cfg and can be constructed using the Web Console:

NODE=FOCSBS <==== USS server (odin.cfg file)
BEGIN
   SUBSYS = xyzw <==== optional parameter to specify IBI subsystem name
                       (not needed if you are using the name IBIS)
   PROTOCOL=SBS
   CLASS=SUCLIENT
   PORT=X.Y.Z <====== communications dataset
END

iWay Software