TAA Tools
DUPSTDSRC       DUPLICATE STANDARD SOURCE              TAASRCV

The  Duplicate Standard  Source  command is  intended  for those  cases
where  you  are adding  a  new source  member.   The  command  adds the
member  and  copies standard  source for  the appropriate  source type.
This allows  you to begin  with some  typical source statements  rather
than an empty member.

A typical command is entered as:

        DUPSTDSRC   MBR(MBRA) SRCTYP(*RPG) TEXT('Member A source')

If  no SRCFILE  parameter is  used, the  standard source  file  name is
derived  from the source type.   In this case  since *RPG is specified,
QRPGSRC would be  used.  CPYSRCF  is used internally  to copy from  the
standard  RPG  source  provided.   This  includes  typical  RPG  source
statements to  begin a program.   The TEXT value is  used as the member
description and is also  used along with the  member name as the  first
record in the source.

The intent is to  provide you with typical statements  that are already
coded  for the  appropriate source  type.   After  DUPSTDSRC completes,
you can use SEU to begin modifying the source.

It  would  be normal  to use  some of  the  standard source  and delete
statements that are not needed.

If the  source type requested  does not  exist in  the QATTxxx file  in
TAATOOL,  the source  is copied  from the  TAA Archive.   You  can copy
your  own  version  to  the QATTxxx  file  in  TAATOOL  and  retain the
advantages of DUPSTDSRC.

Modifying the standard source
-----------------------------

The standard source  is shipped  as members  in the TAA  Archive.   You
cannot modify the  source in the archive,  but you can copy  the source
to  your  own file  (in your  own  library) using  the  TAASTDAx source
member name.  You can then modify the source with SEU.

When you  are ready,  you should  copy the  source  to the  appropriate
QATTxxx file in TAATOOL  using the same TAASTDAx name.   DUPSTDSRC will
check for  the existence of the  member in the QATTxxx file  and use it
instead of the TAA Archive version.

See the later section for the specific source member name to use.

This  'copying back' would have  to be done following  a new release or
an update  to the  TAATOOL product.    Therefore, you  should keep  the
changes in your own library.

*MNUC and *MNUD source types
----------------------------

The  *MNUC and  *MNUD  types supply  standard  CL and  DSPF source  for
creating  a  menu.    Using a  CL  program  for  a  menu allows  better
flexibility in handling selections and  what to do if an error  occurs.
The display  file DDS is  set for  a menu with  12 options.   A message
text  area is available  on the menu.   The CL  program source provides
standard points you can branch to for the following functions:

  **   Blank the selection field (Normal choice)

  **   Place a value  in the message  text field and  blank the  select
       field  (Used  for  a   function  that  does  not  have   a  user
       interaction such as SBMJOB).

  **   Place  a value  in  the message  text and  retain  the selection
       (Used for your own error messages).

  **   Receive  the last  message sent by  your function  and blank the
       selection field (Good for commands like SBMJOB).

  **   Receive  the  escape message  and  retain  the  selection  field
       (Used for general purpose errors).

  **   Cause  the  job  log to  be  displayed  and  a message  sent  to
       QSYSOPR (Used for unexpected errors).

