天天看點

水晶報表的儲存和顯示(PDF和RTF)

水晶報表的儲存和顯示(PDF和RTF)

private   void  Export(ReportDocument oRpt, string  docKey, string  type)

水晶報表的儲存和顯示(PDF和RTF)
水晶報表的儲存和顯示(PDF和RTF)

         ... {            

水晶報表的儲存和顯示(PDF和RTF)

            string tempFileName;

水晶報表的儲存和顯示(PDF和RTF)

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

水晶報表的儲存和顯示(PDF和RTF)
水晶報表的儲存和顯示(PDF和RTF)

            if ( type == "PDF" )    //modified by hfw 20070830

水晶報表的儲存和顯示(PDF和RTF)
水晶報表的儲存和顯示(PDF和RTF)

            ...{

水晶報表的儲存和顯示(PDF和RTF)

                tempFileName = ConfigurationSettings.AppSettings["TempDir"] + docKey + ".pdf";

水晶報表的儲存和顯示(PDF和RTF)

                myDestinationFile.DiskFileName = tempFileName;

水晶報表的儲存和顯示(PDF和RTF)

                oRpt.ExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;

水晶報表的儲存和顯示(PDF和RTF)

                oRpt.ExportOptions.DestinationOptions = myDestinationFile;

水晶報表的儲存和顯示(PDF和RTF)

                oRpt.ExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat;

水晶報表的儲存和顯示(PDF和RTF)

            }

水晶報表的儲存和顯示(PDF和RTF)

            else

水晶報表的儲存和顯示(PDF和RTF)
水晶報表的儲存和顯示(PDF和RTF)

            ...{

水晶報表的儲存和顯示(PDF和RTF)

                tempFileName = ConfigurationSettings.AppSettings["TempDir"] + docKey + ".rtf";

水晶報表的儲存和顯示(PDF和RTF)

                myDestinationFile.DiskFileName = tempFileName;

水晶報表的儲存和顯示(PDF和RTF)

                oRpt.ExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;

水晶報表的儲存和顯示(PDF和RTF)

                oRpt.ExportOptions.DestinationOptions = myDestinationFile;

水晶報表的儲存和顯示(PDF和RTF)

                oRpt.ExportOptions.ExportFormatType = ExportFormatType.RichText;                

水晶報表的儲存和顯示(PDF和RTF)

            }

水晶報表的儲存和顯示(PDF和RTF)

            oRpt.Export();

水晶報表的儲存和顯示(PDF和RTF)

            //Session["oRpt"] = oRpt;

水晶報表的儲存和顯示(PDF和RTF)

            Session["PDFFile"] = tempFileName;

水晶報表的儲存和顯示(PDF和RTF)

            Response.Write("<script>");//

水晶報表的儲存和顯示(PDF和RTF)

            Response.Write("window.open('PDFContainer.aspx','_blank','height=650 resizable=1 width=900px top=50 left=50 scrollbars = 1',false);");

水晶報表的儲存和顯示(PDF和RTF)

            //window.open('PDFContainer.aspx','_blank');2006011,tangjiufei.

水晶報表的儲存和顯示(PDF和RTF)

            Response.Write("</script>");    

水晶報表的儲存和顯示(PDF和RTF)

    }

水晶報表的儲存和顯示(PDF和RTF)

string  tempFileName1  =   "" ;

水晶報表的儲存和顯示(PDF和RTF)
水晶報表的儲存和顯示(PDF和RTF)

             if (Session[ " PDFFile " ]  !=   null )

水晶報表的儲存和顯示(PDF和RTF)
水晶報表的儲存和顯示(PDF和RTF)

             ... {

水晶報表的儲存和顯示(PDF和RTF)

                tempFileName1 = Session["PDFFile"].ToString();

水晶報表的儲存和顯示(PDF和RTF)

            }

水晶報表的儲存和顯示(PDF和RTF)
水晶報表的儲存和顯示(PDF和RTF)

            Response.ClearContent();

水晶報表的儲存和顯示(PDF和RTF)

            Response.ClearHeaders();

水晶報表的儲存和顯示(PDF和RTF)

             if  ( tempFileName1.IndexOf( " pdf " )  !=   - 1  )     // hfw 20070830

水晶報表的儲存和顯示(PDF和RTF)
水晶報表的儲存和顯示(PDF和RTF)

             ... {

水晶報表的儲存和顯示(PDF和RTF)

                Response.ContentType="application/pdf";

水晶報表的儲存和顯示(PDF和RTF)

            }

水晶報表的儲存和顯示(PDF和RTF)

             else

水晶報表的儲存和顯示(PDF和RTF)
水晶報表的儲存和顯示(PDF和RTF)

             ... {                                 Response.ContentType="application/msword";

水晶報表的儲存和顯示(PDF和RTF)

            }

水晶報表的儲存和顯示(PDF和RTF)

            Response.WriteFile(tempFileName1);

水晶報表的儲存和顯示(PDF和RTF)

            Response.Flush();

水晶報表的儲存和顯示(PDF和RTF)

            Response.Close();