Data report configuration system, method and equipment and storage medium

By providing a data report configuration system, using row key formulation modules and data storage modules, dynamic addition and decentralization of table headers and data decentralization and domain division, solving the problems of complex configuration and insufficient data security in the prior art, reducing costs and simplifying configuration steps.

CN120106030APending Publication Date: 2025-06-06E SURFING VISION TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510260018.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-05
Publication Date
2025-06-06

AI Technical Summary

Technical Problem

In the prior art, users need to write SQL and complex configuration report templates when configuring data reports, resulting in complex configuration processes and difficult operations, and the inability to flexibly implement data decentralization and domain division, which increases R&D and maintenance costs.

Method used

It provides a data report configuration system, including a row key formulation module, a data storage module, a report configuration module, a report information generation and storage module, a data query module and a report display module. The system uses preset rules to formulate report rowkeys to achieve dynamic addition and decrement of table headers and automatic updates. It also uses unified configuration rules to be compatible with single-level and multi-level complex table headers to realize data decentralization and domain division.

Benefits of technology

There is no need to configure report templates and write SQL, the addition and decrease of report headers will take effect automatically, and the configuration steps are simple and easy to understand, solving the problems of complex configuration processes and insufficient data security, and reducing R&D and maintenance costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120106030A_ABST
    Figure CN120106030A_ABST
Patent Text Reader

Abstract

The invention discloses a data report configuration system, method and device and a storage medium, and the system comprises the steps that a row key making module makes a report rowkey according to the authority type of report data and a preset rule; the data storage module carries out cutting and data storage on a report header and report data according to cutting rules in a header storage format and a report data storage format; storing the data volume statistical result according to the data volume information storage format; the report configuration module configures report basic information and menu information; the report information generation and storage module generates report information according to the configuration information and stores the report information; the data query module queries the header, the data volume statistical information and the report data according to the query parameters and the configuration information of the report; and the report display module performs report filling and drawing display according to the query result. The technical problem that in the prior art, a user needs to write an SQL and configure a report template during configuration, and the configuration process is complex is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of data processing technology, and in particular to a data report configuration system, method, device and storage medium. Background Art

[0002] With the advent of the big data era, thousands of data are accumulated from business operations, management and other activities. Reasonable and effective analysis and utilization of data can enable enterprises to understand operational results, guide business decisions, optimize operating methods, promote innovation and promote business development.

[0003] Therefore, with the increasing number of data report businesses, if each report is customized, a lot of R&D and maintenance costs will be wasted. The traditional report configuration method requires users to write SQL to query report data during configuration. If users do not understand SQL technology, they need to rely on R&D personnel, otherwise they cannot complete the configuration independently. Users are also required to perform complex configurations on report templates and report personalized parameters. The configuration process is long, the operation is complex, and it is not flexible enough. Summary of the invention

[0004] The present application provides a data report configuration system, method, device and storage medium, which are used to improve the technical problem that the existing technology requires users to write SQL and configure report templates during configuration, and there is a complex configuration process.

[0005] In view of this, the first aspect of the present application provides a data report configuration system, including:

[0006] The row key formulation module is used to formulate the report rowkey according to the permission type of the report data and the preset rules; the report rowkey includes the header rowkey, data rowkey and data volume statistics rowkey;

[0007] The data storage module is used to cut the report header and report data according to the cutting rules in the header storage format and the report data storage format, and store the cut report header and report data; and store the data volume statistics results according to the data volume information storage format;

[0008] The report configuration module is used to configure the basic information and menu information of the report and obtain the configuration information of the report;

[0009] A report information generation and storage module, used to generate report information according to the configuration information of the report, and store the report information in a database, the report information includes a report menu and a code segment, and the code segment includes a report identifier;

[0010] The data query module is used to query the report header, data volume statistics and report data according to the query parameters and report configuration information;

[0011] The report display module is used to fill in and draw reports based on query results.

[0012] Optionally, the header storage process is as follows: each header is separated by a vertical line. If the report includes multi-level headers, the multi-level headers are separated by horizontal lines; the separated headers are stored;

[0013] The report data storage process is as follows: each data is separated by a vertical line, and the separated data is stored in the order of the header storage.

