Customizing after installation of IMAGE COPY PLUS


This section describes how to customize the BMC Image Copy utility of the BMC AMI Backup and Recovery for IMS product.

You can set up various levels of customization to suit your needs.

Customization helps you obtain maximum flexibility when processing an Image Copy utility task.

You can use three methods of customization:

  • Global options modules
  • Database-specific options modules (These are actually members in the PDX.)
  • Customization keywords on the control statements in the ICPSYSIN data set

The reasons you select one method of customization over another depend on how your databases and IMS systems are set up.

Example for Image Copy utility

A company has just decided to implement the Image Copy utility. After looking through the internal defaults, a database administrator determines that the installation would require different default values from the ones supplied with the utility. First, the installation name printed on reports must be changed from BMC SOFTWARE, INC., the default, to the actual name of the company. Second, the company is running two different IMS systems. One is a test system, and one is a production system. The database administrator has decided to compress all output image copy data sets in the production system, but leave the image copy data sets expanded in the test system. The only exception is one large database in the test system. The output image copy data sets for this database should also be compressed.

With this example in mind, refer to Deciding which customization method to use for information about selecting a method.

Understanding customization processing

As discussed in the preceding Overview, the utility obtains values for processing databases from various places--internal defaults, options modules, and control statement keywords.

The following steps describe the order in which the utility uses the default values, options modules, and control statement keywords to build a control block that it uses during processing. During this discussion, remember that the function control statements are IC, AIC, OIC, AOIC, CIC, ACIC, IIC, AIIC, and (for the ICP Database Recovery function) REC and AREC.

  1. When the utility begins processing a job, it looks for a GLBL control statement. If it finds a PARMBLK keyword on the GLBL statement, it loads the values for the associated module as the default values.
    • GLBL PARMBLK(ICP@TEST)

      Load the module named ICP@TEST. This might be a global module for your test system.

    • GLBL PARMBLK(ICP@PROD)

      Load the module named ICP@PROD. This might be a global module for your production system.

  2. If the utility does not find a PARMBLK keyword on the GLBL control statement, it looks for a module named ICP@imsi where imsi is your IMSID. The utility uses your IMSID from the RESLIB to create the module name, unless you explicitly specify the IMSID keyword on the GLBL control statement.
    • GLBL IMSID(X023)

      Load the module named ICP@X023. If you have multiple IMS systems and have set up a global options module for each system, this identifies the specific module to use.

  3. If the utility does not find an ICP@imsi module, it looks for a module named ICPPARMS. You would have created this module to be your personal copy of the internal defaults rather than using the defaults supplied with the utility.
  4. If the utility does not find any of the modules discussed in the previous steps, it uses the internal defaults supplied with the utility.
  5. The global default values are now loaded in the control block. Any additional keywords on the GLBL control statement will override the values in the control block.

    The utility uses the values in the control block for each function control statement unless a value is modified as described in the following steps.

  6. When the utility begins processing a function control statement, it first looks for a database-specific options module that corresponds to the database identified by the DBD keyword. It searches the PDX data set specified by the PDX DD statement or the PDX keyword on a GLBL control statement.

    • GLBL PDX(NODE.ICPPDX)

      Use the PDX library from which database-specific options modules are obtained.

    The database-specific module is named with a concatenation of the IMSID and the DBD name. The utility uses the IMSID from the RESLIB to create the module name, unless you have explicitly specified the IMSID keyword on the GLBL control statement. If the utility cannot find a module for the database with the specific IMSID, it searches for one with @@@@, meaning any valid IMSID, in place of the IMSID.

  7. When you explicitly specify a keyword on one of the function control statements, the utility uses the value of that keyword. Any other values assigned to that keyword in the options modules or in the internal defaults are overridden.

    In this example, the utility compresses the image copy of the ABCD123 database during the Image Copy function regardless of any specification in a global or database-specific options module. You have explicitly instructed the utility to compress the image copy data set.

    //ICPSYSIN DD *
      IC    DBD(ABCD123) ICCOMP(Y)
  8. For keyword values not explicitly stated on a function control statement, the utility uses the values for keywords specified on a GROUP control statement and applies these values to all processes for the group. Values specified on a function control statement override values specified on the GROUP control statement.

    In this example, the utility compresses the image copies of the ABCD123 and ABCD234 databases but does not compress the image copies of the ABCD345, ABCD456, and ABCD567 databases. Even though database ABCD345 is part of the GROUP statement specifying ICCOMP(Y), its image copy is not compressed because of the explicit ICCOMP(N) keyword on the function control statement.

    //ICPSYSIN DD *
      GROUP ICCOMP(Y)
      IC    DBD(ABCD123)
      IC    DBD(ABCD234)
      IC    DBD(ABCD345) ICCOMP(N)
      GROUP ICCOMP(N)
      IC    DBD(ABCD456)
      IC    DBD(ABCD567)
  9. For keyword values not explicitly stated on a function control statement, the utility uses the values for keywords specified on a GLBL control statement and applies these values to all processes in the job. Values specified on the GROUP and function control statements override values specified on the GLBL control statement.

    In this example, the utility compresses image copies for all databases except the ABCD345 database:

    //ICPSYSIN DD *
      GLBL  ICCOMP(Y)
      IC    DBD(ABCD123)
      IC    DBD(ABCD234)
      IC    DBD(ABCD345) ICCOMP(N)
      AIC   DBD(ABCD456)
      AIC   DBD(ABCD567)

    In this example, the utility does not compress image copies for the ABCD345, ABCD456, and ABCD567 databases:

    //ICPSYSIN DD *
      GLBL ICCOMP(Y)  GROUP
      IC    DBD(ABCD123)
      IC    DBD(ABCD234)
      IC    DBD(ABCD345) ICCOMP(N)
      GROUP ICCOMP(N)
      IC    DBD(ABCD456)
      IC    DBD(ABCD567)
  10. In these examples, you may have noticed that the image copy for the ABCD345 database is always left uncompressed. Rather than having to remember to explicitly specify ICCOMP(N) for each execution, you might choose to create a database-specific options module. The utility would use the module each time it processed the database.

    Remember that explicitly specifying a keyword on a function, GROUP, or GLBL control statement overrides the value specified with a global or database-specific options module.

