HELP
An object that communicates with an HP
BASIC/UX process using transactions by way of
specified named pipes.  This object is
available in HP VEE-Test running on HP 9000
Series 300 or 400 only.

USE
Use To/From HP BASIC/UX to communicate with
an HP BASIC/UX program.  Be certain that you
understand how to use named pipes in the
HP-UX environment.

Type in the names of the pipes you wish to
use in the Read Pipe and Write Pipe fields.
Be certain that they match the names of the
pipes used by your HP BASIC/UX program and
that the read and write names are not
inadvertently swapped.  Use different pipes
for the To/From HP BASIC/UX objects in
different threads.

A To/From HP BASIC/UX object is generally
preceded by an Init HP BASIC/UX object.

LOCATION
I/O ==> HP BASIC/UX ==> To/From HP BASIC/UX

OPEN VIEW PARAMETERS
The open view shows the list of transactions
to be executed.

The Write Pipe and Read Pipe fields can be
added as control inputs.

OBJECT MENU

* Config - Allows you to view and edit
end-of-line sequences and formatting for
arrays.

* Add Trans - Adds a transaction to the end
(bottom) of the list.

* Insert Trans - Inserts a transaction before
(above) the currently highlighted
transaction.

* Cut Trans - Cuts (deletes) the currently
highlighted transaction, but saves it in the
transaction "cut-and-paste" buffer.

* Copy Trans - Copies the currently
highlighted transaction to the transaction
"cut-and-paste" buffer.

* Paste Trans - Pastes a transaction,
previously "cut" or "copied" to the buffer,
in the position before the currently
highlighted transaction.

NOTES
Because of the behavior of named pipes, it is
easiest to structure your HP VEE transactions
and corresponding HP BASIC/UX OUTPUTs and
ENTERs to transmit known or easily parsed
data blocks.  For example, if you are
transmitting strings, determine the maximum
length block you wish to transmit and pad
shorter strings with blanks.  This avoids the
problems of trying to read more data from a
pipe than is available and of leaving
unwanted data in a pipe.

To help prevent a READ transaction from
hanging until data is available, use a READ
IOSTATUS DATA READY transaction in separate
To/From HP BASIC/UX object.  This transaction
returns a 1 if there is at least one byte to
read, and a 0 if there are no bytes to read.

To read all the data available on the read
pipe until the read pipe is closed, use a
READ ...  ARRAY TO END transaction.

If you are running discless, be certain
you Read and Write to uniquely named pipes.

EXAMPLE
Here are typical To/From HP BASIC/UX settings
and the corresponding HP BASIC/UX program:

To/From HP BASIC/UX Object
   Write Pipe :  /tmp/to_rmb Read Pipe :
   /tmp/from_rmb
(These default pipes are created for you the
first time the object operates.)

HP BASIC/UX Program
   100 ASSIGN @From_vee TO "/tmp/to_rmb" 110
   ASSIGN @To_vee TO "/tmp/from_rmb" 120 !
   Your code here 130 ENTER
   @From_vee;Vee_data 140 OUTPUT
   @To_vee;Rmb_data 150 END

SHORT CUTS
To quickly insert a transaction, place the
cursor on a transaction.  Press [CTRL-O] to
insert a transaction over the transaction
where you placed the cursor.

To quickly delete ("kill") a transaction,
place the cursor on that transaction and
press [CTRL-K].

To paste a transaction from the "kill"
buffer press [CTRL-Y].

To quickly move to the next or previous
transaction, press [CTRL-N] or [CTRL-P]
respectively.

SEE ALSO
Init HP BASIC/UX and To/From Named Pipe.

"Using Transaction I/O" in Using HP VEE,
chapter 12.
