TAA Tools

The Display CL Program DO  command checks CL source for DO  groups.  It
prints the  source statements and the DO group  number.  The command is
useful for:

  **   Determining  where the  DO groups are  when a  CL compiler error
       of unbalanced DO groups occurs.

  **   Understanding the flow of the program.

A typical command would be entered as:


The output would appear as:

*                                                                    *
*   8/18/09  12:08:12   SYSTEMA         DSPCLPDO Command             *
*         Member-xxxxxxxx    File-xxxxxxxxx   Library-xxxxxxxx       *
*                                                                    *
*   DO Grp  Err  Seq Nbr      Statement                              *
*                                                                    *
*     B  1          4.00            IF (&X *EQ Y) DO                 *
*     B  2          5.00            DO                               *
*        2          6.00            /*    */                         *
*     B  3          7.00            MONMSG MSGID(CPF0000) EXEC(DO)   *
*        3          8.00            /*    */                         *
*     E  3          9.00            ENDDO                            *
*        2         10.00            /*    */                         *
*     E  2         11.00            ENDDO                            *
*     E  1         12.00            ENDDO                            *
*                                                                    *

The B character denotes the beginning  of a DO group and the  E denotes
the end.  If  an error is sensed, a number appears  in the error column
and a text description appears at the end of the listing.

The DOWHILE, DOUNTIL, and DOFOR commands are also supported.

Command parameters                                    *CMD

   MBR           The member to be checked.

   SRCFILE       The  qualified CL  source file  name.  The  default is
                 QCLSRC in *LIBL.  *CURLIB may also be specified.

   PRINT         A *YES/*NO  value that  defaults to  *NO.   *NO  means
                 that  DSPSPLF will  be  used  to display  the  spooled
                 output.    When  the  command  completes, the  spooled
                 file is deleted.  *YES  means that you intend to  keep
                 the spooled output (DSPSPLF is not used).

                 The value  * may  also be  entered to mean  *NO.   The
                 value *PRINT may also be entered to mean *YES.


In  order for a  DO group to  be found  for the MONMSG  EXEC parameter,
the keyword form of EXEC is required.

In  most cases the DO  following an IF will be  found regardless of how
it is  specified, but  the DO  is found  by counting  parenthesis.   In
some  cases  if parenthesis  exist  as  literals  within the  value  be
tested on the IF, the DO group may not be located.


The following TAA Tools must be on your system:

           RTVSYSVAL3      Retrieve system value 3
           SNDCOMPMSG      Send completion message


None, the tool is ready to use.

Objects used by the tool

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

   DSPCLPDO      *CMD                      TAACLPL        QATTCMD
   TAACLPLC      *PGM          CLP         TAACLPLC       QATTCL
   TAACLPLR      *PGM          RPG         TAACLPLR       QATTRPG

Added to TAA Productivity tools April 1, 1995

Home Page Up to Top