I have engaged on .NET open source projects development since 2002 and have rich experience on enterprise workflow software, SaaS architecture design, website development and search engine optimization. Recently I’m working on RapidWebDev which is a framework on developing CMS and workflow systems. Besides, I’m managing 4 international websites, including Top-Cheap-Web-Hosting.com, LinkedHosts.com, YouVik.com and Article-Submissions.biz. As an expert in .NET development, I recommend Arvixe and HostGator as the best ASP.NET hosting companies in US to you if you have such requirement. The Arvixe ASP.NET web hosting only costs $3.5 per month and it provides 1 free domain and up to 6 hosting domains with one account. And it supports .NET Framework from 1.1 to the latest 4.0 and MS SQL Server 2008 R2 based on Windows 2008 platform. And HostGator is one of the biggest hosting companies over the world and now offers ASP.NET hosting plan only starting from $4.46 per month. It also supports .NET Framework from 1.1 to the latest 4.0 and MS SQL Server 2008 R2 based on Windows 2008 platform. Now Arvixe offers 30% off Arvixe Coupon and HostGator offers 25% off Hostgator Coupon. It’s the time to get the discount. You don’t need to worry about the accessibility and network speed of the websites hosted with them for domestic users. By contraries, they’re really fast, and don’t need the backup to the government. And the cost is much cheaper than domestic hosting companies.

.NET Tech Blog - Find Web Hosting

Find best web hosting with coupon, professional editorial reviews and customer voted reviews.

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  7 随笔 :: 25 文章 :: 374 评论 :: 8 引用

公告

报表的开发利器-ExcelQuicker

控件名称

ExcelQuicker

 

作者:

Eunge

 

邮箱:

      eudev.net@yeah.net

 

功能

     a)支持Excel文件报表, HTML Web在线报表浏览及其打印

     b)快速报表开发,样式化的开发,支持从DataTableDataGrid直接导出数据

      c)稳定的报表框架Framework

      d)报表开发的新概念:VBA+XLS 就像 CSS+HTML

 

 

开发背景

 

a)    背景一:用户群广泛

       MS Office Excel自诞生以来,被世界各地的人使用和认可,成为世界上使用最为广泛的办公软件。

 

b)   背景二:强大的性能

Office中的Excel在日常报表作业当中具有天生的优势,打印单的制作、OLAP数据图标分析、图形分析等。并且,Excel不仅仅支持.xls格式文件,它同样可以导出制作.htm等其他格式的文件。另外,它支持广泛的样式、VBA宏。甚至,很多没有经济实力使用应用软件的Customer使用Excel作为业务管理的载体。

 

c)    背景三:低廉的售价

相比数万美金的Crystal,几百美金的Office2000/2003,并且大多数的windows用户公司原本就拥有Office的版权,这使得架构在Office系统上的报表系统的额外软件成本几乎为0

 

d)   背景四:开发、技术

MS提供的Excel COM接口数量繁多,在茫茫的类、接口当中,我们经常会为我们需要实现的功能犯难,并且,在ASP.NET WEB开发中,稳定性是很大的隐患。对于大多数的Excel二次开发者,他们会发现Excel的异步调用会如此之慢,让人有充分的理由怀疑Excel充当报表框架的可行性。

其实,这部分是因为开发者对Excel操作的不熟悉,另外大部分的原因是因为MSExcel开发没有进行专门的优化。

 

ExcelQuicker简介:

是的,通过以上的分析,也许我们会对Office报表有所兴趣,但是我们却没有成功应用的把握,ExcelQuicker,架构在Excel之上,通过对Excel COM接口的封装,有效的改善了Excel报表的性能和稳定性,并且通过了我所开发的几个大型项目的考证,我很肯定它已经成为是一种较为成熟的方案。

 

a)性能

      伴随着算法的升级,ExcelQuicker在导出大数据量的报表时,各个版本的耗时如下图(对于20000行×10列=20万单元格的报表,在P4 2.6G + 512M配置)