[0014] Optionally, basic report information includes report name, sub-report name, sub-report data permission type, data table name storing report data, column family, table header rowkey rule, data rowkey rule, data volume statistics rowkey rule, caliber description, and report time dimension type;

[0015] Menu information includes report name, parent menu ID, parent menu name, and menu name.

[0016] Optional, report information generation and storage module, specifically used for:

[0017] Generate code segments based on the basic report information in the configuration information. The code segments include report menu identifier, report name, report identifier, sub-report information in each report, and caliber description;

[0018] Generate a corresponding menu for each report according to the menu information in the configuration information;

[0019] The generated code segments and menu information are stored in a database.

[0020] Optional, the concatenation of the table header rowkey is ;

[0021] The data rowkey includes data reports visible nationwide, data reports visible by province, data reports visible by city, and data reports visible by district and county.

[0022] The splicing form of the nationally visible data report is ;

[0023] The splicing form of the data report visible by province is as follows: ;

[0024] The splicing form of the data report visible by city is as follows: ;

[0025] The splicing form of the data report visible to the sub-district county is as follows: ;

[0026] The concatenation form of the data volume statistics rowkey is: ;

[0027] in, Identifies the subreport in the report; The data account period; for provinces; For prefecture-level cities; For districts and counties; is the row number.

[0028] Optional data query module, specifically used for:

[0029] Obtain the report configuration information list by querying the database, and obtain the report ID and sub-report ID;

[0030] Enter the query parameters, including report ID, subreport ID, account period, page number, and paging size;

[0031] Query the configuration information of the report according to the report ID, and obtain the report rowkey related to the corresponding sub-report according to the sub-report ID;

[0032] Use the subreport identifier to replace the rowkey in the header Variable, use the account period to replace the rowkey in the table header Variable, generate the real header rowkey, and query the report header based on the real header rowkey and configuration information;

[0033] Use subreport identifier to replace the rowkey in data volume statistics Variable, use the account period to replace the rowkey in the data volume statistics Variables, generate real data volume statistics rowkey, and query report data volume statistics information based on real data volume statistics rowkey and configuration information, and filter out data volume statistics information of the current user's permission area;

[0034] According to the current user's permission area, use the province, city, district and county to which the current user has permission to replace the rowkey in the data variable, variable, Variable, and then use the subreport identifier to replace the rowkey in the data Variable, use the account period to replace the rowkey in the data Variable, and then assemble the row number value according to the row number rules based on the data volume statistics, page number, and paging size obtained from the query and replace the row key in the data Variables, generate real data rowkey, and then query the corresponding report data based on the real data rowkey and configuration information.

[0035] Optional report display module, specifically used for:

[0036] According to the configured report information and the current user's permission area and permission menu, the report information list that the current user has permission to view is returned;

[0037] Automatically draw the report display page according to the report configuration information and code snippet;

[0038] According to the report header and report data returned by the data query module, the data is cut according to the cutting rules, and then the report header and data body are filled to realize report display.

[0039] The second aspect of the present application provides a data report configuration method, comprising:

[0040] According to the permission type of report data, formulate report rowkey according to preset rules; report rowkey includes header rowkey, data rowkey and data volume statistics rowkey;

[0041] The header data and report data are cut according to the cutting rules in the header storage format and report data storage format, and the cut header data and report data are stored; the data volume statistics results are stored according to the data volume information storage format;

[0042] Configure report basic information and menu information to obtain report configuration information;

[0043] Generate report information according to report configuration information, and store the report information in a database, the report information includes a report menu and a code segment, and the code segment includes a report identifier;

[0044] Query report headers, data volume statistics, and report data based on query parameters and report configuration information;

[0045] Fill in and draw reports based on query results.

[0046] A third aspect of the present application provides an electronic device, the device comprising a processor and a memory;

[0047] The memory is used to store program codes and transmit the program codes to the processor;

[0048] The processor is used to execute the data report configuration method described in the second aspect according to the instructions in the program code.

[0049] In a fourth aspect, the present application provides a computer-readable storage medium, which is used to store program code. When the program code is executed by a processor, the data report configuration method described in the second aspect is implemented.

[0050] It can be seen from the above technical solutions that this application has the following advantages:

