Try moving ? _TALLY immediately after the SELECT.
Prior to ?RECCOUNT(), do SELECT tmp.
-myron kirby-
=======================
>Is there an explanation why RECCOUNT() doesn't return the right value in the following code ?
>
>
>create table t1 (f1 C(1))
>insert into t1 (f1) VALUES ("A")
>
>create table t2 (f1 C(1))
>insert into t2 (f1) VALUES ("B")
>index on f1 tag f1
>
>select "t1"
>scan
> SELECT * FROM t2 WHERE f1 = t1.f1 INTO CURSOR tmp
> ? reccount()
> ? _tally
>endscan
>
>
>RECCOUNT() returns 1 while it is supposed to return 0. This problem occurs only if you create an index on f1 in table t2. Without the index, it returns 0.
>
>Thanks.