Model IDs

Model IDs let you specify a set of utilities and generate Batch Processor statements for those utilities. (Model JCL members, such as member MJBPMFL in hlq.CDBAMDL, used by the Batch Processor, are not included in model IDs.) Multiple model IDs can exist for a single site. Each model ID also contains replacement values for any user-defined symbolic variables.
carcmdb219
Model IDs let you specify a set of utilities and generate Batch Processor statements for those utilities. (Model JCL members, such as member MJBPMFL in 
hlq.
CDBAMDL, used by the Batch Processor, are not included in model IDs.) Multiple model IDs can exist for a single site. Each model ID also contains replacement values for any user-defined symbolic variables.
@DEFAULT is the default model ID. This model ID works without changes and can be used as a template for new model IDs. A list of utility names referenced by the @DEFAULT model ID is provided.
 We recommend that you keep an unchanged version of the @DEFAULT model for every release with SHARE OPTION Y so it cannot be modified. You can compare this version to the previous release version to identify changes that have been made. If you have a previously customized version of this model that you want to maintain, you can then apply the differences to the customized model to bring it up to date with the new release.
 
 
2
 
2
 
 
Identify @DEFAULT Model Changes
If you upgrade to a new release and have a previously customized version of the @DEFAULT model that you want to maintain, you can use the following process to identify changes that have been made to the @DEFAULT model in the new release and apply the differences to your customized model to bring it up to date with the new release without manually comparing every utility in the new model.
This process assumes you have executed the RCM Load and Customize Model Services Db2 catalog customization task during post-install customization to load and refresh the model services table for the new release.
The following steps describe how to identify changes between the new and previous release's @DEFAULT model:
  1. Always keep an unchanged version of the @DEFAULT model for every release you install with SHARE OPTION Y so it cannot be modified.
  2. Use the SYMBOLS command in the @DEFAULT model from the new release to generate a display of all symbolic variables and sample syntax for every utility in the model.
  3. Use the QFILE command to write the SYMBOLS display to a data set.
  4. Use the SYMBOLS command in the @DEFAULT model from the previous release and use the QFILE command to write the SYMBOLS display to a second data set.
  5. Do an ISPF 3.13 SuperCE comparing the QFILES data sets to identify differences between the new and previous release @DEFAULT models.
  6. Apply the differences to your customized model to bring it up to date with the new release.
Maintain Model IDs
You can maintain (browse, template, update, and delete) model IDs. You can then create and manage the individual utility definitions within a specific model ID, including their text and symbols to dynamically generate appropriate statements for different tasks and situations during analysis based on changeable criteria such as the data set size, part numbers, and so on.
You can also import model entries into existing models. 
 
Follow these steps:
 
  1. Select Model Services from the Profile menu in the product and press Enter.
    The CA General Model Services panel appears. Filter the results using the DB2 SSID, Model ID, and Creator fields.
  2. Select a model ID for processing using the following line commands:
    •  
      B (browse)
      Browse the utility definitions for the selected model. Note that only the S (show symbols) and B (browse) commands are valid.
    •  
      T (template)
      Create a model ID definition using the selected model as a template. You must specify a new name and description.
    •  
      U (update)
      Update the selected model ID definition.
    •  
      D (delete)
      Delete the selected model ID definition. You can only delete model IDs that you created or for which you have a shared option value of U.
    Press Enter.
    The CA General Model Utilities panel appears unless you selected option D (delete). This panel is used to create and manage the individual utility definitions within a specific model ID. This panel also shows whether the model utility contains symbolic variables and if so, what type, the utility name, the object type, a description of the utility, the source to use for space statistics (like RUNSTATS), the model ID creator ID, and last update date and time. If the utility is enabled (activated), a Y appears in the SYM column. This value is N when the utility is disabled (excluded).
  3. Use the following commands to manage the model ID definition and manage the utilities that are associated with the model ID definition:
    • Primary commands:
      •  
        HEADER
        Toggles the display of the top portion of the panel.
      •  
        SYMBOLS
        Lists the symbolics for all utilities on the CA General Model Symbols panel. From this panel, you can view the replacement values for the symbolic variables that are in the current model.
      •  
        IMPORT
        Imports utility definitions from another model. The CA Model Services Import panel displays. From this panel, you can select a model from which to import one or more utility definitions (including its symbols and text) into your current model. See Import One or More Utilities for more information.
    • Line commands:
       When browsing a model ID, only the S (symbols) and B (browse) commands are valid.
      • S (symbols)
        Displays the CA General Model Symbols panel for this utility definition. You can view and maintain (insert, repeat, and delete) the replacement values for the symbolic variables that are in the current model utility.
      • B (browse)
        Displays the utility definition text for browse.
      • E (edit)
        Displays the utility definition text for edit. This command is only valid for the model utilities that reside in the user library.
      • I (insert)
        Insert a blank (new) utility definition. Use this command to add your own utility definition to the model ID.
      • R (repeat)
        Repeats the selected utility definition including the object type, text, and symbols. Use this command to create a new utility definition based on a current definition. You must specify the name, description, and size values.
      • D (delete)
        Deletes the user-defined utility definition from the model ID. This command does not delete the actual utility and is not valid for utility definitions that have been defined by 
        Broadcom
        .
      • X (exclude or include)
        Excludes or includes this utility definition. This command acts as a toggle to activate or deactivate the model utility. When a utility definition is excluded (X), it will not be used during analysis to generate utility jobs.
