As we know, Microsoft Office is the most fashionable system all over the world. And Excel is one of the most important elements. We can see Office on nearly every PC with Windows OS.
The function of Excel is very powerful, specially in routine reporting, data statistics and analysis, and is even comparable to the popular report systems such as Crystal Reports and Fast Report.
As we know, Excel not only supports .xls files but also can cope with .htm and several other formats. Besides various supported formats, it allows OLAP, rich style and VBA macros. Even many companies develop applications based on Excel.
Talking about report services, I think most programmers are familiar with Crystal Reports and Fast Report. But the price of these professional report systems is very high. I know a full-license of Crystal Reports will cost several million RMB (Chinese currency).
Comparing with these report systems, Microsoft Office system only costs several dollars. Yes, we can know it is several times cheaper than other report systems.
If we are familiar of the Excel COM Interfaces, we can see they are not friendly indeed. Microsoft provides us the best applications but does not expose the best and efficient way. That's why I developed this control.
Lots of people know how powerful the Excel is. But they encounter technical problems often. Such as they cannot dispose memory efficiently after an operation, or the rate of output of an Excel document maybe too slow. Indeed, these are only caused by their inexperience on developing on Excel and the complex structures of Excel COM Interface.
Yes, those reasons are why ExcelQuicker is invented now. It is based on the cut-price Office system and it can provide powerful functions as Office's. Meanwhile, it combines Excel COM interface and shows you a new, simple and clear class diagram.
ExcelQuicker does not only provides us .xls format report, but also can create .html online reports. Inside it, there is favorable design and algorithmic optimization. The rate of generating reports is very fast, and you can see that from the statistics below (environment: P4 2.4G CPU+ 1G RAM):
As the diagram shows, at the beginning, it will cost 25 minutes when we generate a report with 2W records (20000 rows * 10 columns). But now ExcelQuicker v2.2 only needs 2 minutes. And it also illustrates that I am upgrading and optimizing ExcelQuicker constantly. I think it will be better in the future.
CSS - HTML = VBA - Excel
Besides performance, ExcelQuicker brings us a new idea that is design mode. I think every web application developer knows how important the CSS is to a web page. Now, the idea is that the VBA macro is also very important to reports when we use ExcelQuicker to develop reports.
We can record some VBA macros in Excel applications and save them in an Excel file. The Excel file assumes it as Excel template document when we are using ExcelQuicker. It will create report files based on this Excel template document. And you can set the VBA hooker to call these VBA macros in an Excel document. You can change the reports easily without re-compile the projects.
For example, at the beginning, customer requires us to design report title font in red. But after sometime, he changes the requirement and asks us to create black title font. In this case, if we design the title font style as VBA macros in an Excel document, we only need to modify those VBA macros in the Excel template document. It's not necessary to re-compile the project now. It's very convenient.
Maybe you know nothing about Excel VBA macros. It doesn't matter. You can record VBA macros in Excel applications easily. And then, nearly 80% of those VBA macros can be used in ExcelQuicker.
You can write as follows to construct a VBAHooker object:
EQVBAHooker vba = new EQVBAHooker("AdjustWidth");
It means that it will call the VBA macro "
AdjustWidth" automatically in the Excel document at runtime.
Finally, ExcelQuicker not only relies on VBA macros call. Indeed, it's a framework, it has many classes and can help you to create reports.
I comparing here the benefits of ExcelQuicker and Crystal Reports.
You can choose ExcelQuicker based on Office 2000 or Office 2003. Office 2000 is 200 dollars less than Office 2003, but your application using ExcelQuicker based on Office 2003 in much more stable and safe than that using Office 2000. Whatever your choice, I think you know they are much cheaper than a Crystal Reports solution.
So, my advice is that keep calm when you need to choose report solutions. If there is no special requirement, I think it's not necessary to adopt Crystal Reports.
Moreover, as an open source and non-commercial software, I advice you choose ExcelQuicker. It can bring you a highly efficient and performable experience in development or runtime.