March 2004
Interface package
extends 3000 applications reach
QCForms takes MPE programs into windowed worlds
Finding new software that can remake HP 3000
applications isnt difficult in the transition era. Whats
become rare is the new program that lets developers improve apps on
MPE/iX, while carrying those enhancements to other environments,
too. A new software
product from AICS Research
proposes to let 3000 shops do such transformations. QCForms, which
the company is just releasing within its QCTerm suite after an
extensive testing period, delivers graphical triggers such as
checkboxes, radio buttons and smart fields, all without requiring
change to application code. The new interface elements work in Unix
environments as well as under MPE, giving the redressed apps
someplace to go in the future.
The software is contained within the QCTerm terminal
emulation suite that AICS Research has been offering for free for
several years. That product, built in plain view of the 3000
community through open testing, redesign and public betas, now
includes QCForms in its ability to emulate HP 3000 terminals. QCForms
will be offered on a per-seat license plan, while QCTerm remains
free.
QCForms differs from two of the most standard
architectures for screen display. Instead using a page mode, like
VPlus that transmits a page of data at a time, or line mode like
character-based screens, QCForms uses what AICS founder Wirt Atmar
calls Field Mode.
When you enter an active objects field,
whether its a text entry box, pick list, radio buttons, etc.,
QCForms memorizes the current state of the field, Atmar says.
If you leave the field without changing anything, nothing
happens. But if you modify the value of the field, those
modifications are transmitted to the host computer in this fashion:
fieldname:newfieldvalue. An example might be something like
lastname:Seybold.
The only control character thats
important to QCForms is the carriage return character. The CR
indicates that the line is complete. LFs, Nulls and the like are
simply ignored.
While using QCForms, programmers include one IF
statement for each active object on the form. One of these IF
statements would match up to a button object on the screen that would
say something like Submit or Enter. Pressing that button signals the
host application to take the received data, process it for
consistency and then either record all of the received values in a
database or reject the screen for some reason.
The simplicity of the design means that QCForms can
allow a users entry of 5055249800 to be formatted and returned
as (505) 524-9800. All of this would occur within that
fields particular IF statement in the host application. The
same is true of currency conversions. The currency conversion tables
would reside on the host and could be updated every night, so that
money entered in any currency could be converted into todays
dollars.
The softwares design allows a developer to
update other fields with the most recently entered data. For example
on tax forms, Line 20 is often the sum of Lines 17, 18, and 19.
Entering any new values into any of those lines updates Line
20s value automatically. Or entering CA in a state field could
update a pick list of counties for that state.
Automation is key to the architecture. Once a
few fields at the top of the form were filled out by a user, the host
application could dynamically redraw the bottom part of the form
appropriately to the values entered, Atmar says.
He explains that the developers at AICS have worked
to make both QCTerm and QCForms platform-agnostic, after HPs
release of its 3000 business two years ago.
Losing HP as a trusted partner has
caused us not to trust anyone anymore, not IBM, not Unix, not even
Linux, he says, a stance that we probably should have
adopted much earlier on our own, under any
circumstance.
QCForms only requires that the host have telnet
capabilities, something the 3000 has had for many years. QCForms uses
no escape sequences. It restricts its conversations to the printable
ASCII character set, Basically any host is acceptable,
Atmar said, regardless of its phylogenetic
history.
Developing potential
Several HP 3000 veterans who have assisted in beta
testing QCForms said the forms cross-platform profile was one
of the biggest advantages of the software.
You can use it to extend applications, as an
intermediate step, said John Burke, a member of the MPE Forum
and owner of Burke Consulting and Technology Solutions. You can
convert your VPlus screens to QCForms, and if you decided to convert
to Linux or Unix later on, you can bring your forms
over.
Burke compared the conversion effort in using QCForms
on VPlus screens to the automated tool offered by ScreenJet, noting
that the AICS software seems to deliver an end-result that runs
anywhere, with any language.
Its a lot more work than using
ScreenJets tools to convert to Acucorps COBOL,
Burke said. But QCForms is platform-neutral. Burke also
noted that QCForms doesnt support the VPlus editing language,
used to make calculations in numeric fields.
But QCForms looks to have a cleaner replacement in
its scripts. Frank Smith, an application developer whose Alden
Research firm trains customers in HP 3000 skills, said his firm will
offer a conversion service that uses QCForms to migrate applications
written with VPlus screens. Smith said QCForms language and
platform independence seems unique.
Its got a degree of flexibility I
dont think others offer, he said. Its
remarkably easy to work with, too. If you can write in any language
that can read and write from the standard input and output devices,
you can write for QCForms: Basic, C, Fortran, or any of the more
modern languages you can choose.
Smith, who said hes written with VPlus
intrinsics since that screen language was called DEL/3000 back in the
1970s, said QCForms doesnt demand any fluency in VPlus.
If you havent worked with VPlus, that actually
helps, he said. Writing simple reads and writes to a
terminal interface like QCForms does thats
elegant.
Today, even if youre staying on the HP
3000, the option should be to write in as open a fashion as
possible, Smith said. That means your avenues of escape
are as open as possible.
Escape might not be on a QCForms users mind,
though. While Smith plans to use QCForms as a migration tool away
from the platform, he also sees the potential for the new interfaces
to expand the capability of the HP 3000s applications. The
typical VPlus form discouraged improvements.
These QCForms are easily customizable, he
said. Once you create a VPlus form, youre reluctant to do
much with it, because that would mean recompiling and some recoding.
With QCForms, you write a script that generates the form, and the
script is easily changeable in many cases without making any
changes to application code.
Multi-line fields posed problems in VPlus, Smith
said, while QCForms has definitions within its language that allows
for the number of lines to expand as needed in a field. The
flexibility impressed John Burke, too.
Can you add things easily like pick lists or
radio buttons? Absolutely, said Burke. I have a lot of
hope for it. Since these interface improvements can give older
HP 3000 applications a new lifespan, the software proposes to serve
homesteading customers as well as those preparing to migrate. 3000
shops without VPlus skills can employ QCForms instead.
People have the ability to make these changes
if they have the ability to deal with a very simple procedural
language, Smith said.
|