This happened many years ago. It took me three weeks from joining Tencent to leaving Tencent. The reason was simple: my colleagues in big data looked down on those who made financial statements.
Do big data, can certainly do a good report?
Statements are an essential part of enterprise IT data construction. They are important data, ranging from an entry and exit slip to the company’s KPI management board.
How is the report developed? Either use Excel processing, or IT write PHP, Python to develop, or use ready-made reporting tools.
In this paper, from the technical point of view to compare three common report development mode, respectively Excel report, code development, report tools.
Usually a report making process: business requirements – > report prototype design – > demand confirmation – > data collation and proofreading – > report development – > demand change and maintenance.
Among them, the biggest correlation with report development mode is report prototype design, report development and demand change maintenance. The following compares and combs from these three perspectives.
1. Report prototype design
Prototyping is mostly used in product requirements, so here’s a concept borrowed. If the enterprise’s statements are also regarded as a product, then one by one the report requirements can also be seen as product requirements, in fact, some companies now have a data product manager, data report design work is also in their category.
Why do I need to do report prototype design? Take a scenario as an example: For example, I used to make a filling page, which was brought by the human resources department to input employee information. At that time, I just made a simple page, about 10 information fields were filled in, but the format of presentation was modified 3 or 4 times.
To the back of the demand for continuous change, first constantly increase the information content filled in; Later, it was found that the data structure at the data end was changed, resulting in data confusion and failure to fill in;
And then to open the permission to modify information; Then to the back of the need to do salary jump page, add more sheet filling. Dozens of requirements were changed back and forth around this report. Part of this is due to the lack of requirements validation and prototyping of reporting requirements.
How do tools aid prototyping?
There is no prototype design in Excel report development. Most people do report development by first guiding data from the database, making a rough preview of the data, and then thinking about what kind of report style to make, and then drawing in Excel. Excel is easy to use because data is also stored in tables.
Using code to develop reports, it is more troublesome, such as pure Java code to develop reports, there is no front-end interface, what kind of reports are only exist in the mind of the developers, as for the format of what, but also need to manual code adjustment. The biggest problem is that the report needs to adapt to different resolutions of computers, mobile phones, so it is more troublesome to develop with code.
Report tools to develop reports, such as FineReport, which has a report designer, similar to Excel design interface, you can directly design report styles in the designer. Or in the early stage of communication needs can also use Excel simple design under the style.
However, for some complex requirements, such as mobile terminal reports, multi-sheet reports and visual large-screen reports, Excel cannot meet these requirements, and prototypes cannot be designed naturally. Therefore, a report tool that can directly draw prototypes is more suitable.
2. Technical development of statements
Excel in the local report can be done, everyone will use, get started without difficulty, but with Excel performance depends on your computer, the amount of data is easy to crash, so from the database derivative according to need to be careful.
I think it is impossible to do enterprise-class report Excel. You need to connect with the database, do report maintenance, and collect data. Scattered Excel forms will crash. The most annoying thing is that if the data changes, the whole body will be pulled. Therefore, the function of Excel table is real-time, and the data is not correct after a period of time.
Using code to develop reports can also quickly solve the point-to-point requirements, but as a long-term report development work, it is basically a heap of people writing code. And there’s a way since research reporting tools, such as Java has some butt Excel report function library, there is also a visual chart library, but some problems such as print statements, complex data calculation, complex format reports show still do bad, people think a lot, since the research reporting tool pit requires much manpower, pesters!
Reporting tool is relatively mature and stable, after all, is to spend money to solve the above problems can not be solved. FineReport’s excel like design method is the prominent advantage of this tool (many of us are not real programmers and it is a little difficult to develop reports), and as long as we know SQL and some simple JS and cooperate with its various report design modes, we can basically achieve various complex report styles.
In particular, the design of data dictionary, actual value and display value is the key to rapid development, which in other languages and systems often need a lot of code to achieve, in Finereport anyway is ready-made functions.
3. Change and maintain report requirements
Many times mentioned in front of the report requirements change, do the report is the most annoying to hear statements to modify, to adjust, not good to use such words. Changing statements is also a headache.
Excel needs to find and update the source data first, export it, copy it, and then change it. Basically, every change needs to be done again.
FineReport changes report requirements mainly for report template operations. Technology can save time, such as data update, because it is directly connected to the data source, you can customize the update T+1 or real-time, this mainly depends on the database/data warehouse support.
As a report system, FineReport is deployed on the server, which enables different personnel to design, modify and maintain templates on the remote report server, simplifying the operation and maintenance of templates.
In addition, there is the use and operation of the report system. As time goes by, there will be more and more reports, and reports need to be iterated and optimized according to the usage data of business personnel, discarding the discarded reports in time, and adjusting the display style, interaction effect, and performance of commonly used templates. This is also the advantage of reporting tools.
Finally, summarize the advantages and disadvantages of three report development modes: Excel report, code development and report tools.