Deciding which customization method to use

Before you decide how you might customize the utility, you need to understand how each method works.

You must also realize that the internal default values that are supplied with the utility were selected to be adequate for most customers. After looking through the list of default values, you might choose to use these defaults all of the time and explicitly specify exceptions on the function control statements.

After you have become familiar with the methods described in this section, refer to Understanding customization processingto learn how the utility obtains the values that is uses during processing.

Global options modules

You can set up global options modules to specify the values you want to use for most databases most of the time. The utility uses this module, when it is available, instead of the internal defaults. This module becomes your own personal copy of the internal defaults.

You can create several global options modules, each with a different name, a different set of values, and a different purpose. You can create one for your production system and another for your test system. If you have several IMS systems, you can have different sets of values for each system.

ICPPARMS

Create a module named ICPPARMS to contain your installation’s personal default values.

In the ICPPARMS module, change any values that your entire installation will use all of the time. Many BMC customers find that creating this module is all the customization they need.

Using the example in the Overview (Customizing the Image Copy utility), change the default installation name to reflect your company name. Also, if you are going to activate database compression for all databases in your installation, change the default to COMP(Y).

ICPPARMS is very important when creating database-specific options modules. The utility initializes the ISPF panels with the values you specify in ICPPARMS. When ICPPARMS is not available, the utility initializes the panels with its internal default values.

ICP@imsi

Create modules named ICP@imsi (where imsi reflects different IMSIDs) when you want each of your IMS systems to have different default values.

You might create two ICP@imsi modules: the first one could be named ICP@TEST for your test system, and the other could be named ICP@PROD for your production system.

ICP@xxxx

Create modules named ICP@xxxx (where xxxx is any four-character identifier) when you want to create other modules for other purposes, such as testing various utility functions.

Database-specific options modules

You can set up database-specific options modules.

