TAA Tools
DSPRPGUSE       DISPLAY RPG USED                       TAARPGU

The  Display RPG  Used  command provides  a  method of  displaying  the
programs that  use an RPG  field.  The  CRTRPGUSE command must  be used
first  to create or  refresh a data  base file.   DSPRPGUSE provides an
indication of  whether  the program  'uses'  or 'changes'  each  field.
Both internally and externally defined fields are supported.

To  begin  you  must  specify  the  CRTRPGUSE  command  to  create  the
required data base files.  A typical command would be:

             CRTRPGUSE   LIBS(ABC DEF ...) RPGUSEPLIB(xxx)

The  command identifies  where the  data base  files should  be created
and also the  libraries where  the RPG  programs exist.   For the  best
results, you  will want to ensure  that any Externally  Described Files
used by the programs can be accessed using the library list.

For  each program  in  the described  libraries, the  source  member is
accessed and the  field information  is extracted.   The source  member
must still exist in  the file and member where the  program was created
from.   The source  files do  not have to  be on  the library list.   A
spooled   file  is  output  identifying  each  program  that  has  been
accessed and whether any errors exist.

If the program  is an RPGLE  type, the source  for the entry  module is
used.   If a multi-module  program exists, an error  indication appears
as only the first module has been considered.

CRTRPGUSE  is a long running command and  should be submitted to batch.

At the end of CRTRPGUSE, the  RPGUSEP and RPGUSEL data base files  will
be built and are ready for access.

A typical Display command would be:

             DSPRPGUSE     FIELD(xxx)

A subfile  display would appear with  one record for each  program that
uses or  changes the field.   An option exists to  display more details
about the field  and Command keys  are available to  use SEU in  browse
mode against  the source  used to  create the program  or the  DSPOBJD2
tool.

Ordering of the subfile records
-------------------------------

When the subfile appears, the data is ordered as follows:

         - Field name
         - Type (such as character or decimal)
         - Length
         - Decimal positions
         - Usage ('Changes' appear before 'Use only')

If  you have  unique field  names used  for externally  described data,
the  information can  be very  helpful.   If you  have not  used unique
field names,  the  ordering of  the  records based  on the  length  and
decimal positions may assist you.

Other comments
--------------

Only RPG programs  are supported, but any type of RPG  (OPM or ILE) may
be  used.  The RTVRPGFLD tool  is used to determine  field usage.  This
tool has some restrictions.

Usage is determined by  the RPG operation that  uses the field and  any
display file use.   For example, the field used in a  COMP operation is
a  'Use only'  function.   A field  used as  a result  field of  an ADD
operation is  considered  'Changed'.    A  field  which  is  'both'  or
'input' in  a display file  is considered changed.   See the  RTVRPGFLD
command for further details.

The data  to be analyzed will only  be as current as the  last time the
CRTRPGUSE  command  was  run.   An  off  shift use  of  CRTRPGUSE  on a
regularly scheduled basis will probably be adequate for most needs.

You may  have multiple  RPGUSEP files,  but only  one per  library.   A
typical  solution would  be to  have one  set of  files for  each major
application.

If  you regularly  move the source  member after  creating the program,
CRTRPGUSE will not  be effective.   You could consider  the use of  the
CHGOBJD2 tool  which will allow you  to change the program  to describe
where the source exists.

