z/OS DFSMS OAM Planning, Installation, and Storage Administration Guide for Object Support
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


CBRHSG

z/OS DFSMS OAM Planning, Installation, and Storage Administration Guide for Object Support
SC23-6866-00

SAMPLIB member CBRHSG, as shown here, provides a storage group ACS routines for OAM objects.
/*********************************************************************/
/*                                                                   */
/* $SEG(CBRHSG) COMP(OSMC) PROD(OAM):                                */
/*                                                                   */
/* OAM Sample Storage Group ACS Routine                              */
/*                                                                   */
/* FUNCTION: SUPPLY A STORAGE GROUP FOR OAM OBJECTS                  */
/*                                                                   */
/* OPERATION: Select a storage group based upon the collection name  */
/*            specified                                              */
/*                                                                   */
/* NOTES:     In this implementation, the collection name is used as */
/*            the basis for determining whether explicit values will */
/*            be considered. This approach and all of the processing */
/*            indicated below is one of many differing possibilities */
/*            and is only for purposes of illustration to demonstrate*/
/*            the types of processing that can be accomplished in an */
/*            ACS routine. Actual implementations will vary.         */
/*                                                                   */
/* ASSUMPTIONS:                                                      */
/*   Collection name format                                          */
/*     CLLCT0mn                                                      */
/*       where m = 0 or 1 (0 indicates that explicit values will be  */
/*                         ignored, 1 indicates that explicit values */
/*                         are considered in some cases and may      */
/*                         result in an override)                    */
/*       where n = 0 - 9                                             */
/*   Valid storage groups:                                           */
/*     SGROUP00 - SGROUP09                                           */
/*                                                                   */
/*   CHANGE ACTIVITY:                                                */
/*     $L0=JDP3227 320 890601 TUCKSG: Initial Release                */
/*     $L1=JDP3331 331 910614 TUCKSG: Added sample definitions       */
/*                                                                   */
/*********************************************************************/
/*      S T O R A G E    G R O U P    D E F I N I T I O N S          */
/*                                                                   */
/*Relevant                                                           */
/*Fields    SGROUP00 SGROUP01 SGROUP02 SGROUP03 SGROUP04 SGROUP05    */
/*--------- -------- -------- -------- -------- -------- --------    */
/*SG                                                                 */
/*TYPE       OBJECT   OBJECT   OBJECT   OBJECT   OBJECT   OBJECT     */
/*                                                                   */
/*QUALIFIER  GROUP00  GROUP01  GROUP02  GROUP03  GROUP04  GROUP05    */
/*                                                                   */
/*CYCLE                                                              */
/*START        00       01       02       03       04       05       */
/*                                                                   */
/*CYCLE                                                              */
/*END          03       04       05       06       07       08       */
/*                                                                   */
/*LIBRARY                                                            */
/*NAMES       LIB1     LIB1     LIB1     LIB1     LIB1     LIB1      */
/*                              LIB2     LIB3     LIB2     LIB2      */
/*                                                LIB3     LIB3      */
/*                                                                   */
/*VOLUME                                                             */
/*FULL         32       32       32       32       32       32       */
/*                                                                   */
/*DRIVE                                                              */
/*START       099      099      099      099      099      099       */
/*                                                                   */
/*WRITE                                                              */
/*ERROR       YES      YES      YES      YES      YES      YES       */
/*                                                                   */
/*                                                                   */
/*                                                                   */
/*Relevant                                                           */
/*Fields    SGROUP06 SGROUP07 SGROUP08 SGROUP09                      */
/*--------- -------- -------- -------- --------                      */
/*SG                                                                 */
/*TYPE       OBJECT   OBJECT   OBJECT   OBJECT                       */
/*                                                                   */
/*                                                                   */
/*QUALIFIER  GROUP06  GROUP07  GROUP08  GROUP09                      */
/*                                                                   */
/*CYCLE                                                              */
/*START        06       07       08       09                         */
/*                                                                   */
/*CYCLE                                                              */
/*END          09       10       11       12                         */
/*                                                                   */
/*LIBRARY                                                            */
/*NAMES       LIB1     LIB1     LIB1     LIB1                        */
/*            LIB2     LIB2     LIB2     LIB2                        */
/*            LIB3     LIB3     LIB3     LIB3                        */
/*                                                                   */
/*VOLUME                                                             */
/*FULL         32       32       32       32                         */
/*                                                                   */
/*DRIVE                                                              */
/*START       099      099      099      099                         */
/*                                                                   */
/*WRITE                                                              */
/*ERROR       YES      YES      YES      YES                         */
/*                                                                   */
/*********************************************************************/

 PROC STORGRP

 FILTLIST DSN_NAMES INCLUDE(CLLCT0%%)

 IF &DSN = &DSN_NAMES THEN             /* If the first 6 characters of
                                          the collection name are
                                          valid                      */
   IF &DSN ¬= ' ' THEN                 /* If the collection name is
                                          not blank (this test will
                                          always pass, but allows for
                                          the apparent assignment of
                                          the 'POOL' storage group
                                          which is a requirement of
                                          a storage group ACS
                                          routine)                   */
/*********************************************************************/
/* Map the collection name to a storage group, where the last digit  */
/* in the collection name corresponds to the last digit of the       */
/* storage group.                                                    */
/*********************************************************************/
     SELECT
     WHEN (&DSN = 'CLLCT000' | &DSN = 'CLLCT010')
       SET &STORGRP = 'SGROUP00'
     WHEN (&DSN = 'CLLCT001' | &DSN = 'CLLCT011')
       SET &STORGRP = 'SGROUP01'
     WHEN (&DSN = 'CLLCT002' | &DSN = 'CLLCT012')
       SET &STORGRP = 'SGROUP02'
     WHEN (&DSN = 'CLLCT003' | &DSN = 'CLLCT013')
       SET &STORGRP = 'SGROUP03'
     WHEN (&DSN = 'CLLCT004' | &DSN = 'CLLCT014')
       SET &STORGRP = 'SGROUP04'
     WHEN (&DSN = 'CLLCT005' | &DSN = 'CLLCT015')
       SET &STORGRP = 'SGROUP05'
     WHEN (&DSN = 'CLLCT006' | &DSN = 'CLLCT016')
       SET &STORGRP = 'SGROUP06'
     WHEN (&DSN = 'CLLCT007' | &DSN = 'CLLCT017')
       SET &STORGRP = 'SGROUP07'
     WHEN (&DSN = 'CLLCT008' | &DSN = 'CLLCT018')
       SET &STORGRP = 'SGROUP08'
     WHEN (&DSN = 'CLLCT009' | &DSN = 'CLLCT019')
       SET &STORGRP = 'SGROUP09'
     OTHERWISE
       EXIT CODE(30)
     END
   ELSE
     DO
       SET &STORGRP = 'POOL'
       EXIT CODE(31)
     END
 ELSE
   EXIT CODE(32)
 END

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014