Some said, CR is slow. Some said CR is great! Question is what are the ways to make your CR's DB Retrieval fast.

I dont know if I made it right. I got a SQL Database and VS2003. I used the CR VS2003 in my application. What I did is..

1. I create a SP in the SQL Server DB (Complex one..more inner joins/outer join/sometimes CROSS join..with Parameters like Date Range, Type Criterias, etc, etc)
2. I retrieve my SP using the SQLCommand Object, SqlDataAdapter and DataSet
3. I layout already the CR using the Wizard and using my SP with parameters needed.
4. Coding the Form, retrieving the Data using the Step 2. and coz I want my End user to have a flexible options I programmatically allow my user to change the DataSet and uses this coding

VB Code:
  1. oCrystal.SetDatabaseLogon("MyServer", "pass", "user", "dbname")
  2. oCrystal.SetDataSource(MyDataSet.Table(0))

What are still the best way to make your CR DB Retrieval fast??

Any insights, suggestion, comments, etc are appreciated. TY