After it was explained, I understood how it works. My second question is about the contents of the Help system. What did I miss there that allows a newbee to understand just by reading? - Joe On Friday, November 30, 2007 10:10 PM, Gianni Turri wrote: > >Date: Sat, 01 Dec 2007 04:10:51 +0100 >From: Gianni Turri >To: profoxtech .at. leafe DOT com >cc: >Subject: Re: Execscript glitch? > >As Lew as already tried to explain, it is like doing the following: > >* ... your code > >do MyProcWithTheQuery > >?_tally > >* ... your code > >RETURN >* >FUNCTION MyProcWithTheQuery >local m.macro >m.macro = 'select CNT(*),' + m.fldstr +; > " DISTINCT FROM (m.InTbl) WHERE desthop > 0 and not INLIST('out'," +; > m.fldstr + ' ) GROUP BY ' + m.fldstr + ' INTO array Rarray' >¯o >ENDFUNC > >The scope of Rarray will default to local, local to MyProcWithTheQuery. >This is true also for simple memvar not only array. > >Unless you declare and define the variable before calling MyProcWithTheQuery (or EXECSCRIPT) >like in my first reply. > >HTH >Gianni > >On Fri, 30 Nov 2007 20:36:44 -0500, Joe Yoder <Joe@WheyPower.com> wrote: > >>Thanks Gianni and Lew, >> >>I guess that's one reason to use Execscript instead of macro >>substitution. I was trying to figure out if there were any advantages >>beyond the elegance of a one liner. >> >>I went back to the help but didn't find anything to indicate that an >>array created there would not be accessible in the following code. Is >>there a clue I am missing or am I just supposed to know?? >> >>TIA - Joe >> >>On Friday, November 30, 2007 7:03 PM, Lew wrote: >>> >>>Date: Fri, 30 Nov 2007 19:03:26 -0500 >>>From: Lew >>>To: profoxtech .at. leafe DOT com >>>cc: >>>Subject: RE: Execscript glitch? >>> >>>Your array will have been created as a local memvar within the script, so it won't be around when the script >>>finishes. Play around with the parameters idea then >>>local myarray[1] >>>execscript(cScript,@MyArray) >>>HTH >>> >>>-----Original Message----- >>>From: profox-bounces .at. leafe DOT com [mailto:profox-bounces@leafe.com] On Behalf Of Joe Yoder >>>Sent: Friday, November 30, 2007 6:39 PM >>>To: profox .at. leafe DOT com >>>Subject: Execscript glitch? >>> >>>I just coded an SQL select statement using execscript and found it won't create an array. If I substitute >>>"cursor" for "array" all is well. _Tally after code execution reports the correct value so the SQL apparently >>>runs but does not create the array. When I use macro substitution the array is created as expected. Does >>>someone have an explanation for this behavior? >>> >>> TIA - Joe >>> >>>Here is the code: >>>?EXECSCRIPT('select CNT(*),' + m.fldstr +; >>> " DISTINCT FROM (m.InTbl) WHERE desthop > 0 and not INLIST('out'," +; >>> m.fldstr + ' ) GROUP BY ' + m.fldstr + ' INTO array Rarray') >>> >>>?_tally > > [excessive quoting removed by server]
©2007 Joe Yoder |