Previous Topic: 8.5.2 Creating an MTI Component

Next Topic: 8.5.4 Recovering the MTI Dictionary

8.5.3 Updating an existing MTI Component


One of the design objectives of MTI was to allow the
component to be customized to the input data.  The definition
of an MTI component may need to be changed if the contents of
the input data changes.

MTI provides a utility, called MTIGENER, to update the
definition of an MTI component (stored in
sharedprefix.MICS.GENLIB(cccGENIN)).  MTIGENER will scan a
component's input data, create CA MICS file definitions for
each new resource encountered, and then update
sharedprefix.MICS.GENLIB(cccGENIN).

Note:  MTIGENER preserves any changes you have made to an MTI
       component (e.g., file activation/deactivation) in
       sharedprefix.MICS.GENLIB(cccGENIN).  However, sequence
       numbers are not retained and are removed.

During component generation (step 2), the INPUTCSV DD should
contain the input data of the component.  If INPUTCSV is not
in the JCL, MTI will create files with all resource subtypes
of a given resource (based upon the MTI Dictionary).  This
may result in files with much more data than you really want.
The INPUTCSV file is used to create a subset based upon the
resource subtypes in the input data.

The default INPUTCSV definitions are stored in
sharedprefix.MICS.PARMS(cccINPUT) which was created during
the MTICREAT process.  This member is initialized with data
set names from the INPUTCSV DD at the time MTICREAT was run.


___1. (Optional) If you need to modify the INPUTCSV data set
      names or concatenate additional input files to the
      INPUTCSV DD, then

      Edit sharedprefix.MICS.PARMS(cccINPUT)

      and specify the necessary data set names on the
      INPUTCSV DD statement.  Save the member.

___2. (Optional) If you modified the
      sharedprefix.MICS.PARMS(cccINPUT) member, then

      Edit sharedprefix.MICS.PARMS(JCLGENUC)

      and copy the contents of
      sharedprefix.MICS.PARMS(JCL$0ccc) into this member
      (JCLGENUC).

      Submit the job in sharedprefix.MICS.CNTL(JCLGENUC).

      Ensure that there are no error messages in MICSLOG or
      SYSTSPRT, that the MICSLOG contains the normal
      termination message, BAS10999I, and that the job
      completes with a condition code of zero.

___3. (Optional) Edit sharedprefix.MICS.CNTL(cccDSCAN)

      where ccc is the MTI component name.

      This job will compare the input file(s) with the MTI
      Dictionary and report on any resource types and
      subtypes that are not defined in the current MTI
      Dictionary.

      Submit sharedprefix.MICS.CNTL(cccDSCAN).

      Ensure that there are no error messages in the MICSLOG;
      that the MICSLOG contains the normal termination
      message, MTI02399I; and that the job completes with a
      condition code of zero.

      NOTE:  It is possible there may be no changes to the
             configuration.  In this case, proceed directly
             to Step 5.

*************************************************************
*                                                           *
*  If new resources have been added, you must edit and      *
*  submit the cccDLOAD job in Step 4.  If you do not        *
*  perform this step and new resources have been added,     *
*  the cccUPDAT job in Step 7 will abend.                   *
*                                                           *
*************************************************************

___4. Edit sharedprefix.MICS.CNTL(cccDLOAD)

      where ccc is the MTI component name.

      This job updates the MTI dictionary with any new
      resources as identified in the cccDSCAN job in the
      previous step.

      Executing this job will not only eliminate the
      MTI02108W and/or MTI02110W message in your MTI DAILY
      job step, but also make these resources and resource
      subtypes available to process in your MTI DAILY
      jobstep, if desired.  Even if you do not wish to
      process these resources in your MTI DAILY, you may
      still execute this job to eliminate the warning
      messages with no detrimental effects.

      NOTE:  These new resources will NOT be processed in
             your MTI DAILY jobstep until you complete the
             remainder of this checklist.

      Ensure the INPUTCSV DD points to the correct input
      data sets for this component.

      If you wish to suppress the MTI02108W and/or
      MTI02110W message in your MTI DAILY job step AND
      enable these resources to be processed in your MTI
      DAILY jobstep, then

      Submit the job in sharedprefix.MICS.CNTL(cccDLOAD).

      Ensure that there are no error messages in the MICSLOG;
      that the MICSLOG contains the normal termination
      message, MTI02399I; and that the job completes with a
      condition code of zero.

___5. Create a backup of sharedprefix.MICS.GENLIB(cccGENIN).

      cccUPDAT (step 7) does NOT make a backup of
      sharedprefix.MICS.GENLIB(cccGENIN).  It is highly
      recommended that you make a copy of this member for
      recovery purposes.  For example, cccGENIN could be
      copied to member cccGENBK.

      WARNING:  WITHOUT A BACKUP COPY THERE IS NO WAY TO
                RECOVER IF cccGENIN IS DAMAGED.

___6. (Optional) Edit sharedprefix.MICS.CNTL(cccUPSCN)

      where ccc is the MTI component name.

      This job produces a report of the updates that will
      take place should you run the cccUPDAT job in the
      subsequent step.  This allows you to review the
      changes before actually implementing them.

      Ensure the INPUTCSV DD points to the correct input
      data sets for this component.

      Submit the job in sharedprefix.MICS.CNTL(cccUPSCN).

      Ensure that there are no error messages in the MICSLOG;
      that the MICSLOG contains the normal termination
      message, MTI02399I; and that the job completes with a
      condition code of zero.

