Bill,
Yes, it sounds like a UV:UD difference, & yes, a UD deficiency.
Unless UD-basic or maybe a switch in the VOC's V-item, or something else
that can alter the default behaviour. I know there is something akin to
uv flavours that affects how things run, "ECL-type" is it?
See if the UD doc shows some way to do what the UV documentation says,
which is as follows:
In UV-basic there are compiler options:
$OPTIONS EXEC.EQ.PERF compiles the EXECUTE statement as the
PERFORM statement.
$OPTIONS PERF.EQ.EXEC compiles the PERFORM statement as the
EXECUTE statement.
$OPTIONS PIOPEN.EXECUTE EXECUTE behaves similarly to the way it does
on PI/open systems.
The default behaviour:
* PERFORM: The commands are executed in the same environment as the
BASIC program that called them; that is, unnamed common variables,
@variables, and in-line prompts retain their values, and select lists
and the DATA stack remain active. If these values change, the new values
are passed back to the calling program.
* EXECUTE creates a new environment for the executed command. This new
environment is initialized with the values of the current prompt,
current printer state, Break key counter, the values of inline prompts,
KEYEDITs, KETRAPs, and KEYEXITs. If any of these values change in the
new environment, the changes are not passed back to the calling
environment. In the new environment, stacked @variables are either
initialized to 0 or set to reflect the new environment. Nonstacked
@variables are shared between the EXECUTE and calling environments.
@date, @time are stacked. There is an appendix that lists all of them.
Maybe a UD guru will jump in here.
cds
Charles:
When I run a command from our TCL shell's prompt the command is
executed. Thus the query is executed from a BASIC program. When I
list the data calculated in the virtual attribute subroutine (an
I-descriptor), the @DATE and @TIME value are static. When I run the
query from real ECL the date/time are reset. So, in UD @DATE and
@TIME aren't reset in a called child process. When I create a
program that PERFORMs the query then run the program from our TCL
shell (the query's executed from BASIC) the @DATE and @TIME don't
change either.
So it seems there is nothing I can do in UD to alter these two @
variables as long as I'm running from BASIC. Thus, a called
subroutine from a virtual attribute can't be initialized at the
beginning of the query.
Wouldn't this seem like a deficiency to you?
Thanks,
Bill
_______________________________________________
U2-Users mailing list
[email protected]
http://listserver.u2ug.org/mailman/listinfo/u2-users