[0051] The data report configuration system provided by the application does not require configuration of report templates or writing of SQL. When the report header is increased or decreased or changed, there is no need to reconfigure or adjust the configuration information. The report header can be automatically added or decreased and automatically updated. The unified configuration rules are compatible with the report configuration of single-level headers and multi-level complex headers. The configuration steps are simple and easy to understand, which improves the problems of complex configuration process and difficult operation in the prior art.

[0052] Furthermore, the configuration system in the present application can achieve data decentralization and domain division through configuration for reports with different data sensitivities, thereby ensuring data security. BRIEF DESCRIPTION OF THE DRAWINGS

[0053] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0054] Figure 1 A structural diagram of a data report configuration system provided in an embodiment of the present application;

[0055] Figure 2 A schematic diagram of a report header provided in an embodiment of the present application;

[0056] Figure 3 A schematic diagram of the data volume information storage format of the report of the district county provided in the embodiment of the present application;

[0057] Figure 4 A schematic diagram of the data volume information storage format of a report by city provided in an embodiment of the present application;

[0058] Figure 5 A schematic diagram of the data volume information storage format of the provincial report provided in the embodiment of the present application;

[0059] Figure 6 A schematic diagram of the data volume information storage format of a report visible to national authorities provided in an embodiment of the present application;

[0060] Figure 7 A schematic diagram of the code segment format specification provided for an embodiment of the present application;

[0061] Figure 8 A code segment field description table provided for an embodiment of the present application. DETAILED DESCRIPTION

[0062] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0063] The traditional way of configuring reports is rather complicated and has the following disadvantages:

[0064] 1) Users are required to write SQL to query report data during configuration. If users do not understand SQL technology, they need to rely on R&D personnel, otherwise they cannot complete the configuration independently;

[0065] 2) Users are required to perform complex configurations on report templates and report personalized parameters, which results in a long configuration process, complex operations, and insufficient flexibility;

[0066] 3) For reports with different data sensitivities, it is not possible to flexibly implement data decentralization and domain division through configuration, and additional development is required, which increases R&D and maintenance costs.

[0067] To improve the above problems, please refer to Figure 1 , the embodiment of the present application provides a data report configuration system, including:

[0068] The row key formulation module is used to formulate the report rowkey according to the permission type of the report data and the preset rules; the report rowkey includes the header rowkey, data rowkey and data volume statistics rowkey;

[0069] The data storage module is used to cut the report header and report data according to the cutting rules in the header storage format and the report data storage format, and store the cut report header and report data; and store the data volume statistics results according to the data volume information storage format;

[0070] The report configuration module is used to configure the basic information and menu information of the report and obtain the configuration information of the report;

[0071] A report information generation and storage module, used to generate report information according to the configuration information of the report, and store the report information in a database, the report information includes a report menu and a code segment, and the code segment includes a report identifier;

[0072] The data query module is used to query the report header, data volume statistics and report data according to the query parameters and report configuration information;

[0073] The report display module is used to fill in and draw reports based on query results.

[0074] As the reporting business increases, the data sensitivity of each report is different. It is usually necessary to implement the decentralization of report data to ensure data security. At the same time, the complexity of the header of each report is also different. Some reports have only simple first-level headers, while others have multi-level complex headers. If each report is customized, it will obviously waste a lot of R&D costs and maintenance costs. When the report changes, if you need to add or remove headers or add or remove sub-reports, you need to modify the code and continue to invest in R&D costs, resulting in low R&D efficiency, low output, and difficulty in later maintenance. Therefore, it is necessary to implement configurable dynamic data reports with decentralization and domains, but the existing report configuration method has a long configuration process, complex operation, cumbersome configuration steps, narrow scope of application, and is not flexible and general enough. In order to improve the above problems, this application formulates the report rowkey according to the permission type of the report data through the row key formulation module according to the preset rules. This application uses Hbase to store report data, and the rowkey formulation rules in the row key formulation module include the following three parts:

[0075] 1) Table header rowkey: ;

[0076] 2) Data rowkey:

[0077] a. Nationally visible data reports: ;

[0078] b. Data reports visible by province: ;

[0079] c. Data reports visible by city: ;

