Previous Next Table of Contents

2. Quick description

A typical sqlscreens application will have a number of screens, each with several fields. Each screen will be linked to one or several database tables, each field to a column. Impatient people using a web browser can look at the screen dumps right now.

You create each screen by listing the column names you want.

If you do not even list the column names, all columns are used, so that creating a screen to look at a table is 5 lines of TCL code. There is a sample program in the package to do just this: give it the table name and up comes the screen (tablescreen.tcl).

Once the screens are created, you can query, insert, update, and delete records by entering data in the fields and clicking on the appropriate button (or using a keyboard shortcut).

Sqlscreens provides an easy method to link the screens so that a change in one screen will trigger a query in another one (for master-detail relationships), or so that it will just update the join column.

You can also:

As all values for the fields are stored in an accessible TCL array, it is quite easy to add code for data validation or to show computed fields. There are provisions in the package for calling external routines before and after the database operations.

Sqlscreens can be used to build standalone database access applications, or to embed a database-access screen in another application. For example, in CDKIT, we manage a big musical database. We use sqlscreens mainly for data-entry screens, but we also embed it in the audio-acquisition application, to establish the link between the database and the audio files.

There are many other bells and whistles, but also a few drawbacks:

This said, the software is free and we are open to suggestions to improve it.

If you want a quick idea of what it does, do the installation, have a look at the tablescreen.tcl file in the samples directory, set the host and user name, and point it to any table, like:


tablescreen.tcl dbname tablename
 

This will create a screen with fields for all columns in the table (you may need to adjust the host and user names in the script or the environment to get the right permissions).

If you're reading this in a WEB browser, you can have a look at a few screen dumps to get a better idea.


Previous Next Table of Contents