Including and Excluding Utilities From a Model
The General Model Utilities screen can be used to include or exclude any utility. Your selections here determine which utilities are used during processing.
Selecting Load and Unload Utilities
The following standard built-in utilities are grouped together:
  • Regular unloads:
    • FUNLD (CA Fast Unload)
    • IBMULD (IBM UNLOAD table)
    • UNLOAD (Unload table)
  • Recovery unloads:
    • FUNLD_R (CA Fast Unload – Recovery)
    • IBMULD_R (IBM UNLOAD table – Recovery)
    • UNLOAD_R (Unload table – Recovery)
  • Regular loads:
    • FLOAD (CA Fast Load)
    • LOAD (IBM LOAD table)
  • Recovery loads:
    • FLOAD_R (CA Fast Load – Recovery)
    • LOAD_R (IBM LOAD table – Recovery)
Within each group, only one utility can be included (or active). Also, each group must have an active utility at all times. Model Services ensures that each group always has an active utility by automatically including and excluding utilities for you as you make your selections. For example, if you include FUNLD, then UNLOAD and IBMULD are automatically excluded.
For a detailed description of how the load and unload utilities are toggled between included and excluded, press the Help key (F1) on the CA General Model Utilities panel to view the online help, and then select the tutorial option. For example, IBM UNLOAD can be coupled with an IBM LOAD or a CA Fast Load for data load operations simply by switching the load utilities using the X line command in the model. 
 You cannot use the following utilities together:
  •  FLOAD and UNLOAD
  •  FLOAD_R and UNLOAD_R
Selecting Both CA and IBM Utilities
Typically you would only include one version of a utility in your model. For example, you might include the RREORG utility (for CA Rapid Reorg) and exclude the REORG utility (for IBM REORG). However, the product interface does allow you to include both. When both the CA and IBM versions of a utility are included in a model, the CA utility is used during processing.
  • If RREORG and REORG are included, RREORG is used.
  • If QCOPY and COPY are included, QCOPY is used.
  • If QCOPY_R and COPY_R are included, QCOPY_R is used.
  • If FCHECK and CHECK are included, FCHECK is used.
  • If FRECIXAL and REXICALL are included, FREXICAL is used.
  • If FRECOVIX and RECOVIX are included, FRECOVIX is used.
Selecting Multiple Reorg Utilities
The General Model Services screen provides many reorganization utilities to choose from. You can include or exclude any combination of these utilities. If you include multiple reorg utilities, the utility that is selected for processing is determined by which utilities have been included and what type of reorganization is needed.
When an index reorganization is generated and multiple reorg utilities are included, the following sequence determines which utility to use:
  • CA Rapid Reorg® for DB2 for z/OS
     if an index (RREORGI)
  • IBM REORG of an index (REORGI)
  •  
    CA Rapid Reorg® for DB2 for z/OS
     (RREORG)
  • IBM REORG (REORG)