___7. Edit sharedprefix.MICS.CNTL(cccUPDAT)

      where ccc is the MTI component name.

      This job customizes your
      sharedprefix.MICS.GENLIB(cccGENIN) with the new
      resources identified in the cccUPSCN job in step 6
      above.

      Ensure the INPUTCSV DD points to the correct input
      data sets for this component.

      Submit the job in sharedprefix.MICS.CNTL(cccUPDAT).

      Ensure that there are no error messages in the MICSLOG;
      that the MICSLOG contains the normal termination
      message, MTI02399I; and that the job completes with a
      condition code of zero.

      *******************************************************
      *  It is possible for there to be no changes to the   *
      *  configuration.  In this case, cccUPDAT will        *
      *  terminate with a U998 ABEND and a message stating  *
      *  that there are no new resources to add to the      *
      *  component.                                         *
      *                                                     *
      *  However, it is still necessary to execute the      *
      *  cccCGEN in step 9 as new elements may have been    *
      *  added to existing files.                           *
      *                                                     *
      *  Additionally, if the cccDLOAD job was not run to   *
      *  define these new resources to the MTI Dictionary,  *
      *  the cccUPDAT job will abend and issue messages     *
      *  stating that the cccDLOAD job must be run prior    *
      *  to executing the cccUPDAT job.                     *
      *******************************************************

___8. (Optional) Make manual changes to cccGENIN

      Edit sharedprefix.MICS.GENLIB(cccGENIN) and make
      any changes as necessary.

      For example, if you do not wish to use multiple work
      file support with this MTI component, then insert the

      MSIOPTS NOMULTWORK

      statement before the first FILE statement in your
      MTIGENIN.  This may also be done on a FILE by FILE
      basis rather than globally.  Refer to section 4.2.4.3.1
      in this guide for more information on the MSIOPTS
      statement.

___9. Run cccCGEN.

      Edit sharedprefix.MICS.CNTL(cccCGEN).
      Optionally, update the INPUTCSV DD with the correct
      input data sets for this component.

      Generate the product by submitting the job in
      sharedprefix.MICS.CNTL(cccCGEN).

      Ensure that there are no error messages in ISPLOG and
      MICSLOG; that MICSLOG contains the normal termination
      messages, BAS20999I; and that the job completes with a
      condition code of zero.

      *******************************************************
      *  It is possible for there to be no changes to the   *
      *  configuration.  In this case, cccUPDAT will        *
      *  terminate with a U998 ABEND and a message stating  *
      *  that there are no new resources to add to the      *
      *  component.                                         *
      *                                                     *
      *  Since there may be new data elements added to      *
      *  existing files, the cccCGEN is still required.     *
      *                                                     *
      *  If there were no changes to file activation, Audit *
      *  Archive, History Weekly, or History Monthly        *
      *  status, the remainder of this checklist can be     *
      *  skipped.                                           *
      *******************************************************

  ***********************************************************
  *  Repeat step(s) 10-18 for each unit database that       *
  *  contains the ccc MTI component.                        *
  ***********************************************************

__10. Edit prefix.MICS.PARMS(JCLGENU) so that it contains a
      single line that reads:

      COPYLIBU GDGSGEN

      Submit the job in prefix.MICS.CNTL(JCLGENU).

      Ensure that there are no error messages in MICSLOG or
      SYSTSPRT; that the MICSLOG contains the normal
      termination message, BAS10999I; and that the job
      completes with a condition code of zero.

__11. Submit the job in prefix.MICS.CNTL(COPYLIBU).

      Ensure that there are no error messages in MICSLOG and
      that the job completes with a condition code of zero.

__12. Edit prefix.MICS.PARMS(cccOPS).

      Refer to section 8.7 of the System Modification Guide
      on coding parameters for cccOPS.

__13. Submit the job in prefix.MICS.CNTL(cccPGEN).

      Ensure that there are no error messages in MICSLOG and
      that the job completes with a condition code of zero.

__14. Edit prefix.MICS.PARMS(DBMODEL).  Find the FILE
      statement(s) that identify the file(s) added or changed
      by this maintenance.

      Modify the number of cycles to be retained in each FILE
      statement to suit your installation's standards.

__15. Submit the job in prefix.MICS.CNTL(CYCLEGEN) to
      generate file cycle retention limits.

      Ensure that there are no error messages in MICSLOG,
      that MICSLOG contains the normal termination message,
      BAS11999I, and that the job completes with a condition
      code of zero.

__16. If audit or history files are used in this unit
      database, submit the job in prefix.MICS.CNTL(GDGSGEN).
      If allocated, ensure that there are no error messages
      in MICSLOG.

      The last IDCAMS step may complete with a non-zero
      return code (either an 8 or a 12) if
      audit/history/backup files currently exist.  Therefore,
      you must review the SYSPRINT SYSOUT DD and make sure
      that the GDG entries for newly added files have been
      created successfully.

__17. Edit prefix.MICS.PARMS(INPUTccc).

      Verify that the names of all data sets are specified
      on the INPUTccc DD.

__18. Regenerate operational JCL.

      Submit the job in prefix.MICS.CNTL(JCLGEND).

      Ensure that there are no error messages in MICSLOG or
      SYSTSPRT, that the MICSLOG contains the normal
      termination message, BAS10999, and that the job
      completes with a condition code of zero.

  ***********************************************************
  * Repeat the above step(s) for each unit database that    *
  * contains ccc.                                           *
  ***********************************************************