The  CL program  has the correct  parameter list  so you  can specify a
CRTMNU command and access the menu  object with the GO command (If  you
don't want  a menu  object, you  can just  delete the parameter  list).
To  use  CRTMNU,  you  would first  create  your  display  file and  CL
program and then the command:

      CRTMNU   MENU(xxxx) TYPE(*PGM) PGM(yyyy)

CL Source with and without SNDESCINF
------------------------------------

Two  members  are  provided  for  standard  CL  source  (TAASTDAC   and
TAASTDAC3) which contain the  standard error handling used in  most TAA
tools.

TAASTDAC  includes   the  TAA  Tool   SNDESCINF  which  sends   the  MI
instruction  where the  error occurred.   This information  can be used
in  conjunction with  the  DSPPGMSTMT  TAA  Tool to  pinpoint  the  HLL
statement where the error occurred.

TAASTDAC3 is  the same source  without SNDESCINF.  Although  the source
contains  TAA commands such  as SNDSTSMSG, the  standard error handling
code can be extracted  and run on any system  (it does not require  the
TAA Productivity Tools product).

*SUBFx, *SUBF2x, *SUBF3x, and *SUBF4x source types
--------------------------------------------------

The *SUBFx, *SUBF2x,  *SUBF3x, and *SUBF4x source  types are associated
with  the DMOSUBF,  DMOSUBF3,  and DMOSUBF4  tools.   This  tool allows
sample code  to  be  copied  to  begin a  member  for  a  Work  Subfile
application.

Command parameters                                    *CMD
------------------
   MBR           The member  name to  be added  to the file.   It  must
                 not exist in the file.

   SRCTYP        The source  type to be added.   It must be  one of the
                 values  *CMD,  *CLP,  *CL,  *RPG,  *RPGLE,  *PF,  *LF,
                 *DSPF,  *PRTF,   *MNUC,  *MNUD,  *SUBFCMD,   *SUBFCLP,
                 *SUBFDSPF,     *SUBFRPG,     *SUBF2CMD,     *SUBF2CLP,
                 *SUBF2DSPF,   or   *SUBF2RPG,   *SUBF3CMD,  *SUBF3CLP,
                 *SUBF3DSPF,    *SUBF3RPG,    *SUBF4CMD,     *SUBF4CLP,
                 *SUBF4DSPF, and  *SUBF4RPG.  The  values *CL  and *CLP
                 are  synonymous.  See  the previous  discussion of the
                 *MNUC, *MNUD, *SUBFx and *SUBF2x types.

                 The  *RPGLE  value  means  the  source  file  name  of
                 QRPGLESRC.

   TEXT          The text  description to be  used for the  new member.
                 The  same text  is also  appended  to the  member name
                 and   written  as  the  first  record  in  the  source
                 member.

   SRCFILE       The qualified  file  name of  the  source file.    The
                 default  is *SRCTYP  which means  to use  the standard
                 source  file  names associated  with  the  source type
                 (e.g.  *CMD = QCMDSRC, *CL = QCLSRC).

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

None.

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

The following TAA Tools must be on your system.

     TAAARC       TAA Archive
     SNDCOMPMSG   Send completion message
     SNDESCMSG    Send escape message
     WRTSRC       Write source

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

None, the tool is ready to use.

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

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

   DUPSTDSRC     *CMD                       TAASRCV       QATTCMD
   TAASRCVC      *PGM           CLP         TAASRCVC      QATTCL

The following  members  exist  in the  TAA  Archive which  act  as  the
standard source to be used.

    SRCTYP     Member        Type        Src file
    -----      ------        ----        --------

    *CMD       TAASTDA       *CMD        QATTCMD
    *CLP       TAASTDAC      *CLP        QATTCL
    *CLP       TAASTDAC3     *CLP        QATTCL
    *RPGLE     TAASTDAR      *RPGLE      QATTRPG
    *RPG       TAASTDAR2     *RPG        QATTRPG    Note 3
    *PF        TAASTDAP      *PF         QATTDDS
    *LF        TAASTDAL      *LF         QATTDDS
    *DSPF      TAASTDAD      *DSPF       QATTDDS
    *PRTF      TAASTDAS      *PRTF       QATTDDS
    *MNUC      TAASTDAC2     *CLP        QATTCL
    *MNUD      TAASTDAD2     *DSPF       QATTDDS
    Note 1     TAASTDBK      *PF         QATTDDS
    Note 1     TAASTDBA      *LF         QATTDDS
    *SUBFDSPF  TAASTDBD      *DSPF       QATTDDS
    *SUBFCMD   TAASTDB       *CMD        QATTCMD
    *SUBFCLP   TAASTDBC      *CLP        QATTCL
    Note 2     TAASTDBC2     *CLP        QATTCL
    *SUBFRPG   TAASTDBR      *RPG        QATTRPG
    *SUBF2DSPF TAASTDCD      *DSPF       QATTDDS
    *SUBF2CMD  TAASTDC       *CMD        QATTCMD
    *SUBF2CLP  TAASTDCC      *CLP        QATTCL
    *SUBF2RPG  TAASTDCR      *RPG        QATTRPG
    *SUBF3DSPF TAASTDDD      *DSPF       QATTDDS
    *SUBF3CMD  TAASTDD       *CMD        QATTCMD
    *SUBF3CLP  TAASTDDC      *CLP        QATTCL
    *SUBF3RPG  TAASTDDR      *RPG        QATTRPG
    *SUBF4DSPF TAASTDED      *DSPF       QATTDDS
    *SUBF4CMD  TAASTDE       *CMD        QATTCMD
    *SUBF4CLP  TAASTDEC      *CLP        QATTCL
    *SUBF4RPG  TAASTDER      *RPG        QATTRPG

Note 1 - Used only for the demo function

Note 2 - Used only to refresh the demo data

Note 3 - The OPM format of RPG
					

Added to TAA Productivity tools April 1, 1995


Home Page Up to Top