[0080] d. Data reports visible to sub-district counties: ;

[0081] 3) Data volume statistics rowkey: .

[0082] The rules for setting variables in rowkey are as follows:

[0083] 1) It is the subreport number in the report (the unique identifier of the subreport). If a report contains multiple sheet pages, that is, multiple subreports, the rowkey of each subreport is must be different, as a distinction;

[0084] 2) The data account period is filled in according to the account period to which the data belongs;

[0085] 3) For provinces, fill in according to the province to which the data belongs;

[0086] 4) For cities, fill in the information based on the city to which the data belongs;

[0087] 5) For districts and counties, fill in according to the district and county to which the data belongs;

[0088] 6) For line numbers, the line number setting rules are as follows:

[0089] a. If the sub-report is divided into counties, it will be grouped by four dimensions: account period, province, city, and district;

[0090] b. If the sub-report is divided into cities, group them by account period, province and city;

[0091] c. If the sub-report is divided by province, it is grouped by two dimensions: account period and province;

[0092] d. If the sub-report data is visible only to users with national permissions, group it by one dimension: account period;

[0093] After the data is grouped, the row number of each group of data starts from 1. When the row number is less than 15 digits, 0 is added on the left to make it up to 15 digits.

[0094] The row key formulation module formulates the report rowkey according to the permission type of the report data (including district county, city, province and national permissions) and the above rules.

[0095] The data storage format specification in the data storage module is aligned with the report rowkey formulation rules. The data storage format specification consists of the following three parts:

[0096] 1) Table header storage format: Each table header is separated by a vertical line (" If there are multiple levels of headers, use a horizontal line (" ”) to split, if the report header is as follows Figure 2 As shown, the table header is stored as: Province|City|Overall Development-Goal|Overall Development-Completion Rate|Overall Development-Scenario A-Daily Net Increase|Overall Development-Scenario A-Monthly Net Increase|Overall Development-Scenario A-Annual Net Increase|Overall Development-Scenario B-Daily Net Increase|Overall Development-Scenario B-Monthly Net Increase|Overall Development-Scenario B-Annual Net Increase;

[0097] 2) Report data storage format: Each data is separated by a vertical line, and the data storage order is aligned with the header storage order, such as: xx Province | xx City | 1000 | 99% | 119 | 284 | 1656 | 61 | 260 | 1257;

[0098] 3) Data volume information storage format: After grouping the report data, perform data volume statistics and store the statistical results (the data volume statistical results can be used for paging). The following is an example of the data volume information storage format for reports of different permission types:

[0099] a. Sub-county report, where province is the province, province_count is the total data of the province, city_list is the list of cities in the province, city is the city, city_count is the total data of the local city, county_list is the list of local cities, county is the district, county_count is the total data of the district, and the data volume information is stored in the following format: Figure 3 As shown;

[0100] b. Report by city, where province is the province, province_count is the total data of the province, city_list is the list of cities in the province, city is the city, city_count is the total data of the city, and the data volume information is stored in the following format: Figure 4 As shown;

[0101] c. For provincial reports, province is the province, province_count is the total amount of data in the province, and the data volume information is stored in the following format: Figure 5 As shown;

[0102] d. Reports visible only to national authorities, where count is the total amount of data nationwide. The data volume information is stored in the following format: Figure 6 shown.

[0103] The data storage module cuts and splices the data according to the above data storage format, and then stores the cut and spliced ​​data.

[0104] The row key formulation module and the data storage module are used to store the current report data in a unified format so that the subsequent data query module can perform data query. In addition, the row key formulation module can formulate data rowkeys according to the permission type of the report data, which can realize the division of rights and domains of the report data, and help improve the security of the data.

[0105] The report configuration module is used to configure the basic report information and menu information, as follows:

[0106] 1) The basic information of the report includes the following:

[0107] a. Report name: Chinese name of the report;

[0108] b. Subreport name: The name of the subreport is the name corresponding to each sheet page. If a report contains multiple subreports, each subreport name is separated by a line break;

[0109] c. Sub-report data permission type: 1-National, 2-Provincial, 3-City, 4-District and County;

[0110] d. Table name: the name of the Hbase table that stores report data;

