Quick and dirty solution: add a column to your cursor with value indicating if town table was open.
>Hi everyone,
>
>These news got me absolutely shocked, I can not concentrate on finding a solution here, so I'm asking for help.
>
>I added this code into DE.BeforeOpenTables of report:
>
>set talk on
>select db.county, db.towncode, db.FY, Towns.FullName as city, count(*) as GrpCnt ;
> from dbf() db, Lookups!Towns ;
> where db.county=Towns.CABBREV and db.TownCode=Towns.TownOld ;
> group by 1, 2 ;
> order by 1, 4 ;
> into cursor curPrntReport
>select curPrntReport
>set talk off
>
>And I added this code into DE.Destroy:
>
>use in select('curPrntReport')
>
>Report uses default DS. I want to close Towns table, if it was not opened before. I don't want to use public variables (though it seems to be necessary here). Do you have other suggestions?
>
>Thanks in advance.
--sb--