SLD [ Intro | Pubs | WebTables | Workbook | Software | SLACVX | Search ]
[ WebTables : Help | Maintenance ]

Maintaining the SLD WebTables System

WTFORMREAD.COM - the Interface Form Reading Exec

A few general comments about WTFORMREAD.COM are given here. For more details, study the extensive comments in the exec itself.

The Interface Form Reading Exec starts by calling an executable that loads the submission values into a set of symbols prefixed by "form_fld". This executable is

   DISK$SLD_USR0:[SLDWWW.HTTPD.HTBIN]SLD_SYMBOLS.EXE
The executable is compiled from a slightly modified version of CGI_SYMBOLS.C, a routine that comes with the OSU VMSthreads Server. The SLD modification is necessary because the OSU version does not correctly handle symbols for field names that contain a period. This comes up in our forms for the symbols that contain the x and y image map positions, form_fld_point.x and form_fld_point.y.

The problem is that DCL symbol names cannot include a period. The OSU code fails to handle this case, making no symbols for these critical fields. The SLD version works around this by converting any periods to underscores in symbol names. We then end up with the symbols form_fld_point_x and form_fld_point_y.

This single exec handles all WebTables interface reading. When called from the SIMPLE and Resubmission interfaces, it checks the validity of the user input and then, assuming the input is valid, formulates a URL which uniquely identifies the plot or table to be made. It then redirects the browser to this URL which is then handled by WTINTERMED.COM, the Intermediate Exec. This URL is described in detail in the document: Constructing Plot and Table URLs by Hand.

When called from the ADVANCED interface, WTFORMREAD is used in an iterative manner. With each iteration, it reads and interprets user input and writes out a new version of the ADVANCED interface that reflects the user's selections thus far. When the user finally selects one of the TABLE, SUM or PLOT buttons, the interface forms a URL and hands off to WTINTERMED.COM, the Intermediate Exec.

At each iteration, WTFORMREAD writes the hidden input parameter FORMTYPE into the new copy of the ADVANCED interface to control subsequent WTFORMREAD program flow.

Most of the work of WTFORMREAD involves building the string called "selectnames", which eventually becomes the datanames part of the Intermediate Exec's URL. Datanames to be displayed, qualifier selections and range selections are all encoded here.

For information on debugging the Interface Form Reading Exec, see To Debug a COM File Running on the WWW-SLD Web Server.


Joseph Perl
3 October 1997