Doug,
>Actually, NoDataOnLoad is set to .F. in the cReportDynamicViewCursor class. That is probably why I'm getting deleted records.
>
>That means that the default behavior for views for reports is to select even deleted records? Is that true?
>
>What is the best way, with the framework, to get around this?
Originally, the CDataEnvironment class SET DELETED OFF before opening views for optimization purposes...however, as you discovered, if the view's NoDataOnLoad is set to .F., your resulting view will contain deleted records.
I have fixed this problem in an update of the Framework that I will be uploading in the next day or so (check your e-mail). It really boils down to the fact that CDataEnvironment cannot SET DELETED OFF before executing OpenTables() since the data environment may contain some views with NoDataOnLoad set to True and some to False.
Regards,
Kevin McNeish
Eight-Time .NET MVP
VFP and iOS Author, Speaker & Trainer
Oak Leaf Enterprises, Inc.
Chief Architect, MM Framework
http://www.oakleafsd.com