image001.gif

版本

耗时

描述

Excel

20分钟无结果

 

V0.9

930

 

V1.1

530

 

V1.3

4

 

V1.5

320

 

V2.0

125

 

V2.2

126

性能的提升可见一斑

 

*通常我们直接进行C/VB.NET开发这张Excel报表,得到的结果将会是20分钟以上的遥远等待,而现在的ExcelQuicker2.2,我们可以看到ExcelQuicker可以让我们在性能上不再抱有任何怀疑。

 

b)功能面

*多样式化的报表;

*支持导出XLS文件报表;

*支持导出HTML Web在线报表,支持在线浏览和打印;

*支持OLAP透视图表;

 

一种新的实现被应用到ExcelQuicker中,那就是

Css+Html = VBA + Excel

      某些报表的布局是相当恼人的,如果可以提供给我一个像开发Windows桌面应用程序那样的编辑器会多好,简单的可视化操作,会让我们在最短的时间类完成高效的设计任务。

      然而,或许我们没有发现,Excel本身就是这样的编辑器。我们可以先制作Excel模板文件,然后把剩下的工作交给ExcelQuickerExcelQuicker甚至支持在上下两片模板之间插入大批量的数据,以此来简化开发工作。

      更强劲的办法是,我们可以像CSS对于Web页面那样,让Excel文档中的VBA脚本对于Excel文档,在没有源代码的情况下,让我们照样可以更改Excel的样式、布局和功能。因为,ExcelQuicker会自动调用Excel模板文档上的“CSS样式”——VBA脚本!而Excel文档的VBA制作极其简单,因为Excel本身提供了“宏”录制!并且对于80%的Excel录制的宏可以直接应用在ExcelQuicker中。这种方式使我们对报表的调整极为方便,甚至我们不需要重新编译整个工程,只需要简单的调整Excel模板文件或者模板文件中的VBA

 

花费:

a)系统

我们将分别对使用ExcelCrystal Report两套报表方案进行比较

image002.gif

Solution

Price

 

Office2003

$409.99 (3200RMB)

大不多的公司原本就拥有Office,根本不再需要额外开销。

Office2000

$289.99 (2400RMB)

Crystal Report(5*License)

$11200 (10RMB)

5*License Crystal有使用限制,服务器最多只能链接5个终端

Crystal Report

$100000 (约100RMB

 

由此可见,开源的ExcelQuicker架构在已拥有的Office上,你在报表的开发中,不仅仅可以节省软件费用的开销,甚至在开发的效率上也是大大提升,试想在最短的时间内提供给客户最优秀的报表系统。

 

a)开发效率

首先Crystal系统不是人人都熟练掌握,正因为它贵,所以它的确大,因此掌握它的人也毕竟没有掌握C#/VB.NET的人多,例如我们这里之前的一个采用Crystal Report(5*License)方案的系统,同样5个人力,
image003.gif

Solution

Amount

Spending

Crystal

18

128/

ExcelQuicker

24

58/

对比的这两个方案,都是我们开发人员从陌生到开发出产品所花销的时间,可以看到,要上手Crystal并开发出产品,相对于上手ExcelQuicker的效率还是差了很多。

       ExcelQuicker的上手很容易,他的主旨很简单,并且类的数量不多,相信通过ExcelQuicker的数个DEMO示例以及源代码,你可以很快熟悉ExcelQuicker的架构和开发。

 

ExcelQuicker是开源项目,你可以将它运用在你的商用项目当中或对其进行修改,但ExcelQuicker的版权归我所以,请在修改、重新发布它时,保留版权信息,作为对作者的尊重和开源项目的支持!

 

ExcelQuicker下载地址

http://www.eudev.net/

http://www.codeproject.com/csharp/excelquicker.asp

http://www.sourceforge.com/projects/excelquicker

posted on 2005-06-27 11:29 Eunge 阅读(11757) 评论(71)  编辑 收藏