发布一快速开发报表的类库,让报表的开发具有前所未有的方便和快速

原文:发布一快速开发报表的类库,让报表的开发具有前所未有的方便和快速

  因大量博友的索要,现与朋友合作封装了使用前文介绍的动态设置DevExpress
Report
的组件,这篇文章用来介绍这个ReportCommon自绘报表组件并一些截图,如果需要请进行购买,邮件中写上您的邮箱。

声明:本类库使用DevExpress控件,但不包含DevExpress控件,因此使用者需要另行购买DevExpress控件,如果使用者因盗版DevExpress控件引起的一切法律纠纷,由使用者自行承担,本人及相关开发人员盖不负责。


装配清单



























RptDLL  
├  ReportCommon.dll 关键DLL
├  ReportCommon.xml 注释
├  Util.dll  

 FrmReportView
多组报表显示窗体组件

 ReportsView
多组报表显示可视化组件
ReportCommon自绘报表控件说明.doc 帮助文档
test Demo项目

使用条件


  1. 本组件基于DevExpress报表控件开发,因此确定您拥有并使用DevExpress这套控件,需要的DevExpress
    DLL在帮助文档中有说明;

  2. 本组件兼容DevExpress9.0及以后的版本,对应8.0及以前的版本可能需要我们修改部分代码。

功能说明


  1. 中式报表应该基本能做,有分组统计功能,可以设置各列字体和大小,可以定义页边距,可以设定表格数据对齐方式,显示关闭打印预览线,可以定义页眉页脚,可以添加公司标识等60余项参数定制;

  2. 各种报表获取方法:

ShowPreview() 在单独的窗体显示报表
ShowPreviewDialog()
在单独的对话框显示报表
returnPages()
获取报表所有Pages
ShowInThisFormPrintsystem()在指定的PrintSystem中显示报表
GetReport()
获取绘制完的报表

Demo项目使用的DevExpress DLL































DevExpress.Charts.v11.1.Core.dll
DevExpress.Data.v11.1.dll
DevExpress.PivotGrid.v11.1.Core.dll
DevExpress.Printing.v11.1.Core.dll
DevExpress.Reports.v11.1.Designer.dll
DevExpress.Utils.v11.1.dll
DevExpress.XtraBars.v11.1.dll
DevExpress.XtraCharts.v11.1.dll
DevExpress.XtraEditors.v11.1.dll
DevExpress.XtraPivotGrid.v11.1.dll
DevExpress.XtraPrinting.v11.1.dll
DevExpress.XtraReports.v11.1.dll
DevExpress.XtraReports.v11.1.Extensions.dll
DevExpress.XtraTreeList.v11.1.dll

来看看简单报表是怎么定义的


        /// <summary>
/// 报表布局数组
/// </summary>
private void makeLayoutString()
{
// 报表主要布局
ReportLayout = new string[][][]
{
// 报表头标题布局
new string[][]
{
// 报表标题
new string[] { "××至××西线高速公路","房建工程清单支付报表" },
// 报表其它头标题
new string[] { "1", "承包单位", "4" },
new string[] { "2", "合同段", "2" },
new string[] { "3", "填报日期", "2" },
new string[] { "4", "监理单位", "4" },
new string[] { "5", "期号", "2" } ,
new string[] { "6", "截止日期","2"}
},
// 报表明细布局
new string[][]
{
new string[] { "1", "项目编号", "89" ,"22"},
new string[] { "2", "项目名称", "200","6" },
new string[] { "3", "c单位", "20" },
new string[] { "4", "r合同数量", "100" },
new string[] { "5", "r单价", "30" },
new string[] { "6", "r变更后数量", "100" },
new string[] { "7", "r本期末完成数量", "100" },
new string[] { "8", "r本期末完成金额","100"},
new string[] { "9", "r上期末完成数量", "100" },
new string[] { "10", "r上期末完成金额", "100" },
new string[] { "11", "r本期完成数量", "70" },
new string[] { "12", "r本期完成金额", "80" },
},
new string[][]
{
new string[]{"1","承包人","1"},
new string[]{"2","监理处专业工程师","1"},
new string[]{"3","监理处计量工程师","1"},
new string[]{"4","高级驻地","1"},
new string[]{"5","计划部专业工程师","1"},
new string[]{"6","合约部计量工程师","1"}
}
};
// 报表统计布局(未用)
mTotalLayout = new string[][]
{
new string[]{"小计","289"},
new string[]{"","20"},
new string[]{"","100"},
new string[]{"","30"},
new string[]{"","100"},
new string[]{"","100"},
new string[]{"8","100",DevExpress.XtraReports.UI.SummaryFunc.Sum.ToString()},
new string[]{"","100"},
new string[]{"10","100",DevExpress.XtraReports.UI.SummaryFunc.Sum.ToString()},
new string[]{"","70"},
new string[]{"12","80",DevExpress.XtraReports.UI.SummaryFunc.Sum.ToString()},
};

// 报表分组布局
mGroupLayout = new string[]
{
"1","dfasdf"
};

//报表明细列头布局
mdetailHeadLayout = new string[][]
{
new string[] { "项目编号", "89" },
new string[] { "项目名称", "200" },
new string[] { "单位", "20" },
new string[] { "合同数量", "230" },
new string[] { "到本期末完成", "200" },
new string[] { "到上期末完成", "200" },
new string[] { "本期完成", "150" },

new string[] { "", "89" },
new string[] { "", "200" },
new string[] { "", "20" },
new string[] { "原合同数量", "100" },
new string[] { "单价", "30" },
new string[] { "变更后数量", "100" },
new string[] { "数量", "100" },
new string[] { "金额(元)","100"},
new string[] { "数量", "100" },
new string[] { "金额(元)", "100" },
new string[] { "数量", "70" },
new string[] { "金额(元)", "80" }
};
}

