不通过viewer来另存,就是自动生成怎么弄 ?

解决方案 »

  1.   

    水晶报表预览是用DataSet绑定的,那么可以直接通过DataSet的数据写入Excel中
    这样也避免了水晶报表保存为Excel文件时没有线条的缺点
      

  2.   

    主要是我用到了水晶报表中的统计等功能,所以通过DataSet的数据写入Excel中,就不能把用水晶报表的统计出的数据写入excel中了,所以
      

  3.   

    你用水晶报表的时候,用到了一个DataSet,可以把数据存储在DataSet中,然后再导入excel,隐式实现
      

  4.   

    你是说用水晶报表的功能统计出的数据也是存储在DataSet中吗?
      

  5.   

    为什么我在用下面的代码时,当执行到Report.ExportOptions.ExportFormatType =   ExportFormatType.RichText;时老是报“无效报表文件路径”呢??
    DiskFileDestinationOptions diskOpts = new
       DiskFileDestinationOptions();   //设置导出格式
       Report.ExportOptions.ExportFormatType =
       ExportFormatType.RichText;
       Report.ExportOptions.ExportDestinationType = 
       ExportDestinationType.DiskFile;   //设置磁盘文件选项
       diskOpts.DiskFileName = fileName;
       Report.ExportOptions.DestinationOptions = diskOpts;   Report.Export ();
      

  6.   

    ReportDocument crReportDocument;
    ExportOptions crExportOptions;
    DiskFileDestinationOptions crDiskFileDestinationOptions;
    string Fname;
    crReportDocument = new ReportDocument(); TableLogOnInfo logOnInfo = new TableLogOnInfo(); logOnInfo.ConnectionInfo.ServerName = "blue";
    logOnInfo.ConnectionInfo.DatabaseName = "Transportation";
    logOnInfo.ConnectionInfo.UserID = "sa";
    logOnInfo.ConnectionInfo.Password = "";
    logOnInfo.TableName = "MaintenancesStatis"; CrystalReportViewer1.LogOnInfo.Add(logOnInfo);//对参数进行赋什值 crReportDocument.Load("E:\\Transportation\\WebUI\\Report\\MaintenancesStatisReport.rpt");
    Fname = "D:\test.pdf"; crDiskFileDestinationOptions = new DiskFileDestinationOptions();
    crDiskFileDestinationOptions.DiskFileName = Fname;
    crExportOptions = crReportDocument.ExportOptions;

    crExportOptions.DestinationOptions = crDiskFileDestinationOptions;
    crExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
    crExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat;

    crReportDocument.Export(); Response.ClearContent();
    Response.ClearHeaders();
    Response.ContentType = "application/pdf";
    Response.WriteFile(Fname);
    Response.Flush();
    Response.Close();
    System.IO.File.Delete(Fname);这样试试,不过你的水晶报表要记得登录啊