通过本周的工作学习,找到水晶报表可以有两种方法来进行打印:第一种是利用已经做好的水晶报表,对它进行打印,这种方法的缺点就是不能在项目中修改后直接就保存打印,优点加载速度快,而是要报建好的水晶报表放到你所建立的水晶报表路径;第二种是直接利用项目中建好的水晶报表,实例化以后把水晶报表中需要的数据加入到水晶报表中,这样加载速度就会变慢,然后可以打印输出。
第一种,使用水晶报表在项目中的路径:
privateReportDocumentcustomerReport1;
private void rep_list4()
{
try
{
customerReport1 = new ReportDocument(); //次卡结算
string reportPath = Application.StartupPath + "\\rpt\\" + "CrystalReport1.rpt"; //指定水晶报表路径
customerReport1.Load(reportPath); //加载指定路径的报表
DataTable db = new DataTable();
db.Columns.Add("Number", System.Type.GetType("System.String"));
…//添加报表数据列名
DataRow newdr = db.NewRow();
newdr[0] = Txt9.Text;//为报表的列赋值
report.SetDataSource(db); //把数据DataTable数据赋给报表
//string printerName = "////打印机地址或IP//打印机名称"; //本地打印机直接指定名称
//string printerName = "打印机名称"; //本地打印机直接指定名称
//report.PrintOptions.PrinterName = printerName; //指定打印机名称
report.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.PaperDsheet; //指定纸张尺寸
report.PrintOptions.PaperOrientation = CrystalDecisions.Shared.PaperOrientation.Portrait; //指定纸张输出方向
report.PrintToPrinter(1, false, 1, 1); //输出打印
crystalReportViewer4.ReportSource = report; //在winform中创建的报表显示出来
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
第一种,使用winform中创建的水晶报表,直接实例化出来再使用:
private void rep_list()
{
try
{
CrystalReport4 report = new CrystalReport4(); //Report为你自己的报表名,已经建好的报表
DataTable db = new DataTable();
db.Columns.Add("Number", System.Type.GetType("System.String"));
…//添加报表数据列名
DataRow newdr = db.NewRow();
newdr[0] = Txt9.Text;//为报表的列赋值
report.SetDataSource(db); //把数据DataTable数据赋给报表
//string printerName = "////打印机地址或IP//打印机名称"; //本地打印机直接指定名称
//string printerName = "打印机名称"; //本地打印机直接指定名称
//report.PrintOptions.PrinterName = printerName; //指定打印机名称
report.PrintOptions.PaperSize = CrystalDecisions.Shared.PaperSize.PaperDsheet; //指定纸张尺寸
report.PrintOptions.PaperOrientation = CrystalDecisions.Shared.PaperOrientation.Portrait; //指定纸张输出方向
report.PrintToPrinter(1, false, 1, 1); //输出打印
crystalReportViewer4.ReportSource = report; //在winform中创建的报表显示出来
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
评论列表: