C#调用报表生成器成功案例示例研究
随着现代技术的高速发展,相关产业所衍生出来的数据集是越来越庞大。那么我们如何能够简单、方便、快捷的展现自己输入数据?并且能够以我们想要的方式展现出来?报表——这一产物便应运而生,现在市面上流行的报表工具类产品也是层出不穷。
我们为什么使用第三方报报表开发工具,而不使用Excel呢?
Excel是一个电子表格程序,而不是一个数据库程序。Excel数据处理容量和速度有限制,数据可视化程度不高,都是以表格为主,虽然也能插入一些图表,但是灵活度和美观度不够,设置起来也相当麻烦,并且数据获取麻烦。
第三方报表工具是数据库存储,数据库程序通常可以存放的数据量是相当大的,可以处理非常复杂的数据结构关系。报表数据交互也快捷方便,速度也非常快,可视化交互渲染。
创建个WinForm项目
引用dll文件
引用dll文件创建FastReport控件工具
创建打印设置From
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#代码:
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#调用报表生成器成功案例示例研究相关推荐
- 使用sql语句生成报表_SQL Server报表服务:如何使用报表生成器处理常见的最终用户要求
使用sql语句生成报表 In this article, we will discuss the SQL Server Reporting Service Report Builder and loo ...
- SQL Server报表生成器中的R脚本词云
什么是R (What is R) R is a very popular data programing language. R is especially used in data analysis ...
- 移动端报表JS开发示例
最近对移动端的报表开发颇有研究,细磨精算了好久,虽然到现在还是"囊中羞涩",但决定还是先抛砖引玉,拿点小干货出来和大家分享. 研究的工具是比较有代表性的FineReport. 1. ...
- 【十九】文件译文:reportgenerator.properties (报表生成器属性文件)
目录 一.文件说明 二.报告配置 一.文件说明 (一)第1段--文件标题 (1)原文 ######################################################### ...
- ssrs报表教程_SSRS报表生成器简介和教程
ssrs报表教程 The SSRS report builder is a powerful tool for data visualization. In this article, we will ...
- 跨域调用报表展现页面的flash打印方法
环境说明: 项目的应用和润乾的报表应用分别部署在同一机器不同的web服务器上(IP相同,端口不同,项目的端口8080,报表应用的端口是6868). 在项目中的父页面通过iframe调用报表展现页 ...
- java调用存储过程 sql server_Java中调用SQL Server存储过程示例
Java中调用SQL Server存储过程示例2007-09-03 08:48来源:论坛整理作者:孟子E章责任编辑:方舟·yesky评论(3) 最近做了个Java的小项目(第一次写Java的项目哦), ...
- 跨平台的报表生成器控件Stimulsoft Reports.Fx for Flex
Stimulsoft Reports.Fx for Flex是一个跨平台的报表生成器控件,用于丰富的互联网应用程序中.在创建这个报表工具的时候,我们使用了一种在互联网商业程序开发中的一个高级技术 - ...
- C# 创建、部署和调用WebService的简单示例
C# 创建.部署和调用WebService的简单示例 webservice 可以用于分布式应用程序之间的交互,和不同程序之间的交互. 概念性的东西就不说太多,下面开始创建一个简单的webservice ...
- Big Faceless Java Pdf报表生成器
Report Generator 建立在 PDF 库之上,可将 XML 转换为 PDF,是生成复杂.多页报表的绝佳方式.现在,您可使用 JSP.ASP 或类似技术来创建动态 PDF 报表,与 HTML ...
最新文章
- HDFS之SequenceFile和MapFile
- Kafka High Availability (下)
- 【Android Protobuf 序列化】Protobuf 使用 ( protobuf-gradle-plugin 插件简介 | Android Studio 中配置插件 | AS 中编译源文件 )
- Idea如何方便的查看Java字节码文件,你是怎么做的
- 关于oracle的物理dg,oracle物理DG管理-redo数据传输,应用与三种模式
- c51语言bit函数,keil C51中的本征函数库及使用说明
- DevExpress XtraGrid RepositoryItemCheckEdit 复选框多选的解决方法(转)
- PB与各种数据库连接
- python 局部变量和全局变量 global
- Python编程笔记(第一篇)Python基础语法
- 惠普微型计算机怎么装机,台式小机惠普电脑怎么装系统
- excel数据库_如何通过INTOUCH组态软件做EXCEL报表(含代码)
- Mobi格式的书籍整理
- Maven基础-认识Maven
- 工业机器人的应用有哪些
- python 进程详解
- OSI 七层网络结构
- 转炉炼钢工艺流程(炼钢)
- 2020年燃料电池行业研究及产业链梳理
- Unity2019学习:常用功能--Camera摄像机
热门文章
- cif t t操作流程图_cif流程(cif贸易术语流程图)
- Windows——重建 MBR(Master Boot Record)
- Codeforces 450A. Jzzhu and Children
- android word分页,word文档如何设置分页以及取消分页
- 计算机图形学红绿蓝组合颜色,二、颜色_计算机图形学(部分章节二)_ppt_大学课件预览_高等教育资讯网...
- 解决 epsg.io 网站访问不了
- 电信dns服务器哪个稳定,电信宽带dns设置哪个最快? dns设置哪个最好最快
- Google浏览器书签栏优化
- python 解压zip ,rar 文件及编译错误的解决方法
- 如何解决windows资源管理器已停止工作?两种方法教会你