SeeView Manual

SeeView Statements and Script Symbols
HP NonStop SeeView Manual—526355-004
9-171
String Intrinsics
In this example, messages are processed in FIFO order as they were received in
the last I/O block read.
#TASKOBJECTNAME
returns a string containing the file name of the current WITH taskid. If you
declared the WITH taskid with a TASK statement, the file name returned is the
program object file name on disk. Otherwise, the name returned is a pseudo
process name. The WITH taskid indicates which taskid’s attributes are returned
by the #TASK... intrinsics.
#TASKPAGENO
returns a numeric value representing the terminal page number where a window
exists for the current WITH taskid. If no windows exist for the current WITH
taskid, zero is returned so that you can use the intrinsic as a Boolean. The WITH
statement indicates which taskid’s attributes are returned by the #TASK...
intrinsics.
You can use this intrinsic to programmatically determine if and where there is a
window for a given taskid. For example:
#TASKPEERS
returns a string representing the number of peer tasks associated with the current
WITH taskid. If there are no peers, the value returned is zero. The WITH
taskid statement indicates which taskid’s attributes are returned by the
#TASKPEERS intrinsic.
Peer tasks share the same cache. For example, within SeeView, a FUP started
from a TACL is a peer to TACL. Both tasks share the same virtual memory cache.
VAR #s, i;
TASK request:=$OPS BLOCKEDIO ON;
TASK TACL;
DO BEGIN
READ request,#s;
WITH request;
i :=#TASKMSGSLASTREAD;
FOR #TASKMSGSLASTREAD DO BEGIN
READ request cache -(i),#s;
WRITE TACL,#s;
i:=i-1;
END;
END UNTIL 1;
WITH fup;
IF NOT #TASKPAGENO THEN BEGIN
MSG "No window exists for " & #TASKSYMBOL;
RETURN;
END;
PAGE #TASKPAGENO;