[0111] e. Column family: the column family in the Hbase table;

[0112] f. Table header rowkey rule: Align with the subreport name order. If multiple subreports are included, the table header rowkeys corresponding to each subreport are separated by line breaks;

[0113] g. Data rowkey rule: Align with the subreport name order. If multiple subreports are included, the data rowkeys corresponding to each subreport are separated by line breaks;

[0114] h. Data volume statistics rowkey rule: Align with the subreport name sequence. If multiple subreports are included, the data volume statistics rowkeys corresponding to each subreport are separated by line breaks;

[0115] i. Scope description: the scope description of the report;

[0116] j. Report time dimension type: 1-Daily report, 2-Weekly report, 3-Monthly report, 4-Quarterly report, 5-Annual report.

[0117] 2) Menu information includes report name, parent menu ID, parent menu name, menu Chinese name, and menu English name.

[0118] It should be noted that the rowkey rules in the report configuration module are the same as the report rowkey formulation rules in the row key formulation module.

[0119] The report information generation and storage module generates a unique identifier corresponding to the report and a unique identifier for each sub-report in each report based on the report basic information in the report configuration module, and also generates a code segment related to the report information. The format of the generated code segment is as follows: Figure 7 As shown, the code segment field description is as follows Figure 8Then, the report information generation and storage module generates a corresponding menu for each report according to the menu information in the report configuration module; finally, the report information generation and storage module stores the report information (including the report menu and code segment) in the Mysql database.

[0120] The data query module queries the report configuration information list from the MySQL database, obtains the basic configuration information of the corresponding report, and then obtains the report ID and sub-report ID. The input parameters of the data query module when performing data query include report ID (unique identifier of the report), sub-report ID (i.e. unique identifier of the sheet page), account period, page number, and paging size. The data query module queries the detailed configuration information of the report based on the report ID, and then obtains the rowkey rules related to the corresponding sub-report based on the sub-report ID;

[0121] The data query module then queries the report header information by replacing the subreport ID in the header rowkey Variable, replace the account period in the rowkey of the table header Variables, assemble the real header rowkey, and query the report header based on the real header rowkey and the configured Hbase table name and column family;

[0122] After the data query module queries the report header information, it queries the report data volume statistics information by replacing the subreport ID in the data volume statistics rowkey Variable, replace the account period with the rowkey in the data volume statistics Variables, assemble the real data volume statistics rowkey, and then query the report data volume statistics information based on the real data volume statistics rowkey and the configured Hbase table name and column family, and filter out the data volume statistics information of the current user's permission area; the current user's permission area can be determined based on the current user's account information;

[0123] The data query module then queries the report data in pages, and replaces the specific province, city, district, and county in the data rowkey with the user's permission area according to the current user's permission area. , , Variables are used to achieve data decentralization and domain division; then the sub-report ID is replaced by the rowkey in the data Variable, replace the account period in the rowkey of the data Variable, and then according to the above process query the data volume statistics and the two parameters of page number and paging size, assemble the row number value according to the row number rule and replace the rowkey in the data Variables can be used to assemble a batch of real data rowkeys, and then the corresponding report data can be queried based on the real data rowkeys and the configured Hbase table name and column family.

[0124] The report display module returns a list of report information that the user is authorized to view based on the configured report information and the current user's permission area and authorized menu; then it automatically draws the report display page based on the report configuration information and the code segment generated during configuration; finally, based on the report header and report data returned by the data query module, the data is cut according to the cutting rules, and then the header and data body are filled to realize report display.

[0125] The report data configuration system in the present application does not require configuration of report templates or writing of SQL. When report headers are increased or decreased or changed, there is no need to reconfigure or adjust the configuration information, and it can automatically take effect, thereby realizing dynamic increase or decrease of headers and automatic updates. The unified configuration rules are compatible with report configurations of single-level headers and multi-level complex headers. The configuration steps are simple and easy to understand, which improves the problems of complex configuration process and difficult operation in the prior art. In addition, the configuration system in the present application can achieve data decentralization and domain division through configuration for reports with different data sensitivity levels, thereby ensuring data security.

[0126] The present application also provides a data report configuration method, which is applied to the above data report configuration system, and the method includes:

