2009年2月26日星期四

The Basic Standard of Excel-like Report IDE

Nowadays, many reporting tools claim that they are Excel-like, and they support Excel-like report design after improvements. Then, what is a real Excel-like reporting tool?

Today, we will discuss this problem from two aspects.

1. What are the most basic functions a real Excel-like reporting tool should have?
2. According to the data characteristics of report, what are the extended functions a real Excel-like reporting tool should have?

Generally, programmers and end users are familiar with Excel, and programmers often choose to develop reports in an Excel-like style. The main purposes are to realize complex report forms and improve report creation efficiency. For users’ convenience, reporting software companies should provide a report IDE closer to Excel usage pattern as much as possible. In other words, besides Excel-like appearance, they need to spend more time on operation details to improve its service efficiency.

In my opinion, a real Excel-like reporting tool should have the basic functions below:

Same Cell Naming
Cells in Excel are named according to their horizontal and vertical positions in the table. If set another naming mechanism, on the one hand it is very troublesome, on the other hand it will bring some inconveniences in expression editing.

Cell’s Properties Definition
It should be able to define those most basic properties of a cell: font, font size, color, border, foreground, background, edit style for whole row or column or table, and format painter supporting, etc.

Cell Content Editing
The editing method of expression should be the same with that of Excel. For example, “=sum(A3+B5)”. When insert or delete a related row or column, the expression is supposed to transform automatically without manual updating.
When the content/expression of a cell is too long to display in it, the entire content/expression should be displayed in the edit box in the toolbar of the reporting tool.

Custom Functions
It should provides a great number of common functions, and retain some application programming interfaces for users to add their own custom functions.

Import and Export Excel files
Commonly, before involving a reporting tool or starting an information project, users may have had a lot of Excel files. Therefore, it is requisite to allow users to import and export Excel files.

RAQ Report is a pure Java reporting software. As an enterprise class Excel-like reporting tool, it inherits all the advantages of Excel. At the same time, RAQ Report pays great attention to convenience and practicability in details. Therefore, programmers and end users can learn to use it freely in a short time.

Source: Knowledge Base of Web Reporting Tool
Original Post: The basic standard of real Excel-like reporting tool
Related Articles:
BIRT Tips for Java Developers;
Talking about FreeMetadata;
7 shortnesses of displayTag;
BIRT automatic odd even rows highlighting using style;
Useful Links:
Excel-like Web-based Java Reporting Tool;
Freezea’s Report Lesson;
Software Configuration Management;
Over 480 Open Source Applications and Resources;
Jackson’s Reporting Review

Tag after basic standard, Excel-like reporting tool, Java reporting software, RAQ Report

2009年2月25日星期三

Calculate the procurement cost of web reporting tool

Generally, Web report accounts for about 10% of a software development project. In recent 2 years, it showed an increasing trend. According to my own projects, it can reach 20% at most. However, in calculations below, we still use 10% as a standard, and assume the cost of each man-month as $2,500.

Take a $100,000 software development project for example. The workload of Web report accounts for 10%, then its procurement cost is $100,000. As the cost of each man-month is $2,500, it needs 4 employees to accomplish the report. In a practical project, there are several ways to split this $100,000.

1. Integrators' previous code accumulation + Programmers' customization according to project.

In short, it is pure manual coding. Here, it is can be classified into 2 conditions:

A. Based on integrators' previous code accumulation, customize according to project directly.

B. Look for an open source reporting tool, and amend it according to requirement.

This can reduce programmers' workload and latter maintenance cost to some extent. However, your development will be limited by the open source reporting tool. Besides whether product information and APIs are all included, bugs of the open source reporting tool will drive you crazy.

These 2 ways do not involve the cost of reporting tool. Its advantage is that developers can control programs completely, and the development cost is intuitively. However, its disadvantages are as follows:

1) If the report requirement is high, programmers' workload will be very heavy.

2) Report developing is inefficient.

3) Latter maintenance cost is higher. If a client wants to modify a report, he has to ask the developer for service. Then, it will involve the problem of money.

In practice, these 2 ways are usually used in small and medium projects.

2. Web reporting tool + Programmer development.

The advantages of using a reporting tool are as follows:

1) Improve developing efficiency.

2) Save time, and shorten construction period.

3) Latter maintenance is convenient.

There are a great number of reporting tools available in the market now. Then, how to choose a reporting tool which can satisfy the project requirement and control the cost reasonably?

In my opinion, you should choose your reporting tool according to the principle below:

It should reduce the workload of report developing for at least 50%, and cut down the total development cost for about 1/3.

