Подтвердить что ты не робот

Как создать файл RDLC с использованием С# во время выполнения

Я занимаюсь разработкой приложений (CRM-решение), которые требуют схематически показывает файл RDLC во время выполнения. Как это сделать?

4b9b3361

Ответ 3

Могу ли я подтвердить, что вы пытаетесь создать решение динамической отчетности на основе RDLC, или вам просто нужно добыть данные, хранящиеся в CRM, и показать их в RDLC. Я думаю, вы исчерпали другие инструменты, такие как Proclarity и Excel для пользователей, чтобы добывать данные.

Если предположить, что первый (т.е. дизайнер RDLC), то RDLC - это всего лишь XML файл, поэтому, я думаю, вы могли бы создать простые стандартные RDLC, содержащие источники данных, определения полей, ячейки и т.д., применяя XSLT после первого экспорта какого-либо xml "модель" от вашего дизайнера?

Похоже на большую работу;)

Ответ 4

ВСЕ, что вам нужно сделать, это изменить источник данных путем кодирования. как

        ReportViewer.LocalReport.DataSources.Clear();
        ReportViewer.ProcessingMode = Microsoft.Reporting.WinForms.ProcessingMode.Local;


        ReportDataSource RDS = new ReportDataSource();
        RDS.Name = "DataSet";


        RDS.Value = itemReportTableBindingSource;
        ReportViewer.LocalReport.ReportEmbeddedResource = "RFID.Reports.ItemsReport.rdlc";
        ReportViewer.LocalReport.DataSources.Add(RDS);

        this.itemReportTableTableAdapter.Fill(this.reportsDataSet.ItemReportTable);
        this.ReportViewer.RefreshReport();

Ответ 5

Вам следует проконсультироваться по этой ссылке, это может быть полезно

Как динамически добавлять новые столбцы в отчет, созданный с помощью служб Reporting Services?

Отчет RDLC - это XML файл, и, редактируя его в XMLDocument, вы можете изменить locate/Report/Body/ReportItems/Table node и сделать внутри него

  • определить заголовок нового столбца - добавить новый TableCell внутри заголовка node
  • связывает столбец с данными (из DataTable) - добавляет новый TableCell внутри node
  • определить ширину colum - добавить новую TableColumn внутри TableColumns