Отобразить отчет RDLC как документ Word (как документ, а не документ)

Нам нужно создать отчет RDLC непосредственно в формате Word или PDF без использования средства просмотра отчетов. Здесь у нас есть два вопроса.

1) При рендеринге отчета в формате docx используется формат "WORDOPENXML". MS Word (2013) не может открыть сгенерированный файл. Это дает следующую ошибку,

Мы сожалеем, что не можем открыть docx, потому что обнаружили, что файл с содержимым поврежден и не может быть открыт.

Однако он может быть сгенерирован как документ, используя формат "WORD". Тогда он может быть успешно открыт.

Но я предпочитаю генерировать его как Docx, если это вообще возможно.

2) Хотя мы можем сгенерировать его как файл документа, фоновые изображения в разделе заголовка отсутствуют. Мы использовали бланк в качестве фонового изображения отчета.

Нет проблем при создании отчета в формате PDF.

Вот код, используемый для генерации отчета.

 ReportViewer reportViewer = new ReportViewer();         
 LocalReport localReport = new LocalReport();
 localReport.ReportPath = Path.Combine(_env.ReportPath, "RollReport.rdlc");

  //Set the datasource for the report
  localReport.DataSources.Clear();
  localReport.DataSources.Add(new ReportDataSource("Details", dtBCDetails));
  localReport.DataSources.Add(new ReportDataSource("Properties", dtPropDetails));
  localReport.DataSources.Add(new ReportDataSource("Insurence", dtInsurence));
  localReport.DataSources.Add(new ReportDataSource("PropertyOwners", dtPropertyOwners));

  //Pass parameters to the report
  localReport.SetParameters(new Microsoft.Reporting.WebForms.ReportParameter[] { new Microsoft.Reporting.WebForms.ReportParameter("BodyCorporateID", bcid.ToString()) });
        localReport.Refresh();

  //Get the byte stream for the report rendered as PDF
  byte[] bytes = localReport.Render(format, null, out mimeType, out encoding, out filenameExtension, out streamids, out warnings);
  Stream repStream = new MemoryStream(bytes);

Любая помощь будет принята с благодарностью. Спасибо Wijitha

1 ответ

Не знаю, если вам все еще нужна информация, но я могу помочь вам по крайней мере с docx... Если вы используете WORDOPENXML вместо WORD в качестве параметра формата, генерируется файл docx.

Другие вопросы по тегам