CRTRPGUSE Command parameters                          *CMD
----------------------------

   LIBS          The  libraries to  be accessed for  RPG programs.   Up
                 to 40 libraries may be  described.  For best  results,
                 you  should  ensure  that   the  Externally  Described
                 files referenced  by the programs can be  found on the
                 library list.

                 You  may have  more than  40 libraries  using the same
                 RPGUSEP file  by using  CRTRPGUSE  multiple times  and
                 specifying the REPLACE(*NO) option.

   RPGUSEPLIB    The library  where the  RPGUSEP and RPGUSEL  data base
                 files  exist or will be  created in.   If the files do
                 not exist, a library must  be specified and the  files
                 are automatically created.

                 If the  files already exist,  *LIBL or *CURLIB  may be
                 used instead of the actual library.

   REPLACE       Whether  to replace  the data in  the RPGUSEP  file at
                 the beginning of  the command.   The  default is  *YES
                 which causes  the  file to  be cleared.    *NO may  be
                 specified  when you  have multiple  CRTRPGUSE commands
                 all adding data to the same file.

   RQDEXTDSC     Determines  whether  any  externally  described  files
                 are required.  *NO  is the default.  If  an Externally
                 Described  file is  specified in  the source,  it will
                 be  accessed to determine  the field  definitions.  If
                 the file  cannot be  found, the  output  of the  field
                 information may be misleading.

                 *YES may be  specified in which case  if an Externally
                 Described  file  does not  exist,  no  fields will  be
                 converted and  an  error  will  be  indicated  in  the
                 spooled listing.

   NOPGMS        The action to  take if no  program objects exist  in a
                 library named  on the LIBS parameter.   The default is
                 *ERROR  which  will  cause the  command  to abnormally
                 terminate.    *IGNORE  may  be  specified  which  will
                 allow  the command to  continue (a  diagnostic message
                 is sent).

   SRCLIB        The  source library of the DDS  source for the RPGUSEP
                 files.  This  is the source to  create the files  that
                 will be  used to contain your  data.  Unless  you have
                 made a specific change, use the default.

                 *TAAARC is  the default to access  the source from the
                 TAA Archive.  A specific  library may also be used  if
                 you have first  copied the source from the  Archive to
                 your library.   The source  file name QATTDDS  must be
                 used.

DSPRPGUSE Command parameters                          *CMD
----------------------------

   FIELD         The  field name to position  to first when the subfile
                 is displayed.    If no  field  is entered,  the  first
                 field in the file is displayed.

                 If  the  field  name  specified does  not  exist,  the
                 subfile  will appear with the  first record just prior
                 to the value of the field name.

                 A 'Position To'  option exists  within the subfile  to
                 allow access to any field.

   RPGUSEPLIB    The  library   containing  the  RPGUSEP   and  RPGUSEL
                 files.    The  files must  have  been  created by  the
                 CRTRPGUSE command.

Restrictions
------------

The source for  the RPG programs  must exist where  the program  object
specifies the source used to create the program.

The RTVRPGFLD  tool is used  to determine the  definition and usage  of
the fields.  This tool has restrictions.

To  ensure  the  proper handling  of  externally  described files,  the
libraries  containing any  referenced files  must exist  on the library
list.

Prerequisites
-------------

The following TAA Tools must be on your system:

     CPYTAA          TAA Archive
     DSPOBJD2        Display object description 2
     DSPSRCMBR       Display source member
     EDTVAR          Edit variable
     EXTLST          Extract list
     HLRMVMSG        HLL remove message
     RTVFLDA         Retrieve field attributes
     RTVRPGFLD       Retrieve RPG field
     RTVSYSVAL3      Retrieve system value 3
     SNDCOMPMSG      Send completion message
     SNDDIAGMSG      Send diagnostic message
     SNDESCMSG       Send escape message
     SNDSTSMSG       Send status message
     WRTSRC          Write source

Implementation
--------------

None, the tool is ready to use.

Objects used by the tool
------------------------

   Object        Type    Attribute      Src member    Src file
   ------        ----    ---------      ----------    ----------

   CRTRPGUSE     *CMD                   TAARPGU       QATTCMD
   DSPRPGUSE     *CMD                   TAARPGU2      QATTCMD
   TAARPGUC      *PGM       CLP         TAARPGUC      QATTCL
   TAARPGUC2     *PGM       CLP         TAARPGUC2     QATTCL
   TAARPGUC9     *PGM       CLP         TAARPGUC9     QATTCL
   TAARPGUR      *PGM       RPG         TAARPGUR      QATTRPG
   TAARPGUR2     *PGM       RPG         TAARPGUR2     QATTRPG
   TAARPGUD      *FILE      DSPF        TAARPGUD      QATTDDS
   TAARPGUP      *FILE      PF          TAARPGUP      QATTDDS
   TAARPGUL      *FILE      LF          TAARPGUL      QATTDDS

Structure
---------

CRTRPGUSE   Cmd
   TAARPGUC   CL pgm
     TAARPGUR   RPG Pgm

DSPRPGUSE   Cmd
   TAARPGUC2   CL pgm
     TAARPGUR    RPG Pgm
       TAARPGUD    Display file
       TAARPGUC9   CL Pgm
					

Added to TAA Productivity tools October 1, 1996


Home Page Up to Top