Communicator e3000 MPE/iX Release 6.5 (Non-Platform Software Release C.65.00 (30216-90291)

132 Chapter5
Internet and Interoperability
Transact/iX Expanded B-Tree and File Open Enhancement
Transact/iX Expanded B-Tree and File Open Enhancement
by James Overman
Commercial Systems Division
Hewlett-Packard has implemented two more enhancements in Transact/iX
(HP30138A.07.00). They are:
Expanded support of TurboIMAGE B-tree
Ability to pass database and file ids to Transact/iX
Support of B-Trees in Transact
With the release of IMAGE/SQL that provided TurboIMAGE B-trees, Transact/iX
supported a portion of that feature. The Simple Argument structure of DBFIND was
supported requiring no modifications to the Transact language. A FIND for X or U type
items having B-tree indices and with the BTREEMODE1 option
ON performs index searching
with a wildcard character.
Here's an example. First, assume the BTREEMODE1 option is set
ON for this database. Also,
B-tree indices have been created for the key item of the master data set allowing for
indexed retrievals. See the TurboIMAGE Reference Manual if you are not familiar with
B-tree indexing.
In Transact, the source code would look like the following:
MOVE (NAME) = "Sm@";
SET(KEY) LIST(NAME);
OUTPUT(CHAIN) PEOPLE, LIST=(NAME);
This program would display all names in the detail data set, PEOPLE, which begin with
"Sm".
Smalley
Smith
Smythe
The full capability of B-trees required more functionality to be added to Transact/iX. HP
has expanded upon the Simple Argument DBFIND by allowing other DBFIND modes to be
specified. By allowing the DBFIND mode and the argument (structured or simple) to be
specified, Transact/iX supports the full capability of TurboIMAGE B-trees.
The Structured Argument can be specified by the
SET(KEY) and LIST(KEY) statements. The
SET(KEY) sets both the argument and key registers to the search argument item. The
LIST(KEY) statement resets the key register to the search or key item. The Structured
Argument item can be constructed via parent/child items or with simple items using string
functions and concatenation.
Transact/iX has an added FINDMODE option on DELETE, FIND, GET, OUTPUT, REPLACE,
and PATH statements. The syntax looks like:
FIND(CHAIN) dataset, LIST=(item1:item3), FINDMODE=4;