[0127] Step 110: According to the permission type of the report data, a report rowkey is formulated according to preset rules.

[0128] Report rowkeys include header rowkey, data rowkey, and data volume statistics rowkey.

[0129] Step 120: Cut the header data and report data according to the cutting rules in the header storage format and the report data storage format, and store the cut header data and report data; store the data volume statistics results according to the data volume information storage format;

[0130] The table header storage format is aligned one-to-one with the table header rowkey, the report data storage format is aligned one-to-one with the data rowkey, and the data volume information storage format is aligned one-to-one with the data volume statistics rowkey.

[0131] Table header storage format: Each table header is separated by a vertical line (" If there are multiple levels of headers, use a horizontal line (" ”) to split the table and store the split header;

[0132] Report data storage format: Each data is separated by a vertical line, and the data storage order is aligned with the header storage order, such as: xx Province|xx City|1000|99%|119|284|1656|61|260|1257;

[0133] Data volume information storage format: After grouping the report data, perform data volume statistics and store the statistical results.

[0134] The row key formulation module and the data storage module are used to store the current report data in a unified format so that the subsequent data query module can perform data query. In addition, the row key formulation module can formulate data rowkeys according to the permission type of the report data, which can realize the division of rights and domains of the report data, and help improve the security of the data.

[0135] Step 130: configure report basic information and menu information to obtain report configuration information;

[0136] The basic information of the report includes the following:

[0137] a. Report name: Chinese name of the report;

[0138] b. Subreport name: The name of the subreport is the name corresponding to each sheet page. If a report contains multiple subreports, each subreport name is separated by a line break;

[0139] c. Sub-report data permission type: 1-National, 2-Provincial, 3-City, 4-District and County;

[0140] d. Table name: the name of the Hbase table that stores report data;

[0141] e. Column family: the column family in the Hbase table;

[0142] f. Table header rowkey rule: Align with the subreport name order. If multiple subreports are included, the table header rowkeys corresponding to each subreport are separated by line breaks;

[0143] g. Data rowkey rule: Align with the subreport name sequence. If multiple subreports are included, the data rowkeys corresponding to each subreport are separated by line breaks;

[0144] h. Data volume statistics rowkey rule: Align with the subreport name sequence. If multiple subreports are included, the data volume statistics rowkeys corresponding to each subreport are separated by line breaks;

[0145] i. Scope description: the scope description of the report;

[0146] j. Report time dimension type: 1-Daily report, 2-Weekly report, 3-Monthly report, 4-Quarterly report, 5-Annual report.

[0147] Menu information includes report name, parent menu ID, parent menu name, menu Chinese name, and menu English name.

[0148] It should be noted that the rowkey rules in the report configuration module are the same as the report rowkey formulation rules in the row key formulation module.

[0149] Step 140: Generate report information according to the configuration information of the report, and store the report information in a database, wherein the report information includes a report menu and a code segment, and the code segment includes a report identifier;

[0150] First, generate the unique identifier corresponding to the report and the unique identifier of each sub-report in each report according to the report basic information in the configuration information, and generate the code segment related to the report information, which includes the report menu identifier, report name (including the Chinese name of the report and the pinyin of the report name), report identifier (i.e. report ID), sub-report information in each report and caliber description;

[0151] Then, a corresponding menu is generated for each report according to the menu information in the configuration information;

[0152] Finally, the report information (including report menu and code snippet) is stored in the MySQL database.

[0153] Step 150: query the report header, data volume statistics and report data according to the query parameters and the configuration information of the report;

[0154] Query the report configuration information list from the MySQL database, obtain the basic configuration information of the corresponding report, and thus obtain the report ID and sub-report ID;

[0155] The input parameters for query include report ID (unique identifier of report), sub-report ID (i.e. unique identifier of sheet page), account period, page number, and paging size. The detailed configuration information of the report is queried based on the report ID, and then the rowkey rules related to the corresponding sub-report are obtained based on the sub-report ID.

[0156] Query report header information: Replace the subreport ID in the header rowkey Variable, replace the account period in the rowkey of the table header Variables, assemble the real header rowkey, and query the report header based on the real header rowkey and the configured Hbase table name and column family;

