try this.
After collecting data in dataAdapter fill data set like this and move on..
da.Fill(ds,"TableName")
Dim cryRpt As New ReportDocument
cryRpt.Load("PUT CRYSTAL REPORT PATH HERE\CrystalReport1.rpt")
cryRpt.SetDataSource(ds.Tables(0))
CrystalReportViewer1.ReportSource = cryRpt
CrystalReportViewer1.Refresh()