Background
In business system, same data from a database table may be used in several reports. Then, if the names of them are changed, all corresponding historical data need to be changed synchronously. In this condition, the workload will be huge.
In order to solve this problem, programmers usually add code fields when designing basic data table. Then, fact table refers to the code values of data from database. By dynamic matching, names are displayed in report according to the content of basic data table. So long as the code values remain, the names can be changed to anything.
Difficulties
The simplest matching method is to relate basic data table with fact table according to code values, and display the names of data directly in cells. This method needs no programming or client-side Java script for dynamic matching. However, as a cell only stores a name, if its value is used in another cell, this method can't work.
If cells store codes, and display names, the problem can be solved. However, it needs to write script for dynamic matching. Moreover, if there are a mass of records in basic data, the script may be very long for web page to be download quickly.
There is a more complex condition in which name is stored in several fields, and display value needs to be got from expression. Then, it has to get name from those fields before matching with code value.
The troublesome problem also occurs in data input.
As it is impossible to ask users to input code, Web reporting tool should provide a dropdown box for users to choose name directly.
Sometimes, there are too many options. If all these options can be classified into many grades, and users can make choice grade by grade, it will be very convenient. Then, if Web reporting tool provides dropdown tree or dynamic filter, this aim can be realized easily.
With the problems mentioned above, I believe you have found that the matching of code and display value is not simple, and it can cause enormous problems in real business. If all the problems are to be solved by coding, the workload is too big for anyone.
Easy Solution
Fortunately, for the convenience of all the users, RAQ Report takes great effort to solve this problem. As a pure Java reporting tool, RAQ Report provides an overall solution to this problem.
1. Cells have two attributes, value and display value, and their expressions can be defined flexibly.
2. There are several easy and flexible edit styles, such as dropdown list, dropdown view, dropdown dataset, dynamic filter, etc, and they are enough to satisfy the requirements of different business systems.
Graphical Illustration
RAQSOFT: Innovative Techology Makes Progress.
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.
没有评论:
发表评论