I have not had any problems getting reports to read from DataSets. (I generally do this in WinForms utility programs written in C#.) Here is the process I use:
Given two forms - one for generating the data (Data Form) and one for viewing the report (Viewer Form).
1. In the Data Form, fill the DataSet.
2. In the Data Form, create an instance of the Viewer Form.
3. From the Data Form, call a public method in the Viewer Form to Configure the report. This method takes a DataSet as an input parameter.
4. In the Configure method of the Viewer Form, create an instance of the report, set the data source of the report to the DataSet parameter, set the ReportSource of the viewer to the report.
5. From the Data Form, show the Viewer Form.
You can modify this process to fit your needs. The important part that MUST be done in this order is:
1. Generate the data.
2. Set the DataSource for the report.
3. Set the ReportSource for the viewer.
-Dell