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

136 Chapter5
Internet and Interoperability
Transact/iX Expanded B-Tree and File Open Enhancement
file when the file is first used in a Transact/iX program.
PASSED does not open the file - generally the file id is
passed from another program. If neither DEFER or PASSED
is specified, then DEFER is assumed. DEFER is the way
Transact/iX worked prior to this enhancement.
KSAM= file-name[(access)[(
file-option-list
)]].
See FILE= for DEFER and PASSED options.
LIST Statement
The next statement that Transact/iX needed to enhance is the LIST statement. The new
syntax is shown below.
Syntax
LIST item-name[,
option-list
]; << Adds the item-name to the list >>
<< register.>>
Parameters
Option-list
Specifies a value to be placed in the data register. For
current options, refer to the Transact Reference Manual.
BASEID[(base-name)] An X(2) item that contains the database id passed from a
main program assigned to a database by TurboIMAGE's
DBOPEN. If no base-name is specified, then the home base
is assumed. Note, the home base cannot be specified.
FILEID(file-name) A 16-bit integer (I(5,,2)) containing the file identifier
assigned to a file by MPE's FOPEN.
The database/file on the SYSTEM statement should have the PASSED option or an error will
occur. Any database/file name in the SYSTEM statement can actually be a different named
database/file. There is not a check to verify that the database/file names are actually the
same.
For example, if the calling program opened a database named PEOPLE, then Transact/iX
assigns that database id to its database name of EMPLOYEES (structured the same as
PEOPLE):
LIST people-id,BASEID(employees);
Example: Pascal Code - Main Program
Here is an example using Pascal to call Transact/iX.
.
.
.
type
data_record = packed record
x_type : packed array[1..8] of char;
id_type : packed array[1..2] of char;
filler : packed array[1..48] of char;