Я использую Wpf для просмотра некоторых отчетов с помощью Report Viewer .. Я разработал отчет, используя sql report builder 'ReportByTopic.rdl', добавив его в решение. DataSet внутри файла rdl под названием «DataSet1» и есть три параметра @TopicId, @ SDATE, @EDate испытанных запрос и он работает нормальноЗагрузка отчетов Microsoft надлежащим образом
Я пытаюсь загрузить filterd данные в ReportViewer, но никаких данных не рассматриваются
и вот код
private void reportViewer_load()
{
ReportParameter[] Params = new ReportParameters[3];
Params[0] = new ReportParameter("TopicId", "4");
Params[1] = new ReportParameter("SDate", "2009-01-01");
Params[2] = new ReportParameter("EDate", "2017-01-01");
ReportDataSource rds = new ReportDataSource();
rds.Name = "DataSet1";
reportViewer.LocalReport.ReportPath = "Reports\ReportByTopic.rdl";
reportViewer.LocalReport.DataSource.Add(rds)
reportViewer.LocalReport.SetParameters(Params);
reportViewer.Refresh();
}
так, где я ошибся
UPDATE
Исходя из ответов, которые я сделал некоторые изменения в коде выше. Сначала я использовал метод GetData, который возвращает данные всех необходимых мне данных, используя тот же запрос, который я использовал для создания файла rdl. Отредактированного код
private void reportViewer_load()
{
ReportParameter[] Params = new ReportParameters[3];
Params[0] = new ReportParameter("TopicId", "4");
Params[1] = new ReportParameter("SDate", "2009-01-01");
Params[2] = new ReportParameter("EDate", "2017-01-01");
ReportDataSource rds = new ReportDataSource("DataSet1", GetData());
reportViewer.LocalReport.ReportPath = "Reports\ReportByTopic.rdl";
reportViewer.LocalReport.DataSource.Add(rds)
reportViewer.LocalReport.SetParameters(Params);
reportViewer.Refresh();
}
Объект DataTable получает правильно заполнен 900 строк, но все-таки ReportViewer не
См. Обновление ответа на основе обновленного кода. –