According to the example above, it needs 4 man-month to make the report. With a reporting tool, it only needs 2 man-month to do the job. Add the procurement cost of the reporting tool, you only need about $6,000 to accomplish the job which costs you $10,000.

You can compare several famous reporting tools, such as Quiee, RAQ report, and BIRT, etc. Then, you can make your own choice.

This post is from freezea's blog. You are welcomed cc it anywhere, and please indicate the source.
If you would like to read more articles about reporting tool, you are also welcome to refer to my blog.

2009年2月22日星期日

Which one is better for reporting tool: open source or charge?

After making reports for a long time, I found something strange recently. Various reporting tool vendors advertise by all means to attract users' attentions; however, programmers show great interests in Jsper report + ireport, the representatives of free and open source Java tool. You can find that it is discussed in full swing in almost all the forums with Java report board, and there are always a lot of questioners.

Why?

Jsper report + ireport are pure Java reporting tools. I believe that the reasons for users to choose them are as follows:

1. They are free, and this is the most important reason.

2. They are professional reporting tools.

3. They are pure Java.

It means that most people have realized that they should make reports with professional reporting tools, not coding, and this is a progress. Now, there are many pure Java reporting tools available, such as JATOOLS, RAQ Report, and Style report, etc. According to users' choice, you will find that free is the deciding factor.

Free and chargeable, which one is better?

It is obviously that free Jsper report + ireport bring us a lot, reporting tool with certain usability, open source code with flexible customization capability and complete control, and the most important, low cost.

But is this really the case?

1. In my opinion, the tabling capabilities of Jsper report + ireport are not very good.

2. Written too minutely, the Help documents of Jsper report + ireport are hard to read. And more important, all of them are chargeable.

3. The tabling logicalities of Jsper report + ireport are not very strong. Sometimes, you may find it very hard to make a complex report with them. For example, if there is a report can not be made directly, you have to write SQL statements troublesomely or ask your clients change their requirements unreasonably.

You can find a great number of consultation posts in forums, and the questioners usually have to wait for answers on line. However, maybe there is no answer to their questions, or there is no one to answer their questions by coincidence. You can count the time and labor cost spent on it. Then, whether it is advisable to buy a chargeable reporting tool?

The advantages of buying a chargeable reporting tool are as follows:

1. The tabling capability of a chargeable reporting tool must be better than a free one.

2. The Help documents are free.

3. When you have a question, you can consult the technical support directly; even ask them to come to help you.

Judging from the social trend, labor division will becomes more and more detailed, and work will becomes more and more professional. In report industry, the optimal condition is that professional reporting tool vendor is the peripheral R&D Center of other companies. Each company gives some money to the vendor for using the reporting tool, while the vendor is dedicated to solve the report problems of all the cooperators.

To sum up, making report is a professional job, and it is advisable for you to buy a chargeable reporting tool. With it, you can do your own job better.

This post is from freezea's blog. You are welcomed cc it anywhere, and please indicate the source.
If you would like to read more articles about reporting tool, you are also welcome to refer to my blog.

2009年2月20日星期五

The Integration Solution of WEB Report

Report development is only a part of application program, therefore, the integration of Web reporting tool is of great importance.

All the traditional Web reporting tools provide an independent report server without exception. With an independent report server, the application architecture is shown below:

clip_image001

The disadvantages of an independent report server:

● The independent report server communicates with application program via network protocol, and this degrades system performance seriously.

● It is unable to use all the advantageous functions of application server, such as the cluster capability, the management capability of connection pool, etc.

● Report server has an independent management mechanism of user permissions, which can not adapt the requirements of particular user role management from various industries and applications. It is insufficient, while it force application program to obey its rules.

● With too few APIs and weak control, it is hard to integrate.

As a professional Web report solution, RAQ Report provides integration as Jar package to programmers. Without independent report server, application infrastructure, and independent management mechanism of user permissions, it can help programmers to implement integration conveniently. Its application architecture is shown below:

clip_image002

The advantages of no independent report server:

● The server of RAQ report is submitted as Jar package or application of application server. Therefore, it can get integrated with application program seamlessly to achieve the peak operating efficiency.

● Share the cluster capability and the management capability of connection pool of application server.

● Make unified deployment. Use the user role management mechanism of Web application directly to avoid the incompatible problem of two management mechanisms. Provide a unified login screen, and end users need not to log in twice.

RAQ Report is a free Java reporting tool and you can get it from My Links.

This post is from freezea's blog. You are welcomed cc it anywhere, and please indicate the source.
If you would like to read more articles about reporting tool, you are also welcome to refer to my blog.