>I assumed (and you know what happens when someone does this) that in a properly created n-tier app the UI-tier is "shielded" from direct access to the DB-tier through use of middle-tier business objects.
>
>Therefore, UI-tier passes business objects back-and-forth from/to middle-tier and middle-tier actually passes data (recordsets) from/to DB-tier, etc.
>
>Most articles/books about VB and n-tier/DNA approach seems to take this path. However, one thing most, if not all sources I've read forget to mention is how you should design reports under this design.
>
>If I'm using VB and the default Crystal Reports, how should I setup the reports on the UI-tier? AFAIK, CR doesn't work with business objects but directly with the data source.
In many apps, my middle tier returns ADO disconnected recordset (set rs.activeconnection = nothing) to my presentation tier. A good example of that is reports. I am often using Active Reports which can take an ADO recordset for input (just like your Crystal Reports).
Éric Moreau, MCPD, Visual Developer - Visual Basic MVP
Conseiller Principal / Senior Consultant
Moer inc.
http://www.emoreau.com