HP ALLBASE/4GL User Interface [ COMMUNICATOR 3000/XL Release 1.2, Version A.20.10 ] MPE/iX Communicators
COMMUNICATOR 3000/XL Release 1.2, Version A.20.10
HP ALLBASE/4GL User Interface
by Keith Glennan--Australian Software Operation
The design requirements for the MPE XL release of ALLBASE/4GL includes
full portability of applications to and from ALLBASE/4GL running under
the HP-UX operating system.
One strength of the HP-UX ALLBASE/4GL product (previously known as HP
TODAY) is its user interface. This interface provides a high level of
user interaction, field-based editing and processing, and full use of
terminal features. The fundamental design principle for the user
interface is the WYSIWYG (What You See Is What You Get) philosophy.
Since the HP-UX version of ALLBASE/4GL uses character based input, its
user interface for the HP-UX product could not be used directly on MPE
XL.
The main features of the ALLBASE/4GL user interface on MPE XL can be
summarized as follows:
* The display always provides an accurate reflection of the actual
input (that is, a WYSIWYG interface).
* Field editing and terminal features, such as insert character and
delete character, are available.
* Field-by-field data validation is performed automatically, with
immediate detection and highlighting of user input errors.
* Logic (in the form of functions) can be executed before and after
each field is processed.
* The sequence of processing screen fields can be dynamically
controlled from the application logic.
* The application can display messages, and accept user responses via a
message "window" at the bottom of the screen.
* Excessive system input and output load is avoided since the user
interface does not use character based I/O.
This article describes the techniques used to obtain the required user
interface functionality on MPE XL.
FIELD MODE OPERATION
To satisfy the user interface requirements, the MPE XL ALLBASE/4GL
product uses a "field mode." In this mode, user input is transmitted on a
field-by-field basis when the field is "committed." A field commit is
generated by the user pressing [[RETURN]] (end of record), or by pressing
[[ TAB ]] (alternate end of record). This implies that all user input
must be terminated by one of the above two characters. In this sense,
user input includes cursor motion, backtab, and commands such as screen
redraw ([[CONTROL]] L) and screen printing ([[CONTROL]] P).
Since ALLBASE/4GL does not operate in block mode, the [[ENTER]] key is
not supported. Instead, ALLBASE/4GL uses a function key to allow the
user to terminate a screen.
Unlike products that operate in block mode (for example, applications
using VPLUS), the ALLBASE/4GL field mode allows validation of input data
on a field-by-field basis, and also allows the application to execute
logic before and after data entry in each field. Field-by-field
validation and processing means the application logic can detect user
input errors immediately. ALLBASE/4GL automatically highlights any field
that is committed in error, ensuring that the user corrects the mistake
immediately, before proceeding to further fields on the screen.
The field logic (in the form of ALLBASE/4GL functions) can alter the
order in which fields are processed, or perform other activities such as
retrieving data from the application database. If required, the logic
associated with a field can perform additional data validation or
formatting.
DISPLAY HIGHLIGHTING
The ALLBASE/4GL System Administrator can specify the display enhancements
(such as inverse video, flashing display, or underlining) that apply to
all terminals in the ALLBASE/4GL system. ALLBASE/4GL allows highlighting
and color attributes to be specified for screen elements such as input
fields, text literals, display fields, fields in error, and messages.
The highlighting and attributes for specific fields can be controlled and
changed as required from the application logic.
TERMINAL REQUIREMENTS
ALLBASE/4GL requires at least the terminal functionality provided by the
HP 2622 terminal.
ALLBASE/4GL uses terminal format mode to create "input" fields on the
screen. This ensures that the user can only enter or alter data in the
current input field.
Using protected fields enables the user to edit the data already in a
field. This approach avoids performance limitations due to excessive I/O
traffic associated with character mode, while still preserving the
WYSIWYG philosophy of ALLBASE/4GL.
Supported Terminals
The current release of ALLBASE/4GL supports the following terminals:
* HP 2622 to HP 2628
* HP 239x
* HP 700/9x
* HP 150
* HP Vectra PC (With terminal emulation software)
Terminal Communication System
ALLBASE/4GL uses a terminal communication system that is similar to the
HP-UX terminfo system. This system uses a number of terminal capability
files to determine the available terminal functionality and to drive the
terminal. Terminal capability files for all supported terminal types are
supplied with ALLBASE/4GL. These file are in the HP4TERM.SYS group.
ALLBASE/4GL uses an MPE XL variable to identify the terminal. This
variable can be set by the command file used to start ALLBASE/4GL, or by
a logon UDC.
The ALLBASE/4GL terminal capability files support all the normal display
enhancements and features provided by HP terminals, as well as the
line-drawing character set, color, and touchscreen operation.
MPE/iX Communicators