Previous Topic: 4.15.3.2 Utility Job Processing Routine Example

Next Topic: 4.16 Modifying Menus

4.15.3.3 Accounting Table Maintenance Utility


This Accounting Table utility is used to apply maintenance to
the following production accounting ISPF tables:

o Invoice categories table
o Credit categories table
o Charging elements table
o Journal files table
o Menu item table

The utility supports the following functions:

 1) add     - allows for the adding of new rows to the
              specified table.  If the row to be added
              already exists in the table then the add
              function can be requested to perform the add
              with a rename option.  This will result in the
              row being added under a new name.

 2) modify  - allows for the verify and update of existing
              rows in the specified table.  The verification
              consists of specification of a field in the row
              to be updated and its corresponding value.  If
              the row does contain the specified field and if
              the value is correct, then the verified value
              is replaced with the corresponding value from
              the master version of the specified table.  If
              the verification fails, a force option can be
              specified which results in the update being
              performed without the verification check.

The utility performs the above two functions based on a
control file. The control file is comprised of the following
statements:

o $TABLE - specifies the names of the tables to be updated.
           Up to five tables can be specified.  The statement
           has the following format:

    $TABLE table_name1 table_name2 ...

    where,

    table_name  is the name of the table to be updated.

        Valid table names are:

        MAF$INVC  -  Invoice categories table
        MAF$CRED  -  Credit categories table
        MAF$ELEM  -  Charging elements table
        MAF$JOUR  -  Journal files table
        MAF$STP   -  Menu item table

o $ADDLN - specifies the table and the name of a row to be
           added.  The row to be added is specified by giving
           the name and the value of the control variable for
           the row.  The statement has the following format:

  $ADDLN  table_name  cntl_var  value  rename  new_value

    where,

    table_name  is the name of the table to be updated and
                must have been specified on the preceding
                $table statement.

    cntl_var    is the name of the control variable for the
                row to be added.

    value       is the value of the control variable for the
                row to be added.

    rename      indicates that the row is to be added with a
                new value for the control variable if the
                original row to be added already exists.

    new_value   is the value to be used for the control
                variable in the event a rename is required.

o $MODLN - specifies the table and the name of a row to be
           updated.  The row to be updated is specified by
           giving the name and the value of the control
           variable for the row.  The statement has the
           following format:

  $modln  table_name cntl_var value ver_var ver_value force

    where,

    table_name  is the name of the table to be updated and
                must have been specified on the preceding
                $table statement.

    cntl_var    is the name of the control variable for the
                row to be updated.

    value       is the value of the control variable for the
                row to be updated.

    ver_var     is the name of a variable in the specified
                row to be used to verify the state of the row
                prior to update.

    ver_value   is the value of the verify variable.  the
                value of the verify variable in the specified
                row must match this value in order for the
                update to be performed.

    force       indicates that the row is to be updated even
                if the verification fails.

 Within the scope of a $table statement no tables are
 actually updated until all statements are processed.
 Because a single $table statement can specify all accounting
 tables, this utility provides a method for ensuring that no
 table is updated unless all modifications are successful.

 If there is an error, the job does not update any tables.
 You must correct the error by choosing one of the following
 options and rerun the ACTnnnnA job:

   o  Place an asterisk (*) in column 1 of the control
      statement in the ACTnnnnA job that is causing the
      conflict.  Any statement that has an asterisk (*) in
      column 1 is ignored.

      If you choose this option, the item will not be added,
      and you will not be able to use it.

   o  Using the CA MICS Workstation Facility Accounting and
      Chargeback panels, rename or delete the item that is
      causing the conflict.

      It may be necessary to revise your rate table if you
      are using user-defined computation codes in a rate
      table.  User-defined computation codes should be in the
      8000-9999 range.

   o  Change the identifier (computation code, invoice, or
      credit category) for the item being added in the
      ACTnnnnA control statements.

      For example, to change computation code 1870, add
      RENAME nnnn to the end of the $ADDLN statement for
      ELMCCODE 1870, where nnnn is the computation code that
      you wish to use.  User-added computation codes should
      be in the 8000-9999 range.  An example follows:

        $ADDLN ELMCCODE 1870 RENAME nnnn

  After you have resolved the conflicts and resubmitted the
  ACTnnnnA job, examine the ISPLOG and MICSLOG for error
  messages.  Ensure that the job completes with a condition
  code of zero.