(1)引用单元
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;
using System.Data.OleDb;
using System.IO;
(2)dropdownlist的值为
DropDownList1.Items.Add("");
DropDownList1.Items.Add("Rich Text (RTF)");
DropDownList1.Items.Add("Portable Document (PDF)");
DropDownList1.Items.Add("MS Word (DOC)");
DropDownList1.Items.Add("MS Excel (XLS)");
DropDownList1.Items.Add("Crystal Report (RPT)");
DropDownList1.Items.Add("HTML 3.2 (HTML)");
DropDownList1.Items.Add("HTML 4.0 (HTML)");
(3)事件内容
string constr="Provider=SQLOLEDB.1;Password=sa;Persist Security Info=True;User ID=sa;Initial Catalog=dianxinkapin;Data Source=new";
string command="select * from comeout";
OleDbConnection myConn = new OleDbConnection(constr) ;
myConn.Open ( ) ;
//创建一个 DataSet
DataSet myDataSet = new DataSet ( ) ;
//用 OleDbDataAdapter 得到一个数据集
OleDbDataAdapter myCommand = new OleDbDataAdapter (command,constr ) ;
//把Dataset绑定person数据表
myCommand.Fill (myDataSet,command) ;
//关闭此OleDbConnection
myConn.Close () ;
myrpt rpt1=new myrpt();
rpt1.SetDataSource(myDataSet.Tables[0]);
crptv.ReportSource=rpt1;
string ExportPath;
ExportPath = Request.PhysicalApplicationPath + "Exported\\";
if (Directory.Exists(ExportPath) == false)
Directory.CreateDirectory(Request.PhysicalApplicationPath + "Exported\\");
DiskFileDestinationOptions crDiskFileDestinationOptions = new DiskFileDestinationOptions();
ExportOptions crExportOptions = rpt1.ExportOptions;
if (DropDownList1.SelectedItem.Text == "Rich Text (RTF)")
{
crDiskFileDestinationOptions.DiskFileName = ExportPath +
"RichTextFormat.rtf";
crExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
crExportOptions.ExportFormatType = ExportFormatType.RichText;
crExportOptions.DestinationOptions = crDiskFileDestinationOptions;
}
else if (DropDownList1.SelectedItem.Text == "Portable Document (PDF)")
{
crDiskFileDestinationOptions.DiskFileName = ExportPath + "PortableDoc.pdf";
crExportOptions.DestinationOptions = crDiskFileDestinationOptions;
crExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
crExportOptions.ExportFormatType = ExportFormatType.PortableDocFormat;
}
else if (DropDownList1.SelectedItem.Text == "MS Word (DOC)")
{
crDiskFileDestinationOptions.DiskFileName = ExportPath + "Word.doc";
crExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
crExportOptions.ExportFormatType = ExportFormatType.WordForWindows;
crExportOptions.DestinationOptions = crDiskFileDestinationOptions;
}
else if (DropDownList1.SelectedItem.Text == "MS Excel (XLS)")
{
crDiskFileDestinationOptions.DiskFileName = ExportPath + "Excel.xls";
//set the required report ExportOptions properties
crExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
crExportOptions.ExportFormatType = ExportFormatType.Excel;
crExportOptions.DestinationOptions = crDiskFileDestinationOptions;
//--------------------------------------------------------------------
}
else if (DropDownList1.SelectedItem.Text == "Crystal Report (RPT)")
{
crDiskFileDestinationOptions.DiskFileName = ExportPath + "Report.rpt";
//set the required report ExportOptions properties
crExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
crExportOptions.ExportFormatType = ExportFormatType.CrystalReport;
crExportOptions.DestinationOptions = crDiskFileDestinationOptions;
//--------------------------------------------------------------------
}
else if (DropDownList1.SelectedItem.Text == "HTML 3.2 (HTML)")
{
//--------------------------------------------------------------------
//Export to HTML32:
HTMLFormatOptions HTML32Formatopts = new HTMLFormatOptions();
crExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
crExportOptions.ExportFormatType = ExportFormatType.HTML32;
HTML32Formatopts.HTMLBaseFolderName = ExportPath + "Html32Folder"; //Foldername to place HTML files
HTML32Formatopts.HTMLFileName = "HTML32.html";
HTML32Formatopts.HTMLEnableSeparatedPages = false;
HTML32Formatopts.HTMLHasPageNavigator = false;
crExportOptions.FormatOptions = HTML32Formatopts;
//--------------------------------------------------------------------
}
else if (DropDownList1.SelectedItem.Text == "HTML 4.0 (HTML)")
{
//--------------------------------------------------------------------
//Export to Html 4.0:
HTMLFormatOptions HTML40Formatopts = new HTMLFormatOptions();
crExportOptions.ExportDestinationType = ExportDestinationType.DiskFile;
crExportOptions.ExportFormatType = ExportFormatType.HTML40;
HTML40Formatopts.HTMLBaseFolderName = ExportPath + "Html40Folder"; // Foldername to place HTML files
HTML40Formatopts.HTMLFileName = "HTML40.html";
HTML40Formatopts.HTMLEnableSeparatedPages = true;
HTML40Formatopts.HTMLHasPageNavigator = true;
HTML40Formatopts.FirstPageNumber = 1;
HTML40Formatopts.LastPageNumber = 3;
crExportOptions.FormatOptions = HTML40Formatopts;
} //export format
try
{
// Export the report
rpt1.Export();
}
catch (Exception err)
{
Response.Write("<BR>");
Response.Write(err.Message.ToString());
}