Δεν είμαι σίγουρος ότι καταλαβαίνω απόλυτα το ερώτημα, αλλά κοίτα μήπως στου κάνει το παρακάτω:
'έστω form με ένα CrystalReportViewer component
Private Sub Load
Dim x as CrystalDecisions.CrystalReports.Engine.Reportdocument
Dim _ds as Dataset (ή ακόμα καλύτερα το Stongly Typed Dataset με το οποίο σχεδίασες το report στον Designer)
SuperDataAccessComponentOfEvil.RunQuery(QueryText, _ds)
x.SetDataSource(_ds)
'αν θες να περάσεις και παραμέτρους βάλε τις αντίστοιχες κλίσεις στην x.SetParameterValue(..)
myReportViewer.ReportSource=x
End Sub
Τα παραπάνω δεν είναι ακριβώς κώδικας, αλλά η λογική αυτή δουλεύει μια χαρά σε CR 8 και 9 (δεν έχω δοκιμάσει μεταγενέστερες εκδόσεις γιατί έχω ψυχολογικά με το συγκεκριμένο εργαλείο, αλλά δεν φαντάζομαι να έχει αλλάξει ιδιαίτερα η λογική).
The people of the straight land have really got it made, a warm friendly sleep from the craddle to the grave