Как запустить файл локального отчета (.rdl)?

#c# #report

#c# #Сообщить

Вопрос:

Есть ли простой способ запустить файл .rdl, программно указав его параметры, но без добавления набора данных и файла .rdl в ваш проект. После этого отчет должен быть сохранен в виде файла (word, pdf).

 ReportViewer reportViewer = new ReportViewer();
reportViewer.ProcessingMode = Microsoft.Reporting.WebForms.ProcessingMode.Local;
reportViewer.LocalReport.ReportPath = @"Path for my local report";

ReportParameter[] repParameters = new ReportParameter[1];
repParameters[0] = new ReportParameter();
repParameters[0].Name = "Batch";
repParameters[0].Values.Add("Test");
  

Как я могу добавить строку подключения и сохранить файл? Есть предложения?

Ответ №1:

Есть свойство reportViewer.LocalReport.DataSources . Это будет содержать ваши источники данных времени разработки, если таковые имеются. Вы можете очистить его, добавить новый ReportDataSource и установить его .Value = new DataTable() и .Name = "<NameTheReportItemExpects>" . Таким образом, вы можете создать DataTable полностью в коде.

Ответ №2:

Если это так, лучший способ — настроить службу отчетов SQL Server (локально или удаленно). Быстрее создавайте и разрабатывайте свой отчет с помощью SSDT (SQL Server Data Tools). Затем разверните все свои отчеты на сервере отчетов SSRS. Затем предоставьте свои учетные данные вашему серверу отчетов (локальному или удаленному) :

  ReportViewer1.ProcessingMode = ProcessingMode.Remote;
        IReportServerCredentials irsc =new CustomReportCredentials("administrator", "MYpassworw", "mydomain");
        ReportViewer1.ServerReport.ReportServerCredentials = irsc;
        ReportViewer1.ServerReport.ReportServerUrl = new Uri("http://192.168.0.1/ReportServer/");
        ReportViewer1.ServerReport.ReportPath = "/autonarudzba/listanarudzbi";
        ReportViewer1.ServerReport.Refresh();
  

Теперь вы можете видеть, что нет необходимости предоставлять какие-либо источники данных или наборы данных.
для настройки сервера отчетов, пожалуйста, воспользуйтесь этой ссылкой:
https://www.sqlshack.com/sql-server-reporting-service-configuration-manager /

Это лучший подход к работе с SSRS, поскольку этот метод сэкономит вам массу времени, плюс ваши отчеты будут отображаться изначально сервером. Я надеюсь, что это поможет.