SETSYSTEMVAL acting strange - VMS

Bill.Michael@ipaper.com Bill.Michael@ipaper.com
Fri, 30 Apr 1999 12:55:42 -0500


>In the QUICK screen the symbol declared local to that process.  When a DCL
>command is spawned, it is a new process and knows nothing about the symbol
>declared in the QUICK.  It does however know about the symbol declared in
>the login.com as that is common to all interactive processes under the
>current login session (and batch processes too).

Another answer;

>2. Set CLI symbols using RUN COMMAND, so they are available in your
>subprocess:
> LET T-CMD = 'MDS$MILL_NO:==' + T-MILL
> RUN COMMAND T-CMD


I added a couple of lines, to define the global symbol "manually", not
relying on QUICK at all (although the book says SETSYSTEMVAL is global)
as suggested;

    LET T-CMD = "DELETE/SYMBOL/LOCAL MDS$MILL_NO"
    RUN COMMAND T-CMD REFRESH SCREEN
    IF NOT SETSYSTEMVAL("MDS$MILL_NO",T-MILL,SYMBOL)
      THEN ERROR "*E* Could not set Mill number. Please contact IS."

         LET T-CMD = "MDS$MILL_NO :== " + T-MILL   ;NEW
         RUN COMMAND T-CMD REFRESH SCREEN          ;NEW

    LET T-HOLD-MILL = GETSYSTEMVAL("MDS$MILL_NO",SYMBOL)
    IF T-HOLD-MILL <> T-MILL
      THEN ERROR "*E* Could not set Mill number. Please contact IS."

Got the same results with QDESIGN - it's not just setting the symbol as
"local", it's actually storing & resetting
it on exit. However, compiled and doing a "RUN COMMAND", it works fine.

Thanks!

Bill
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Subscribe: "subscribe powerh-l" in message body to majordomo@lists.swau.edu
Unsubscribe: "unsubscribe powerh-l" in message to majordomo@lists.swau.edu
powerh-l@lists.swau.edu is gatewayed one-way to bit.listserv.powerh-l
This list is closed, thus to post to the list, you must be a subscriber.