When a tablespace reorganization is generated and multiple reorg utilities are included, the following sequence determines which utility to use:
  •  
    CA Rapid Reorg® for DB2 for z/OS
     (RREORG)
  • IBM REORG (REORG)
If all four reorg utilities are excluded, the analysis completes successfully but no reorg statements are generated.
Control Statement Customization
The utility control statements are basic default utility models. You can customize the models (for CA or other vendors' utilities) to create your site's standards.
For example, you can make a change to the SORTWK allocation for IBM LOAD processing. The following methods are available for allocating SORTWKs:
 For information about the IBM utility syntax, see the IBM 
DB2 Command and Utility Reference
. For information about CA utility syntax, see the utility user guides.
If you customize utility models, keep the following in mind when changing symbolics:
  • You must template and create your own model. Only the owner of @DEFAULT can update this model ID. The @DEFAULT model ID also gets reinstalled with each new release, and any changes are lost. At analysis time, you specify that you want to use your model ID.
  • You must ensure that symbolic expansion does not result in text overflow. For example, you might have the following statement:
    .ALLOC FI(SYSREC01) DA('%DSNAME') SHR DELETE
    Symbolic expansion might result in the following lengthy text:
    .ALLOC FI(SYSREC01) DA('AA.CRTNAME.LONGTABL.ENAMEISX.XX.HERE') SHR DELE
    To prevent overflow, you can place the trailing keywords in a separate line in the model. To prevent overflow problems with data set name expansion, place the data set name symbolic where it allows for the maximum data set length of 44 characters on the line.
Dynamic Allocation Processing
Currently, the LOAD, CHECK, and REORG models are defined using SORTDEVT, which causes the load utility to dynamically allocate SORTWKs. The amount of SORTWKs is determined by the SORTNUM parameter, which defaults to 0. The value of 0 tells the SORT package to use the SORT default allocations. At most sites, these allocations are small, and cannot handle LOAD processing with large numbers of records. This can cause the LOAD to fail with ABENDSB37, or insufficient core storage abends. These abends can be alleviated by increasing the SORTNUM value in the LOAD control cards. The SORTNUM value is a symbolic variable that can be updated using Model Services.
To change the SORTNUM value:
  1. Access the Model Services screen using the Profile option.
  2. You can edit utilities only in a model you have the authority to update. If the @DEFAULT model has been in use, it must be templated before a new model ID can be added.
    • Enter 
      T
       (for template) next to @DEFAULT.
    • Provide a new model ID for the templated model.
  3. Edit the symbolics in the load utility. Enter 
    S
     in the CMD field next to the load utility. The General Model Symbols screen appears, displaying the symbolics for the load utility.
  4. Change the replacement value for SORTNUM to a value from 0 to 9. This tells the number of temporary data sets to be dynamically allocated.
  5. At analysis time, specify Y for Update Options, and specify the newly templated model to be used for analysis processing. The analysis output will now have LOAD utility control statements that include the SORTNUM parameter.
SORTWK DD JCL Allocations
The second method of allocating SORTWKs is to update the model, delete the SORTDEVT value, and define SORTWK DDs in the model JCL. This causes the SORT package to use the specified SORTWK DDs defined in the execution JCL, and not to use dynamic allocations.
To define SORTWK DDs in the model JCL:
  1. Edit the model JCL. The member to edit is called MJBPMDL in 
    hlq
    .CDBAMDL. Add applicable SORTWK DDs according to the standards at your site.
  2. Access the Model Services screen using the Profile option.
  3. Utility models can only be edited in a model ID for which authority is held. If you have been using the @DEFAULT model, it must be templated before adding a new model ID.
    • Enter 
      T
       (for template) next to @DEFAULT.
    • Provide a new model ID for the templated model.
  4. Edit the utility model and delete the SORTDEVT %SORTDEVT reference.
  5. At analysis time, enter 
    Y
     for Update Options, and specify the newly templated model to be used for analysis processing. The analysis output will now have LOAD Utility control cards without the SORTDEVT variable. When the JCL is generated to run the output, the appropriate SORTWK DDs are added because of the edits to the model JCL.