Как экспортировать Crystal Report в форматы PDF, HTML и DOC, используя код C # в ASP.NET? - PullRequest
5 голосов
/ 12 июня 2011

Я разработал отчет на своем веб-сайте ASP.NET, теперь мне нужно предоставить параметры для экспорта этого отчета в PDF, HTML, and DOC formats, как мне этого добиться?

Crystal Report имеет одну кнопку для этого, но когда я пытаюсь сохранить этот отчет, он сохраняется в формате .aspx, так как я просматриваю его на веб-странице asp.net.

Ответы [ 3 ]

2 голосов
/ 16 января 2012

попробуйте это:

  <asp:ImageButton Width="20px" Height="20px" ID="btnPdf" runat="server"
    OnClick="btnExport_Click" ImageUrl="~/Images/PDF.png" AlternateText="Export To PDF" CssClass="AddedButton" />
   <asp:ImageButton Width="20px" Height="20px" ID="btnXls" runat="server" 
    OnClick="btnExport_Click" ImageUrl="~/Images/XLS.png" AlternateText="Export To Excel" />   
   <asp:ImageButton Width="20px" Height="20px" ID="btnDoc" runat="server" 
    OnClick="btnExport_Click" ImageUrl="~/Images/DOC.png" AlternateText="Export To Word" />   

C # код:

protected void btnExport_Click(object sender, EventArgs e)
{
    // Stop buffering the response
    Response.Buffer = false;
    // Clear the response content and headers
    Response.ClearContent();
    Response.ClearHeaders();
    try
    {
        string senderID = ((ImageButton)sender).ID;
        if (senderID == "btnPdf")
            reportDocument.ExportToHttpResponse(ExportFormatType.PortableDocFormat, Response, true, Page.Title);
        else if (senderID == "btnXls")
            reportDocument.ExportToHttpResponse(ExportFormatType.ExcelRecord, Response, true, Page.Title);
        else if (senderID == "btnDoc")
            reportDocument.ExportToHttpResponse(ExportFormatType.WordForWindows, Response, true, Page.Title);
        // There are other format options available such as Word, Excel, CVS, and HTML in the ExportFormatType Enum given by crystal reports
    }
    catch (Exception ex)
    {
       //error management

    }
}
1 голос
/ 12 июня 2011

Вы должны сделать это самостоятельно: создать выпадающий список с форматами, которые вы хотите, и кнопку, чтобы сделать обратную передачу для экспорта.

Это пример для .Net 1.1 / CR9. При отправке сообщения на следующий адрес:

  1. присвойте свойству свойства экземпляра класса отчета значение MyReport.ExportOptions.ExportDestinationType = CrystalDecisions.Shared.ExportDestinationType.DiskFile;
  2. , если вы хотите экспортировать в .pdf, выполните следующее: MyReport.ExportOptions.ExportFormatType = CrystalDecisions.Shared.ExportFormatType.PortableDocFormat; Вы также можете выбрать WordForWindows, RichText, Excel, HTML40 и другие.
  3. Затем выполните следующие действия:

    CrystalDecisions.Shared.DiskFileDestinationOptions fileOptions = new DiskFileDestinationOptions();

    fileOptions.DiskFileName = "someTmpFileName";

    MyReport.DestinationOptions = fileOptions;

    MyReport.Export();

Подробнее о ExportOptions классе можно узнать здесь .

И вот пример для VS 2005 / .Net 2

0 голосов
/ 12 июня 2011

Вы можете использовать элемент управления просмотра отчетов Crystal, который имеет встроенные функции экспорта для Word, Excel, odf и т. Д. ...

Просмотр отчетов Crystal

...