[email protected] said the following on 8/22/2009 6:34 PM:
The message's content type was not explicitly allowed
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
------------------------------------------------------------------------
Charles Stevenson said the following on 8/22/2009 6:11 PM:
An interesting note to this is I use a TCL shell written in BASIC;
in fact, all of our application menus run in BASIC. Consequently,
@DATE in the BASIC subroutine is always the same whenever I run the
"SORT..." from the TCL shell.
Bill,
On UV -- I don't know about UD -- @date & @time are set for child
programs that are EXECUTEd, but not if they are CALLed or PERFORMed.
That is partly configurable, maybe configurable on UD, too?
So it would depend on how your menu & tcl shell basic programs kick
off programs. Here's a set of 3 sample progrrams and a cut&paste of
their output when run.
Notice @time is always 64814 except for during the two EXECUTEs
(64818, 64822).
Notice @time reverts back to its original 64814 after returning from
each EXECUTE.
UV 10.3 PE, Windows
See if you get the same on UD.
ATTIME.TOP
0001 CRT 'STARTING ATTIME.TOP'
0002 CRT '@TIME=':@TIME
0003 SLEEP 2
0004 CALL ATTIME.SUB
0005 CRT '@TIME=':@TIME
0006 SLEEP 2
0007 EXECUTE 'ATTIME.VERB'
0008 CRT '@TIME=':@TIME
0009 SLEEP 2
0010 PERFORM 'ATTIME.VERB'
0011 CRT '@TIME=':@TIME
0012 SLEEP 2
0013 CRT '-------------'
0014 EXECUTE \LIST VOC "SELECT" EVAL "@TIME"\ ; * arbitrary
file & item
0015 CRT '-------------'
0016 CRT '@TIME=':@TIME
0017 SLEEP 2
0018 CRT '-------------'
0019 PERFORM \LIST VOC "SELECT" EVAL "@TIME"\ ; * arbitrary
file & item
0020 CRT '-------------'
0021 CRT '@TIME=':@TIME
ATTIME.SUB
0001 SUBROUTINE ATTIME.SUB
0002 CRT ' STARTING ATTIME.SUB'
0003 CRT ' @TIME=':@TIME
0004 CRT ' RETURNING'
0005 RETURN
ATTIME.VERB
0001 CRT ' ':@SENTENCE
0002 CRT ' @TIME=':@TIME
0003 STOPM ' STOPPING ATTIME.VERB'
>
>RUN BP ATTIME.TOP
STARTING ATTIME.TOP
@TIME=64814
STARTING ATTIME.SUB
@TIME=64814
RETURNING
@TIME=64814
ATTIME.VERB
@TIME=64818
STOPPING ATTIME.VERB
@TIME=64814
ATTIME.VERB
@TIME=64814
STOPPING ATTIME.VERB
@TIME=64814
-------------
LIST VOC "SELECT" EVAL "@TIME" 06:00:22pm 22 Aug 2009 PAGE 1
VOC......... @TIME.....
SELECT 64822
1 records listed.
-------------
@TIME=64814
-------------
LIST VOC "SELECT" EVAL "@TIME" 06:00:24pm 22 Aug 2009 PAGE 1
VOC......... @TIME.....
SELECT 64814
1 records listed.
-------------
@TIME=64814
>
_______________________________________________
U2-Users mailing list
[email protected]
http://listserver.u2ug.org/mailman/listinfo/u2-users
_______________________________________________
U2-Users mailing list
[email protected]
http://listserver.u2ug.org/mailman/listinfo/u2-users