DEVDMO - Software Developer's Demonstration of GLUE/BASIC/DART interactions.
By Creed Erickson, DMSI
The DEVDMO system is a "do nothing" system that simply exists for it's own
gratification. However, the techniques and methods used are great examples
of how to exploit some of the less obvious aspects of the GLUE menu system,
DART, ESP, and AlphaBASIC. The intent here is to provide the serious
software developer with examples of how to bind BASIC, DART, ESP, and GLUE
into a integrated, powerful system.
To help you step through the examples I have included the following notes
on the DEVDMO.GLU menu file. The rest of the system is reasonably self-evident
once this front end menu is understood.
Selection #1 This is an example of a "dual-mode" selection. This option
may be selected by either entering it's selection number
or by pressing the EDIT (F1) function key. When this
selection is activated several key files are located. If
these files do not exist they are built. Control is then
passed to the DEVDMO.BAS program. This selection is an
example of how a GLUE menu can utilize the AMOS command set
to achieve sophisticated file manipulation via LOOKUPs.
Selection #2 This option may also be selected by either entering an
option number (2) or pressing a function key (LIST or F10).
When activated, this selection does quite a number of
things. First, any previous report list file is erased.
Then the interactive basic interpreter is invoked to build
a file of terminal input keystrokes called "DEVDMO.TIP".
This file name is set into the indirect input file
specification using the SETUSR xcall subroutine. Basic is
exited and the DART report DEVDRP is invoked. All terminal
input is taken from the indirect input file which has been
loaded with the proper keystrokes to cause the report to
run without sending the resultant print file to the
printer. The actual DART processing occurs in a manner
totally invisible to the user. This methodology could be
used for custom "front end" processors to reports.
Once DART processing is complete, the interactive basic
interpreter is invoked again and a short program is written
and compiled. The resultant run time code is saved to the
disk as a .RUN file and basic is exited. While it might be
a much more practicle thing to simply keep this program
around, the intent of this example is to show how a GLUE
menu can combine with BASIC to do some fairly complex
processing.
The compiled program is run which causes the .RUN file to
be erased and allows the user some choices as to the
disposition of the report print file.
Selection #3 This selection is fairly straight forward in that it edits
the DEVDMO.BAS file and erases any backup files when
complete.
Selection #4 This is very similar to selection number 3 except that it
uses interactive BASIC to build and invoke an indirect input file
which puts the user directly into the maintenance menu with
the Data Base definition already loaded.
F8 - SPECIAL This option is invoked by pressing the SPECIAL (F8) key. A
"Special Functions" menu is invoked.
F13 - MENU This option is used to erase any "junk" files before
exiting the DEVDMO system.