Link User IDs to the Production Disk

End users must access the FOCUS production disk in order to execute FOCUS. Recall that the production disk contains executable FOCUS modules, files of error messages, useful FOCEXECs, and also the CMS EXEC named FOCUS, through which FOCUS must be entered.

The link and access to this disk are routine CP/CMS functions, and FOCUS has no special requirements in this area, but you should make it easy and transparent to your users. The link must be READ-only and it should not require a READ password.

The required CP LINK command can be placed in each user's VM directory, in which case it becomes effective immediately after the logon, or it can be issued from each user's PROFILE EXEC. In either of these two cases the PROFILE EXEC should also issue the associated CMS ACCESS command.

If you want to give users access to several FOCUS releases, use the method outlined above to access the default release, and create special EXECs on the CMS S or Y disks to access all other releases. For example, you can use the following sample if you do not already have a directory accessed as F:

/* Sample exec to access FOCUS as "F" disk.                          */
/* This sample assumes FOCUS 73 is defined on the FOCUS73 191 and    */
/* FOCUS 76 is defined on the FOCUS76 191 mdisk.                     */
/* The default version will be FOCUS 73 and be accessed as "F".      */
/* Syntax:                                                           */
/* EXEC XFOCUS some-focus-options / 73     to link to the 73 version */
/* EXEC XFOCUS some-focus-options / 76     to link to the 76 version */
Address 'COMMAND'
Trace 'N'
Arg parms '/' version .
If version = ' '                        /* default version of FOCUS */
Then version = '73'
Select
When version = '73'
Then focmdisk = 'FOCUS73 191'                    /* userid and mdisk */
When version = '76'
Then focmdisk = 'FOCUS76 191'
Otherwise
     Do
       Say "Version" version "is unknown."        /* invalid version */
       Exit 28
     End
End /* select */
'PIPE COMMAND QUERY ACCESSED F | DROP 1 | VAR DISKF'
Parse Value diskf With . . . mdaddr direntry .
'EXEC VMLINK' focmdisk '<* F> ( NOTYPE'
'EXEC FOCUS' parms
exitrc = rc
If Left(mdaddr,3) = 'DIR'
Then 'PIPE COMMAND ACCESS' direntry 'F | HOLE'
Else 'PIPE COMMAND ACCESS' mdaddr 'F | HOLE'
Exit exitrc


Information Builders