再来看看Demo中的显示效果


附上其他报表的显示效果


条形码支持

时间: 2024-10-13 09:37:19

发布一快速开发报表的类库,让报表的开发具有前所未有的方便和快速的相关文章

程序开发常用第三方类库一览表(VendorLib)

以下是自己开发过程中用到的第三方类库,记录下来方便查阅 ---------------------------------------------------------------------------------------------------///////////////////////////////////////////////////JAVA第三方类库///////////////////////////////////////////////----------------

开发趋势:快速开发平台知多少? 一 、什么是快速开发平台 简而言之,就是可以使得开发更为快速的

开发趋势:快速开发平台知多少?一 .什么是快速开发平台简而言之,就是可以使得开发更为快速的平台.当开发平台产生之后,虽然减少了编程人员大量的编程时间,但是很多开发平台请添加链接描述的效果并不是很理想,比如说某些开发平台比较复杂.难以掌握:有的开发平台通用性比较差:有的开发平台在时间上并没有得到改善:还有的依然还是需要写很多代码等等.这些问题的存在促使开发者不断的摸索.不断的改进,到最后越做越成熟,以致于现在市面上出现的大部分开发平台效率都非常高,他们改善了以往的产品存在的缺陷,使得开发过程比以往

一起学Google Daydream VR开发,快速入门开发基础教程一:Android端开发环境配置一

原文因涉及翻墙信息,被强制删除,此文为补发! 准备工作 进入Google Daydream开发者官网,开启准备工作,官网地址:https://vr.google.com/daydream/developers/ -------------------------------------------------------------------------------------------------------------------- Google Daydream开发者网址: https

Agile.Net 组件式开发平台 - 报表组件类库

Agile.Report.dll 文件为平台报表支持库,基于FasstReport.Net扩展重写,提供报表打印.报表预览.报表设计.自定义报表数据源等二次开发功能. 示例   //声明报表对象 var report = new Agile.Report.ReportLib(); //添加查询参数 report.AddParameter("Code", "1023"); ////添加自定义数据源 //report.AddDataSource(DataSource);

Daydream从入门到精通——快速入门开发基础教程二:Android端开发环境配置二

开始部署 上篇介绍了开发Daydream Android VR需要的基本环境,这篇我们来看看如何部署和运用官方示例. -------------------------------------------------------------------------------------------------------------------- Daydream快速入门开发基础教程一:Android端开发环境配置一 http://blog.csdn.net/jaikydota163/arti

5、VS2010+ASP.NET MVC4+EF4+JqueryEasyUI+Oracle项目开发之——使用datagrid做报表统计

需要说明一点:数据库访问我使用的是EF框架,但是在报表统计着一块由于使用到了动态表,即根据每一天单独生成了一张数据表,所以不好使用EF进行预先添加,于是我在数据库访问层里面封装了两套数据库访问框架,一个就是EF,一个就是传统的ADO.NET.当设计到使用动态表时,我就调用用ADO.NET进行数据库访问操作了. 先看下View,这里我使用的是jquery easyUI里面的datagrid来做的报表.如下: 单击选中日报: 年报如下: @model YKT.Model.SubCompanyRepo

开发自己的类库

上文说过,复用性主要有:插件,插件为功能的基本单元:组件,组件为应用的单元:设计模式,设计模式为解决为题的思路. 上述三者是算法的具体表现形式. 基于上面的认识,减少重复造轮子的时间,实现高效开发,决定开发自己的类库. 下面是第一个函数,时间戳转为具体时间: //时间戳转为具体时间 function transform(now) { var d = new Date(now); var year = d.getFullYear(); var month = d.getMonth() + 1; v

如何基于报表工具FineReport进行二次开发

随着FineReport的发展,它提供的设计器和服务器应该能够满足绝大部分的需求,完全实现零编码的软件开发.革命性地加快软件的开发以及提高软件的稳定性.但是需求千变万化,而FineReport本身所具备的功能是报表中比较典型的,一些比较有个性的功能无法实现,那么就需要应用开发人间使用网页脚本.API接口等进行深入的开发,而这一点,FineReport报表工具是支持的,那么如何来实现插件开发呢? Ant打包 Ant是一个构建工具,它可以帮助我们将项目开发过程中需要完成的各种步骤组织起来,通过一个简

【从零开始学BPM,Day5】报表配置及自定义功能页面开发

[课程主题] 主题:5天,一起从零开始学习BPM [课程形式] 1.为期5天的短任务学习 2.每天观看一个视频,视频学习时间自由安排. [第五天课程] 1.课程概要 Step 1 软件下载:H3 BPM10.0全开放免费下载:http://bbs.h3bpm.com/read.php?tid=861&fid=11 Step 2 安装资料:参考本博的"安装资料"分类 Step 3 产品在线帮助浏览:http://bbs.h3bpm.com/read.php?tid=286&