The utility uses this module when you are performing an image copy or recovery process on the database associated with the module. This type of options module is actually a member of the PDX. A PDX is a special data set used by the BMC Image Copy utility, Change Accumulation utility, and Recovery utility and by selected other BMC Database Utilities products for storing customization options and reports. Details about the PDX can be found in Database Products for IMS Customization Guide.

You can create a different database-specific module for each database in your installation. You can also make these modules IMSID-specific or create one module for each database that will be used regardless of the IMSID. This allows you more control over the processing of each database.

Control statement keywords

For certain jobs, you may want to use a new set of values, so you could specify keywords on any of the ICPSYSIN control statements.

The values for these keywords override the internal defaults and any values specified in the options modules.

Creating global options modules in ICP

The utility uses the global options module, when it is present, to obtain processing specifications for the entire job.

You can create three types of global options modules:

  • ICPPARMS
  • ICP@imsi
  • ICP@xxxx

You can create a global options module using either of two methods:

  • batch
  • ISPF panels

Batch

If your installation does not use ISPF, or if you choose not to use the interface, you must use the batch method to create global options modules.

The ICPPARMS member in the sample library is a prototype for creating global options modules in batch. The keywords in the supplied source module match the system-defined keyword defaults.

You can modify the BMC-defined default values for the keywords in this module. After modifying the keyword values, reassemble and link the global options module using Assembler Level H. Assemble and link-edit the ICPPARMS member using the ICPASML member in the sample library. Modify the JCL to reflect the sample and load libraries for your installation. This global options module will not be used for jobs that are already executing, but it will be used for any jobs using this module that start after you link-edit the module into the library.

ISPF panels

If your installation uses ISPF, BMC recommends that you install the ISPF interface panels and use them to create your global options modules.

The panels provide a quick and easy way to set up your global options.

You can create the ICPPARMS, ICP@imsi, ICP@xxxx, and global options modules with the ISPF interface.

To build global options modules using the online ISPF interface:

  1. Access the Image Copy Utility primary menu. For more information, see Using-the-ISPF-interface.
  2. Type 3 in the Selection field and press Enter. The Global Options panel is displayed.
  3. The value 1 is currently displayed in the Selection field. Do not change this value. Press Return until the cursor is in the Options suffix field.
  4. Type PARMS or any four-character options module suffix in the Options suffix field. The actual name assigned to the module is ICPPARMS or ICP@xxxx (xxxx is the four characters typed in the field). Press Enter. The PDX / Title / DBRC Options panel is displayed.
  5. Change any or all values to suit the needs of your installation. Remember that these fields relate to the control statement keywords. For more information about keywords, see ICPSYSIN-keywords. Press Enter to move to the next panel.There are 14 panels in the Global Options series of panels. Continue to alter the values in the fields and press Enter until the Global Options panel is displayed.
  6. Press F3, or the key designated as your END key. The Image Copy Utility primary menu is displayed. A message is displayed in the upper right corner informing you that the module has been saved.

Creating database-specific options modules

The utility uses database-specific options modules, when they are present, to obtain processing specifications for a database. You can create these members with the ISPF interface only.

To create a database-specific options member in the PDX

  1. Access the Image Copy Utility primary menu. For more information, see Using-the-ISPF-interface.
  2. Type 2 in the Selection field and press Enter. The Database Selection List panel is displayed.
  3. The DBD names listed on this panel come from the DBDLIB. Type S in the S field next to the database for which you want to create a database-specific module and press Enter. The Database Specific Options panel is displayed.
  4. The value 1 is currently displayed in the Selection field. Do not change this value. Press Enter. The Database I/O Options panel is displayed.
  5. There are eight panels in the Database Specific Options series of panels. These panels are initialized with the values you specified for ICPPARMS, if available, or with the product internal default values.Change any or all values to suit the needs of your installation. Remember that these fields relate to the control statement keywords. For more information about keywords, see ICPSYSIN-keywords. Press Enter to move to the next panel.

    Continue to alter the values in the fields and press Enter until the Database Specific Options panel is displayed.

  6. Press F3, or the key designated as your END key. The Image Copy Utility primary menu is displayed. A message is displayed in the upper right corner informing you that the member has been saved.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*