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.

Files included:

	DEVDMO.BAS	DEVDMO.GLU	DEVDRP.SCR
	DEVDMO.DRT	DEVDM2.GLU	DEVDMO.TXT <- You're reading this one.
	DEVDRP.DRT	DEVDMO.SCR



			     NOTES ON DEVDMO.GLU

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.