C#调用报表生成器成功案例示例

本文介绍了报表生成器C#调用FastReport控件成功示例研究。

随着现代技术的高速发展,相关产业所衍生出来的数据集是越来越庞大。那么我们如何能够简单、方便、快捷的展现自己输入数据且能够以我们想要的方式展现出来strong>报表——这一产物便应运而生,现在市面上流行的报表工具类产品也是层出不穷。

我们为什么使用第三方报报表开发工具,而不使用Excel呢/span>

Excel是一个电子表格程序,而不是一个数据库程序。Excel数据处理容量和速度有限制,数据可视化程度不高,都是以表格为主,虽然也能插入一些图表,但是灵活度和美观度不够,设置起来也相当麻烦,并且数据获取麻烦。

第三方报表工具是数据库存储,数据库程序通常可以存放的数据量是相当大的,可以处理非常复杂的数据结构关系。报表数据交互也快捷方便,速度也非常快,可视化交互渲染。

创建个WinForm项目

C#调用报表生成器成功案例示例

引用dll文件

C#调用报表生成器成功案例示例

引用dll文件创建FastReport控件工具

C#调用报表生成器成功案例示例

创建打印设置From

C#调用报表生成器成功案例示例

C#代码:

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.IO;using System.Linq;using System.Text;using System.Windows.Forms;using FastReport;using System.Data.SqlClient;namespace PrintTest001{    public partial class FrmPrintDesigner : Form    {        public FrmPrintDesigner()        {            InitializeComponent();        }        private void FrmPrintDesigner_Load(object sender, EventArgs e)        {            Report dReport = new Report();   //实例化一个Report报表            String reportFile = "Report/Report01.frx";            dReport.Load(reportFile);  //载入报表文件            this.designerControl1.Report = dReport; //这里不一样的是把Report赋给控件的属性                DataSet ds1 = new DataSet();            ds1 = getDataHz();            dReport.RegisterData(ds1, "单据汇总");            DataSet ds2 = new DataSet();            ds2 = getDataMx();            dReport.RegisterData(ds2, "单据明细");            dReport.Prepare();   //准备            dReport.Design();  //显示        }        private DataSet getDataHz()        {            String connStr = ReturnDataSet.connectionString;            SqlConnection conn = new SqlConnection(connStr);            conn.Open();            String sqlStr = ReturnDataSet.HzSql;            SqlCommand comm = new SqlCommand();            comm.CommandText = sqlStr;            comm.CommandType = CommandType.Text;            comm.Connection = conn;            DataSet ds = new DataSet();            SqlDataAdapter adapter = new SqlDataAdapter(comm);            adapter.Fill(ds, "单据汇总");            conn.Close();            return ds;        }        private DataSet getDataMx()        {            String connStr = ReturnDataSet.connectionString;            SqlConnection conn = new SqlConnection(connStr);            conn.Open();            String sqlStr = ReturnDataSet.MxSql;            SqlCommand comm = new SqlCommand();            comm.CommandText = sqlStr;            comm.CommandType = CommandType.Text;            comm.Connection = conn;            DataSet ds = new DataSet();            SqlDataAdapter adapter = new SqlDataAdapter(comm);            adapter.Fill(ds, "单据明细");            conn.Close();            return ds;        }    }}

创建打印预览From

C#调用报表生成器成功案例示例

C#代码:

using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using FastReport;using System.Data.SqlClient;namespace PrintTest001{    public partial class FrmPrintPreview : Form    {        public FrmPrintPreview()        {            InitializeComponent();        }        private void FrmPrintPreview_Load(object sender, EventArgs e)        {            Report dReport = new Report();   //实例化一个Report报表            String reportFile = "Report/Report01.frx";            dReport.Load(reportFile);  //载入报表文件            dReport.Preview = previewControl1; //设置报表的Preview控件(这里的previewControl1就是我们之前拖进去的那个)             DataSet ds1 = new DataSet();            ds1 = getDataHz();            dReport.RegisterData(ds1, "单据汇总");            DataSet ds2 = new DataSet();            ds2 = getDataMx();            dReport.RegisterData(ds2, "单据明细");            dReport.Prepare();   //准备            dReport.ShowPrepared();  //显示        }        private DataSet getDataHz()        {            String connStr = ReturnDataSet.connectionString;            SqlConnection conn = new SqlConnection(connStr);            conn.Open();            String sqlStr = ReturnDataSet.HzSql;            SqlCommand comm = new SqlCommand();            comm.CommandText = sqlStr;            comm.CommandType = CommandType.Text;            comm.Connection = conn;            DataSet ds = new DataSet();            SqlDataAdapter adapter = new SqlDataAdapter(comm);            adapter.Fill(ds, "单据汇总");            conn.Close();            return ds;        }        private DataSet getDataMx()        {            String connStr = ReturnDataSet.connectionString;            SqlConnection conn = new SqlConnection(connStr);            conn.Open();            String sqlStr = ReturnDataSet.MxSql;            SqlCommand comm = new SqlCommand();            comm.CommandText = sqlStr;            comm.CommandType = CommandType.Text;            comm.Connection = conn;            DataSet ds = new DataSet();            SqlDataAdapter adapter = new SqlDataAdapter(comm);            adapter.Fill(ds, "单据明细");            conn.Close();            return ds;        }    }}

示例:

C#调用报表生成器成功案例示例

打印设置效果:

C#调用报表生成器成功案例示例

打印预览效果:

C#调用报表生成器成功案例示例

产品介绍 | 下载试用 | 在线客服 

标签:

来源:慧都

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年5月25日
下一篇 2021年5月25日

相关推荐

发表回复

登录后才能评论