alexvw
всем привет,
Может быть, я и ошибаюсь, но ... .УДР файлы принадлежат службам SQL Reporting Services (SSRS), а ReportViewer-это элемент управления winforms/webforms, который обрабатывает .с отчетами файлы. Похоже, что ваш пример кода принадлежит веб-форме.
Как уже упоминалось, большая часть требуемого кода для обоих winforms/webforms в основном одинакова, но есть некоторые незначительные различия, которые нельзя игнорировать.
Пример веб-формы(rptVwr - это имя, которое я дал элементу управления ReportViewer):
DataSet ds = Your method to get the required data;
rptVwr.ProcessingMode = ProcessingMode.Local;
rptVwr.LocalReport.EnableExternalImages = true;
rptVwr.LocalReport.ReportPath = "Reports/DTE.rdlc";
rptVwr.LocalReport.DataSources.Clear();
rptVwr.LocalReport.DataSources.Add(new ReportDataSource("Dcto", ds.Tables[0]));
rptVwr.LocalReport.DataSources.Add(new ReportDataSource("Events", ds.Tables[1]));
rptVwr.LocalReport.DataSources.Add(new ReportDataSource("AuxData", ds.Tables[2]));
rptVwr.LocalReport.Refresh();
Приложения WinForms пример (RepVwer такое название я дала, чтобы элемент управления reportviewer ):
... DataSet ds = here goes your method to get the required data;
RepVwer.ProcessingMode = ProcessingMode.Local;
RepVwer.LocalReport.ReportEmbeddedResource = "DTEViewer.rdlc.DTE.rdlc";
RepVwer.LocalReport.DataSources.Clear();
RepVwer.LocalReport.DataSources.Add(new ReportDataSource("IdDoc", ds.Tables[0]));
RepVwer.LocalReport.DataSources.Add(new ReportDataSource("Emi", ds.Tables[1]));
RepVwer.LocalReport.DataSources.Add(new ReportDataSource("Recep", ds.Tables[2]));
RepVwer.LocalReport.DataSources.Add(new ReportDataSource("Details", ds.Tables[3]));
RepVwer.LocalReport.DataSources.Add(new ReportDataSource("Totals", ds.Tables[4]));
this.RepVwer.RefreshReport();
Если вам нужно передать параметры в отчет, создайте массив, назначьте все необходимые значения и добавьте его в отчет:
ReportParameter[] repParams = new ReportParameter[3];
repParams[0] = new ReportParameter("MyParam1", "false");
repParams[1] = new ReportParameter("MyParam2", nroOper);
repParams[2] = new ReportParameter("MyParam3", "blah, blah, blah!");
LocReport.LocalReport.SetParameters(repParams);
Именно так я настраиваю элементы управления ReportViewer, назначаю отчет для использования, связываю данные и, наконец, отображаю их.
Надеюсь, это поможет; ура!