[0157] Query report data statistics: Replace the subreport ID with the data statistics rowkey. Variable, replace the account period with the rowkey in the data volume statistics Variables, assemble the real data volume statistics rowkey, query the report data volume statistics information based on the real data volume statistics rowkey and the configured Hbase table name and column family, and filter out the data volume statistics information of the current user's permission area;

[0158] Paginated query report data: According to the current user's permission area, the specific province, city, district and county to which the user has permission replaces the rowkey in the data , , Variables are used to achieve data decentralization and domain division, and then the sub-report ID is replaced by the rowkey in the data Variable, replace the account period in the rowkey of the data Variable, and then according to the data volume statistics obtained in step 4 and the two parameters of page number and paging size, assemble the row number value according to the row number rule and replace the rowkey in the data Variables can be used to assemble a batch of real data rowkeys, and then the corresponding report data can be queried based on the real data rowkeys and the configured Hbase table name and column family.

[0159] Step 160: Fill in the report and draw the display according to the query results;

[0160] According to the configured report information and the current user's permission area and the menu with permission, return the list of report information that the user has permission to view; then automatically draw the report display page according to the report configuration information and the code segment generated during configuration; finally, according to the report header and report data obtained by the query, cut the data according to the cutting rules, and then fill the header and data body to realize report display.

[0161] The report data configuration method in the present application does not require configuration of report templates or writing of SQL. When report headers are increased or decreased or changed, there is no need to reconfigure or adjust the configuration information, and it can automatically take effect, thereby realizing dynamic increase or decrease of headers and automatic updates. The unified configuration rules are compatible with report configurations of single-level headers and multi-level complex headers. The configuration steps are simple and easy to understand, which improves the problems of complex configuration process and difficult operation in the prior art. In addition, the configuration system in the present application can achieve data decentralization and domain division through configuration for reports with different data sensitivities, thereby ensuring data security.

[0162] The embodiment of the present application also provides an electronic device, the device comprising a processor and a memory;

[0163] The memory is used to store the program code and transmit the program code to the processor;

[0164] The processor is used to execute the data report configuration method in the aforementioned method embodiment according to the instructions in the program code.

[0165] The embodiment of the present application also provides a computer-readable storage medium, which is used to store program code. When the program code is executed by a processor, the data report configuration method in the aforementioned method embodiment is implemented.

[0166] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific content process of the method described above can refer to the corresponding process in the aforementioned system embodiment, and will not be repeated here.

[0167] The terms "first", "second", "third", "fourth", etc. (if any) in the specification of this application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0168] It should be understood that in this application, "at least one (item)" means one or more, and "plurality" means two or more. "And / or" is used to describe the association relationship of associated objects, indicating that three relationships may exist. For example, "A and / or B" can mean: only A exists, only B exists, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally indicates that the objects associated before and after are in an "or" relationship. "At least one of the following" or similar expressions refers to any combination of these items, including any combination of single or plural items. For example, at least one of a, b or c can mean: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, c can be single or multiple.

[0169] In the several embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0170] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0171] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0172] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium, including a number of instructions for executing all or part of the steps of the method described in each embodiment of the present application through a computer device (which can be a personal computer, server, or network device, etc.). The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (full name in English: Read-Only Memory, English abbreviation: ROM), random access memory (full name in English: Random Access Memory, English abbreviation: RAM), disk or optical disk and other media that can store program codes.

[0173] As described above, the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims

1. A data report configuration system, characterized in that: include: The row key formulation module is used to formulate the report rowkey according to the permission type of the report data and the preset rules; the report rowkey includes the header rowkey, data rowkey and data volume statistics rowkey; The data storage module is used to cut the report header and report data according to the cutting rules in the header storage format and the report data storage format, and store the cut report header and report data; and store the data volume statistics results according to the data volume information storage format; The report configuration module is used to configure the basic information and menu information of the report and obtain the configuration information of the report; A report information generation and storage module, used to generate report information according to the configuration information of the report, and store the report information in a database, the report information includes a report menu and a code segment, and the code segment includes a report identifier; The data query module is used to query the report header, data volume statistics and report data according to the query parameters and report configuration information; The report display module is used to fill in and draw reports based on query results.

