This article is transferred from:
Java report tool function comparison
Over the past few years, the Java report market has been very popular. First, overseas products such as Crystal Reports, Brio, and style have successively entered the market, then, the Chinese table, the table creation, the huge number, and Qin, runqian, and Jie started to emerge. (some of them only support Java and some support all web environments, the concept war, eye-catching war, and price war have been a good fight.
By now the dust has settled, three points in the world --
The Crystal Reports and brio are classified under the BO and epoch respectively, relying on the high wall depth of Bo and epoch in the Bi field, sticking to the last chassis;
Style reports, massive reports, and diligence reports are based on smart analysis reports. These reports occupy the hinterland of the market, and work around the clock to enhance bi functions. We look forward to the future of Bai yidujiang, capture food from the tiger's mouth under the eyes of Bo and epoch;
Most of the presentation-type reports, such as table Hua, table Chuang, runqian, and table Jie, are being overwhelmed by the storm. Currently, only the tables of Yun and Jie are still kill, however, analyticdb reports, such as style, shuju, and Qinqin, and other open-source products such as jasperreports and eclipse BIRT, were intruded upon. Although they are not vulnerable, they are not easy to understand.
The root cause of market analysis lies in products. Functionality and performance-the permanent topic of software, which ultimately determines the driving force behind the future development of products and enterprises. This article analyzes the functions and performance of various web reports.
Analysis object:Style Report,Crystal Report,Massive reports,Credit report
Analysis Method:Extract the most representative reports from the demo samples and instructions of each product, and design these reports using other products to compare functional and performance advantages.
Report 1:
Sample provider:Style Report
Product score (out of 10 points ):
Style Report: 10
Crystal Report: 7
Massive reports: 10
Credit statement: 10
Scoring basis:
In fact, this report is designed with no special requirements, but complicated.
Currently, the report tool has two design modes: one is the band mode. The layout of controls in the band area is used as the design method, and the flexibility and scalability are the main design advantages, the disadvantage is that it takes some time to draw a complex table. The preceding table is a typical example. The other is the table model, similar to excel, which takes the complexity of table design as the main advantage and is convenient for table creation. The disadvantage is that the flexibility and scalability are not as good as the band model.
The two features in the Table above: the static table structure is complex and data is displayed in a conventional manner. Therefore, it is best to use the table rather than the band mode.
In the four reports, style report adopts the table mode. The crystal report adopts the band model. The large reports support both the table model and the band model, and the rundry report uses the table model. Therefore, style report, several giant reports, and rundry reports are all given with 10 points. Although the crystal report adopts a band model, the above table can be designed with a certain amount of work, in addition, a variety of shortcuts are provided to optimize the design process. Therefore, 7 points are given.
Report 2:
Sample provider:Style Report
Product score (out of 10 points ):
Style Report: 10
Crystal Report: 8
Massive reports: 10
Credit statement: 10
Scoring basis:
This report is a crosstab chart. The "steel" and "Serial Number" on the left are automatically extended down based on the data returned from the data source. The words "ingot" on the top header are displayed, data is automatically expanded to the right based on the data returned from the data source. From this perspective, this report is not complex.
The second column "Serial Number" and the third column "Total" are slightly complicated ". Obviously, sequence numbers cannot appear as a field in the data source, and the total is placed in the last column according to the standard cross tabulation Design Pattern convention. This requires additional processing for the cross tabulation.
Generally, it is divided into multiple design areas for processing.
Style report, several giant reports, and rundry reports all have the concept of report sharding design. A flat table can be divided into multiple logically associated areas for design, cross-region operations can be performed between different regions. In this way, the above table is very easy to design. Therefore, these three products scored 10 points in this function.
However, in a crystal report, you can only splice multiple subreports to meet the above requirements. It is difficult to design the position and logical association of each subreport. Therefore, only 8 points are given.
Report 3:
Sample provider:Crystal Report
Product score (out of 10 points ):
Style Report: 8
Crystal Report: 10
Massive reports: 8
Credit statement: 8
Scoring basis:
This report is an association and combination of multiple cross tables. The design difficulty is slightly higher than report 2. The main reason is that the combination of multiple cross tables is not just a combination of multiple groups horizontally, this is also true in portrait mode.
Similar to report 2, style report, massive report, and dry report can be easily solved using the report sharding design method, crystal Reports require the issuance of sub-tables. The design difficulty and complexity are higher than the former. However, in a report, an image is embedded in the header, and the image and text are displayed in the same cell synchronously, this is what style reports, massive reports, and dry reports cannot do.
Therefore, in this evaluation, the crystal report has 10 points, and the remaining three products each have 8 points.
Report 4:
Sample provider:Massive reports
Product score (out of 10 points ):
Style Report: 0
Crystal Report: 10
Massive reports: 10
Credit Report: 0
Scoring basis:
This table seems to be common, but it is just a combination of Gantt charts and tables. However, the difficulty lies here: how to achieve a one-to-one correspondence between the progress bar Branch and the table in the Gantt chart.
Designed using several giant reports and Crystal Reports, the Gantt chart progress bar is placed independently and overlapped using a fill Grid Control, which can be automatically replicated cyclically based on the number of data rows, the report operation is performed row by row, and the current start position and length are adjusted based on the calculation data results to synchronize the display effect with other data rows in the table.
That is to say, to design such a report, you need a report tool to: 1. the properties of the design controls are relatively independent. the properties of different derivative instances of the same control are relatively independent. 3. the properties of control instances in the derivative process are precisely controllable.
Style Report and rundry report do not support this type of function, so it is 0 points, each of which is 10 points.
Report 5:
Sample provider:Massive reports
Product score (out of 10 points ):
Style Report: 10
Crystal Report: 10
Massive reports: 10
Credit statement: 10
Scoring basis:
Displaying Data under certain conditions in a distinctive color is already the basic function of all mature report products. All products of this function have corresponding functions. Therefore, the score is 10 points.
Report 6:
Sample provider:Massive reports
Product score (out of 10 points ):
Style Report: 0
Crystal Report: 10
Massive reports: 10
Credit Report: 0
Scoring basis:
It is a very simple report with eight product categories: Digital, sports and leisure, clothing, computer, home appliances, telecommunications, jewelry, and food and beverage. You need to use the list to display the respective sales volume.
The only special requirement of the design is that, out of users' concern for key products, the "digital" and "Sports and Leisure" products should be listed in the first and second lines respectively, "Food and Beverage" products are displayed in the row at the top, and other data sorting is not mandatory.
Because the data sorting in the database is not fixed, no matter the data is sorted by product category name or sales volume during data extraction, the data display sequence cannot be guaranteed to meet the requirements.
Both the report and the crystal report provide the forced sorting function for data records of the data source, which can easily solve this problem, however, style reports and rundry reports can be simply arranged in the order of data sources or in reverse order. Therefore, this item scored 0 points for style report and rundry report, and 10 points for several giant reports and Crystal Reports.
Report 7:
Sample provider:Massive reports
Product score (out of 10 points ):
Style Report: 0
Crystal Report: 0
Massive reports: 10
Credit Report: 0
Scoring basis:
The preceding table is a typical grouping report. You need to display the sales order data in groups by region. The special feature is that, because of the large data volume, the viewer wants to add a directory on the report cover like a Word document, and can click the directory while browsing, the report automatically jumps to the content page of the directory.
A report can be an object in a report design. You can use the findviewobject method to create a running instance, use the addanchor method to mark the current position of the instance, and use the system's internal jump function to easily meet the above requirements. Therefore, 10 points are given.
The other three types of products are powerless, So 0 points are given.
Report 8:
Sample provider:Massive reports
Product score (out of 10 points ):
Style Report: 0
Crystal Report: 0
Massive reports: 10
Credit Report: 0
Scoring basis:
Report requirements:
1. Data Filtering conditions:
Statistical Area: <nationwide/Beijing/Shandong……>
Educational level: <all/elementary/junior high school/...>
Gender: <all/male/female>
Age group: <all/under 16 years old/16 years old ~ 18/19 years old ~ 30/31 ~ 40/41 ~ 50/51 ~ 60 years old/over 60 years old>
2. Report creation conditions:
Before creating a report, you can select the branch rule for Statistics (row attribute content). The row attribute categories include: approval area/acceptance location/account Location/country or region/reason type/age group/education level.
Difficulties:
The difficulty of a report lies not in the conventional design and production, but in the Variable Classification of the statistical Bank: visitors can choose the age group, approval area, and acceptance location at will, reports are calculated based on the user's choice. For example, if you select "age group", data of different ages is collected on each row in the Report. When you select "accepted location", data of different accepted locations is collected on each row. When users make different choices, the data content at the <row attribute classification> identifier in the report changes accordingly, and the statistical data method also changes fundamentally.
Product requirements:
Allows you to obtain certain data in a report based on the calculation results of intermediate data generated during the report creation process. Then, you can request the corresponding data from the database according to the rules.
Conclusion:
Among the four products, only the "Database Dynamic command" technology of the massive reports can meet the above requirements. Therefore, 10 points are given, and 0 points are given for other products.
Report 9:
Sample provider:Credit report
Product score (out of 10 points ):
Style Report: 8
Crystal Report: 8
Massive reports: 10
Credit statement: 10
Scoring basis:
This report provides the ability to perform cross-row and cross-column operations on the current cell and its upper and lower left cells. This operation includes not only four arithmetic operations, but also some other scalability requirements, such as the ranking calculation required by the table.
The four arithmetic operations across rows and columns are not difficult for style report, Crystal Report, giant report, and rundry report, but not only for ranking calculation, especially for raw data, at the same time, you also need to rank the results of multiple columns. This requirement is slightly complicated for style report and Crystal Report, and requires multi-step cyclic operation. Cell data can be directly ranked in several huge reports and rundry reports.
In this example, each style report and crystal report is given 8 points, each of which has 10 points.
Report 10:
Sample provider:Credit report
Product score (out of 10 points ):
Style Report: 8
Crystal Report: 8
Massive reports: 10
Credit statement: 10
Scoring basis:
This report is an irregular grouping table with the following features:
1. Perform repeated crossover operations based on different indicators for the same data to form a cross report.
2. Value area grouping. This is different from the conventional cross report. The common cross tabulation is based on the field value as the grouping condition, rather than the region where the field value is located. For example, age: the regular crosstab chart displays 21, 22, 23 ......, Different ages are a group interval. In the preceding table, the age of the section area must be used as a grouping condition.
In a crystal report, You Need To splice multiple subreports to form the above style. The disadvantage is that the spacing between subreports, Table Line alignment, and so on need to be debugged repeatedly, Which is troublesome. Style report, several giant reports, and dry reports can be designed directly in Excel-like tables using multiple design areas. Therefore, the crystal report shows its shortcomings.
In terms of value-based grouping, a good job is to use a large number of reports and a dry report, both of which can be directly defined and displayed by grouping rules in cells through scripts. The crystal report can be processed by script, but it is still a method. Style Report has weak functions in this aspect and needs to be grouped to process data in advance.
In this example, the solution is perfect for both the report and the rundry report. Therefore, 10 points are given, and 8 points are given for each crystal report and style report.
Report 11:
Sample provider:Credit report
Product score (out of 10 points ):
Style Report: 8
Crystal Report: 5
Massive reports: 10
Credit statement: 10
Scoring basis:
The difficulty of this table lies in time-related operations such as the same-period ratio and the previous period. These operations often require the next row of data except the previous row of data, the data in the last column is excluded from the data in the previous column.
For such operations involving inter-row and inter-Column Operations, style report, dtplus report, and rundry report can be used to directly perform cell displacement operations. The crystal report can only be pre-processed in the data source, and then filled with data. Despite the implementation of the final report, the process is complex and requires high technical requirements from designers. Therefore, the crystal report only scored 5 points.
Although style report, dtplus report, and rundry report support Displacement Calculation, if the number of rows in multiple groups is irregular, for example, if data is missing in a quarter of a year, as a result, the Group has only three rows of data. When dealing with such incidents, style report is powerless and can only be processed through pre-validation. Therefore, it is slightly insufficient to score 8 points.
The cell computation model is used to match the displacement cells. Therefore, the full score of this table is 10 points.
Report 12:
Sample provider:Credit report
Product score (out of 10 points ):
Style Report: 6
Crystal Report: 6
Massive reports: 10
Credit statement: 10
Scoring basis:
This table is a typical horizontal sharding report. The data area is divided into several Slices from left to right. It includes both fixed statistics and dynamic data extended based on database records, this kind of fixed and changed reports is very common in practice.
In addition, unlike Report 2 and report 3, this report not only involves multi-Table combination, it also involves the combination between the crosstab chart and the list, and cross-column calculation between the crosstab chart and the list.
You can use the report sharding design method to easily solve this problem. Style Report and crystal report require subtable splicing and data source pre-processing, the design difficulty and complexity are much higher than the former.
In this evaluation, there are 6 points for style report and Crystal Report, and 10 points for several giant reports and rundry reports.
Report 13:
Sample provider:Credit report
Product score (out of 10 points ):
Style Report: 8
Crystal Report: 8
Massive reports: 10
Credit Report: 9
Scoring basis:
This report looks simple, but its data is actually stored in four tables: car, house, land, and others.
There are two ways to use this table. One method is to create a view that combines Customer names, automobiles, real estate, land, and other data items, then, it is displayed as a list. This method has the advantage of high data computing efficiency (Association operations are executed on the server, which is undoubtedly more efficient than the Report Server, especially in the case of large data volumes ), the disadvantage is that it is difficult to create a view. In addition, considering additional circumstances, for example, if the data in the "other" column does not have a direct correspondence in the database table, the classification operation is more complicated. There is also a limitation, if these five tables exist in different business systems (different databases), this method will be powerless.
The second method is to write five SQL statements separately, calculate the customer name, vehicle, real estate, land, and other data one by one, and then display the corresponding association with the customer name during the report design process. The advantage of this method is that the design process is simple and the adaptability is strong. The disadvantage is that the efficiency is lower than the first method.
The third method is to write five SQL statements separately, and calculate the customer name, vehicle, real estate, land, and other data one by one, which is different from the second method, instead of placing the join operation in the report logic, the join operation is performed in the SQL mode. In this step, the join operation is completed on the Report Server through the SQL engine built in the Report Server. This method combines the advantages of the above two methods to ensure scalability and ease of use while ensuring the execution efficiency.
The first method is supported by four types of products. The second method is only supported by several large reports and dry reports. The third method is only supported by several large reports. Therefore, the score is 8 points for style report and crystal report, 10 points for several giant reports, and 9 points for rundry reports.
Report 14:
Sample provider:Massive reports
Product score (out of 10 points ):
Style Report: 8
Crystal Report: 0
Massive reports: 10
Credit Report: 0
Scoring basis:
OLAP is developed by E. f. A dynamic data analysis model proposed by codd in 1993, which allows access to aggregated and organized data from commercial data sources in a multidimensional structure called multidimensional data set.
In simple terms, OLAP allows end users to perform dynamic clustering analysis on data in a custom operation mode. The analysis conditions can be combined by themselves, in addition, clustering data can be deeply analyzed layer by layer until the underlying causes of data table images are found. Is the core and basic function of business intelligence.
Currently, reports that support OLAP are generally called analytical reports and presentation reports. Because OLAP products have relatively high technical requirements for R & D, only a few vendors in China, such as several large reports and regular reports, have such features. Low-end products such as rundry reports are not supported.
Style reports in foreign countries support OLAP, while Crystal Reports are incorporated into the Bo family, and Bo has another product line, so they are not supported.
If you compare the style report with the OLAP functions of the report, you can find that the report is more operable in man-machine interaction. The browser can directly set dimensions with the mouse and the cube is loaded on the client. Therefore, the presentation and running efficiency are superior (no repeated requests to the server are required, and avoid repeated transmission of the same data in the line ). In addition, massive reports allow OLAP to run offline, and users can distribute the current OLAP model by email, which leads to a wider application space.
Overall Evaluation: The Style Report scored 8 points, 10 points for several giant reports, and 0 points for other products.
Report 15:
Create Cube: 10 million records of raw data, number of dimensions: 10, and number of measurements: 2
Evaluation focus:Computing efficiency and system stability during cube Creation
Product score (out of 10 points ):
Style Report: 8
Crystal Report: 0
Massive reports: 10
Credit Report: 0
Scoring basis:
Functional requirements: style report and several giant reports have independent OLAP servers. Crystal Reports and rundry reports do not support OLAP. Therefore, the crystal report and rundry report are 0 points.
System Stability: During running, no errors are generated for style reports and several large reports.
Cube generation cycle: Style Report: 97 minutes 42 seconds massive report: 61 minutes 01 seconds
System memory usage peak: Style Report: 711 MB large Report: 838 MB
Conclusion: the time required by the cube generation cycle and style report exceeds 50% of the report size, indicating that the report size is superior to the style report in the Cube Algorithm. However, in terms of memory consumption, the number of giant reports is close to 20% higher than that of style report, which indicates that style report has an advantage in resource consumption. Considering that efficiency is more critical in actual business applications, this section provides a report of 10 points and a style report of 8 points.
Total score
Style Report 92 points
Crystal Report: 90 points
Hundreds of thousands of reports
Credit statement 87 points