TAA Tools
DMOSUBF3        DEMO SUBFILE 3 (ARRAY)                 TAASTDD

The Demonstrate Subfile  3 (Array) command provides a  demonstration of
a  subfile  loaded  from  array  data.    The  code  provided  includes
comments  for  how to  modify the  source to  fit your  specific needs.
The subfile  provides an  option to  select  one of  the entries  which
causes the  value to be passed back  as a parameter.   A display option
is also provided.

You can try out the function with the command:


To further exercise the demonstration:

         - Try the display option
         - Rollup/Rolldown
         - Select a value
         - Try the Help key
         - End with F3 or F12 without making a selection

DMOSUBF3  is a  subset of  the DMOSUBF tool  with the  major difference
that array  data is  used to  load the  subfile rather  than data  base
records.   This  is  typical of  many applications  that  have a  small
number of  values that the user can select  from and a subfile provides
a good selection technique.

The intent of the  source is to  allow you to  build a similar  subfile
display application with a minimum of effort.

All  of  the screens  support  help  text.    The help  text  shown  is
standard  for things  like function  keys and  option entries.   Sample
formats are provided for field help text.

Differences with other DMOSUBF tools

The  DMOSUBF tool  provides a  typical work  type display of  data base
records in a subfile.

The  DMOSUBF2   command  (part  of   DMOSUBF)  provides  display   only
functions  (no  changes  or  additions)  of  data  base  records  in  a

DMOSUBF4  provides  the same  function  as  DMOSUBF3, but  the  data is
displayed in a window on the display.

DMOSUBF5 is like DMOSUBF3 plus a 'Position To' entry.

DMOSUBF6 is like DMOSUBF4 plus a 'Position To' entry.

Getting started

Command definition,  CL, DDS, and  RPG source  are provided.   You  may
not want a command  interface or a CL program, but rather  call the RPG
program  from some  other program.   Or you  may decide  to use  the CL
program only  during the  testing of  the code  and  then eliminate  it
when integrating the RPG/DDS code into a full application.

The  DUPSTDSRC  command  provides  a  simple   method  of  copying  the
standard source.  The SRCTYP *SUBF3xxx must be used:

           *SUBF3CMD     Command definition source
           *SUBF3CLP     CL source
           *SUBF3RPG     RPG source
           *SUBF3DSPF    DDS Display file source

For example, to duplicate the RPG source, use:

           DUPSTDSRC   MBR(xxx) SRCTYP(*SUBF3RPG) TEXT('...')

For each  source member that you copy, some  number of required changes
are  needed.   Optional  changes may  also be  made.   The  typical use
would be  to  make only  the  required changes  and achieve  a  working
application before changing the optional statements.

As with DMOSUBF,  the source includes comments to  assist you in making
the changes.  There are 2 kinds of comments:

  **   Temporary.   These are designed to  assist you in making changes
       to the  source.    After  your application  is  ready,  you  may
       remove these comments with the RMVSRCCMT TAA Tool.

  **   Permanent.  These  are designed to be retained in  the source to
       document the code.

Array data

The program  is written so that  the array data is  part of the program
(compile time array).   It could  be loaded  from a file  or from  your
own code at the beginning of the program.

The program  is written  so that only  a value  and a  text description
will appear  in the subfile and  the same values appear if  a record is
displayed.    You may  have a  more complex  set  of information  to be
displayed in the subfile as well as more detail information.

The program assumes that when  an array element is read from  the ARVAL
array  that is blank,  'end of  file' is  sensed and  the last  page of
entries  is displayed.  You may have  a different method of determining
the 'end of file' and if so scan the RPG source for ENDFILE.

Instead of array data, your  data may be in a  data base file.  If  the
file contains  a small  number of records  (such as  100 or  less), you
may choose  to use DMOSUBF3 rather than  DMOSUBF2 which deals with data
base records.  For  example, you could read  the data at the  beginning
of the  program and  place it an  array or  a multiple  occurrence data

Alternate View

The default  in the standard  code is to  provide a single  view of the
data (the Demonstration default allows an alternate view).

You  may specify an  option for an  alternate view by  scanning the RPG
code for ALTVW and use a SETON instead of a SETOF.

This activates the F11  key to allow a  flip/flop between the main  and
alternate view.   The F11 description  is either 'View 1'  or 'View 2'.
The  RPG ZZCVT  subroutine  is used  for converting  both the  main and
alternate view fields prior to display if needed.

Fields for  the  alternate view  should be  entered  in DDS  (Scan  for
ALTVW) and follow the instructions.

Command parameters                                    *CMD



Only the first '1'  option is used to return a value.   If multiple are
entered by the user, all those after the first are ignored.


The following TAA Tools must be on your system:

     ADJVAR          Adjust variable
     FILEFDBCK       File feedback
     SNDESCMSG       Send escape message


None, the tool is ready to use.

Objects used by the tool

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

   DMOSUBF3      *CMD                   TAASTDD       QATTCMD
   TAASTDDC      *PGM       CLP         TAASTDDC      QATTCL
   TAASTDDR      *PGM       RPG         TAASTDDR      QATTRPG

Added to TAA Productivity tools February 1, 1997

Home Page Up to Top