>Hi,
>
>I use the _tally system variable, to check the number of records processed by the most recently executed table command.
>
>if I use the SET FILTER TO some condition and the result is 0 record, I find that _tally is not return 0 value.
>
>How to check the no. of records after the SET FILTER TO command ?
Set filter is not really doing anything, it is not a multiple record spanning command (like list, count, calculate, sum, report and a few others are) which affect the value of _tally. It's only setting a condition which will apply on next such command. So you can't know the number of records complying with your filter until one of those runs on all currently visible records. The simplest one is COUNT. Whichever command you use, you'll be at EOF(), though.
A simpler way may be a
select count(*) from myalias where {condition here} into array aTally
Then aTally[1] is the number of records, and you aren't at eof().