Hola, si ya tienes creados los DataSet como objetos XSD, tendrias que crear el reporte con el DataTable del DataSet y mas no con el resultado de la base de datos.
Algo parecido a esto:
-DSFidoc es mi objeto DataSet (XSD)
-rpt es mi ReportDocument
-CRV1 es mi CrystalReportViewer
-ruta es la ruta fisica de mi reporte
ReportDocument rpt = new ReportDocument();
DSFidoc xds = new DSFidoc();
....
....
....
rpt.Load(ruta);
rpt.SetDataSource(xds);
CRV1.ReportSource = rpt;
espero esto te ayude. Cualquier consulta a disposición.
[email protected]