2. The data report configuration system according to claim 1, characterized in that: The header storage process is as follows: each header is separated by a vertical line. If the report includes multi-level headers, the multi-level headers are separated by horizontal lines; the separated headers are stored; The report data storage process is as follows: each data is separated by a vertical line, and the separated data is stored in the order of the header storage.

3. The data report configuration system according to claim 1, characterized in that: The basic report information includes the report name, sub-report name, sub-report data permission type, the name of the data table storing the report data, the column family, the table header rowkey rule, the data rowkey rule, the data volume statistics rowkey rule, the caliber description, and the report time dimension type; Menu information includes report name, parent menu ID, parent menu name, and menu name.

4. The data report configuration system according to claim 1, characterized in that: Report information generation and storage module, specifically used for: Generate code segments based on the basic report information in the configuration information. The code segments include report menu identifier, report name, report identifier, sub-report information in each report, and caliber description; Generate a corresponding menu for each report according to the menu information in the configuration information; The generated code segments and menu information are stored in a database.

5. The data report configuration system according to claim 1, characterized in that: The concatenation format of the table header rowkey is: ; The data rowkey includes data reports visible nationwide, data reports visible by province, data reports visible by city, and data reports visible by district and county. The splicing form of the nationally visible data report is ; The splicing form of the data report visible by province is as follows: ; The splicing form of the data report visible by city is as follows: ; The splicing form of the data report visible to the sub-district county is as follows: ; The concatenation form of the data volume statistics rowkey is: ; in, Identifies the sub-report in the report; The data account period; for provinces; For prefecture-level cities; For districts and counties; is the row number.

6. The data report configuration system according to claim 5, characterized in that: Data query module, specifically used for: Obtain the report configuration information list by querying the database, and obtain the report ID and sub-report ID; Enter the query parameters, including report ID, subreport ID, account period, page number, and paging size; Query the configuration information of the report according to the report ID, and obtain the report rowkey related to the corresponding sub-report according to the sub-report ID; Use the subreport identifier to replace the rowkey in the header Variable, use the account period to replace the rowkey in the table header Variable, generate the real header rowkey, and query the report header based on the real header rowkey and configuration information; Use subreport identifier to replace the rowkey in data volume statistics Variable, use the account period to replace the rowkey in the data volume statistics Variables, generate real data volume statistics rowkey, and query report data volume statistics information based on real data volume statistics rowkey and configuration information, and filter out data volume statistics information of the current user's permission area; According to the current user's permission area, use the province, city, district and county to which the current user has permission to replace the rowkey in the data variable, variable, Variable, and then use the subreport identifier to replace the rowkey in the data Variable, use the account period to replace the rowkey in the data Variable, and then assemble the row number value according to the row number rules based on the data volume statistics, page number, and paging size obtained from the query and replace the row key in the data Variables, generate real data rowkey, and then query the corresponding report data based on the real data rowkey and configuration information.

7. The data report configuration system according to claim 6, characterized in that: Report display module, specifically used for: According to the configured report information and the current user's permission area and permission menu, the report information list that the current user has permission to view is returned; Automatically draw the report display page according to the report configuration information and code snippet; According to the report header and report data returned by the data query module, the data is cut according to the cutting rules, and then the report header and data body are filled to realize report display.

8. A data report configuration method, characterized in that: include: According to the permission type of report data, formulate report rowkey according to preset rules; report rowkey includes header rowkey, data rowkey and data volume statistics rowkey; The header data and report data are cut according to the cutting rules in the header storage format and report data storage format, and the cut header data and report data are stored; the data volume statistics results are stored according to the data volume information storage format; Configure report basic information and menu information to obtain report configuration information; Generate report information according to report configuration information, and store the report information in a database, the report information includes a report menu and a code segment, and the code segment includes a report identifier; Query report headers, data volume statistics, and report data based on query parameters and report configuration information; Fill in and draw reports based on query results.

9. An electronic device, characterized in that: The device includes a processor and a memory; The memory is used to store the program code and transmit the program code to the processor; The processor is used to execute the data report configuration method described in claim 8 according to the instructions in the program code.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium is used to store program codes, and when the program codes are executed by the processor, the data report configuration method described in claim 8 is implemented.