EasyManua.ls Logo

HP TACL - Figure 5-12 Communicating with FUP Using #SERVER

HP TACL
235 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
Using #SERVER
Initiating and Communicating With Processes
5–30 107365 Tandem Computers Incorporated
Sending Commands
When your TACL program has a server path, other processes can open it and issue
WRITEREAD operations. TACL receives a prompt; your TACL process can then write
to the other process. This code is exactly the same as that used with #REQUESTER in
“Using $RECEIVE,” earlier in this section.
Use the macro in Figure 5-12, serv, to communicate with a FUP process. The macro
obtains a server name and then uses it for the IN and OUT files of the FUP process.
The macro requests an INFO * operation.
Figure 5-12. Communicating With FUP Using #SERVER
?SECTION serv MACRO
#FRAME
#PUSH server_name in_v out_v prompt_v response lines
== Assign a name to this process
#SET server_name [#SERVER /IN in_v, PROMPT prompt_v, OUT
out_v/]
== Start FUP and use this process for its IN and OUT files
FUP /IN [server_name], OUT [server_name], NAME $fp, NOWAIT/
== Wait for a prompt and issue a command
SINK [#WAIT prompt_v]
#APPEND in_v INFO *
SINK [#WAIT in_v]
SINK [#WAIT out_v]
== When we have a result, extract it and display all lines
#SET lines [#VARIABLEINFO /LINES/ out_v]
[#LOOP |WHILE| lines > 0 |DO|
#EXTRACTV out_v response
#OUTPUTV response
#SET lines [#COMPUTE [lines] - 1]
]
STOP $fp
#UNFRAME
Note You could use #NEWPROCESS instead of RUN in the previous example, which would allow you to
handle the results of the process initiation.

Table of Contents

Related product manuals