Report generation method and device

By obtaining the URL and configuration information of the reports generated by BI products, generating json data and nesting nested reports in the report system, the integration problem between BI product reports and ordinary reporting systems is solved, and the efficiency of report development is improved.

CN112115691BActive Publication Date: 2025-02-11上海乾臻信息科技有限公司
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202010865236.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-08-25
Publication Date
2025-02-11
Estimated Expiration
2040-08-25

AI Technical Summary

Technical Problem

It is difficult for the existing technology to integrate reports generated in BI products into ordinary reporting systems, resulting in inefficient report development.

Method used

By obtaining the URL and configuration information of the reports generated by a third-party system, generating json data, and nesting nested reports in the report system to realize the integration of BI product reports.

Benefits of technology

It integrates reports generated by third-party systems into ordinary reporting systems, improving report development efficiency, and users can interact, query, display and export reports generated by BI servers through the reporting system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112115691B_ABST
    Figure CN112115691B_ABST
Patent Text Reader

Abstract

The present application provides a report generation method and device, the method comprising: obtaining the URL of a first report for embedding in a report system; obtaining the configuration information of a second report; generating json data including the URL of the first report and the configuration information of the second report; and generating a second report in the report system that embeds the first report according to the json data. Parameter configuration is performed in the report system, and the first report generated by the third-party system is embedded in the second report in the report system in a nested manner, thereby integrating the developed third-party system report into the existing report system, and users can interact with the third-party system through the report system to query, display and export the report generated by the third-party system, thereby improving the efficiency of report development.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of information processing, and in particular to a report generation method and device, an electronic device, and a computer-readable storage medium. Background Art

[0002] Reporting is a basic measure and approach for enterprise management, a basic business requirement for enterprises, and the basis for implementing BI (Business Intelligence) strategies. BI, also known as business intelligence, refers to the use of modern data warehouse technology, online analysis and processing technology, data mining and data presentation technology to analyze data to achieve business value. At present, most companies have their own reporting systems, and there are also some BI products on the market that provide technologies and methods for enterprises to quickly analyze data.

[0003] Compared with ordinary reporting systems, some BI products have the advantages of high data consistency, high security, and unified user interface and management configuration interface, which are conducive to rapid development and implementation, and greatly reduce training costs and deployment costs. In view of the advantages of these BI products, it is necessary to integrate the reports generated in BI products into ordinary reporting systems, and query, display and export reports generated by BI servers through the interaction between the reporting system and the BI server to improve the efficiency of report development. Summary of the invention

[0004] The purpose of this application is to provide a report generation method and device, an electronic device, and a computer-readable storage medium to integrate the reports generated in BI products into a general reporting system to improve the efficiency of report development.

[0005] The purpose of this application is achieved by the following technical solutions:

[0006] In the first aspect, the present application provides a report generation method, the method comprising: obtaining the URL of a first report for embedding in a report system; obtaining the configuration information of a second report; generating json data including the URL of the first report and the configuration information of the second report; and generating a second report in the report system that embeds the first report according to the json data. The beneficial effect of this technical solution is that parameter configuration is performed in the report system, and the first report generated by a third-party system is embedded in the second report in the report system in a nested manner, thereby integrating the developed third-party system report into the existing report system, and users can interact with the third-party system through the report system to query, display and export the reports generated by the third-party system, thereby improving the efficiency of report development.

[0007] In some optional implementations, the step of obtaining the URL of the first report for embedding in the report system includes: in response to a user selecting the first report, obtaining the URL of the first report, wherein the first report is created by the Cognos system according to the data source of the data package. The technical solution has the beneficial effect of creating the first report for embedding in the report system using the data source of the data package in the third-party system.

[0008] In some optional implementations, the configuration information of the second report includes an external parameter group and an internal parameter group of the second report, the external parameter group includes at least one of a report name, a report identifier, and an attribution menu, and the internal parameter group includes at least one of a query condition type, a condition name, a condition identifier, a condition box type, a cascade type, a mandatory type, and a permission type; the obtaining of the configuration information of the second report includes: obtaining the external parameter group of the second report; obtaining the internal parameter group of the second report. The beneficial effect of this technical solution is that the query condition in the second report is determined by configuring the external parameter group and the internal parameter group, and the appropriate external parameter group and internal parameter group can be flexibly selected in practical applications.

[0009] In some optional implementations, the configuration information of the second report also includes at least one of the report rules, default time period, and business area division identifier of the second report, and the business area division identifier is used to indicate whether the area in the second report adopts business area division. The beneficial effect of this technical solution is that the user is prompted with relevant information of the report by configuring the report rules, the time range of the data displayed in the second report is determined by configuring the default time period, and whether the area in the second report adopts business area division is determined by configuring the business area division identifier, thereby flexibly meeting the needs of users in actual applications.

[0010] In some optional implementations, the external parameter group includes a report name and a report identifier; the external parameter group for obtaining the second report includes: receiving the report name of the second report; detecting whether there is a report identifier corresponding to the report name in a predetermined report identifier group; if so, using the report identifier corresponding to the report name as the report identifier of the second report; if not, prompting the user to re-enter the report name, or receiving the report identifier input by the user as the report identifier of the second report. The beneficial effect of this technical solution is that the report name used by the user can usually reflect the content or purpose of the report, and by matching the report name with the corresponding report identifier, reports with the same report name have the same report identifier, thereby achieving report standardization and facilitating the use of report identifiers to manage reports when the number of reports is large; report identifiers are mostly represented by numbers, letters, or a combination of the two. Compared with directly using report names for report management, using report identifiers for report management can reduce the amount of data in the data processing process.

[0011] In some optional implementations, the internal parameter group includes a condition type, a condition name and a condition identifier of the query condition; the internal parameter group of the second report is obtained, including: in response to the user adding the first query condition operation, providing at least one condition type to the user; in response to the user selecting the condition type operation, using the condition type selected by the user as the condition type of the first query condition; receiving the condition name of the first query condition; detecting whether there is a condition identifier corresponding to the condition name of the first query condition in the predetermined condition identifier group; if there is, using the condition identifier corresponding to the condition name of the first query condition as the condition identifier of the first query condition; if not, prompting the user to re-enter the condition name, or receiving the condition identifier input by the user as the condition identifier of the first query condition. The beneficial effect of this technical solution is that the condition name used by the user can usually reflect the content or purpose of the query condition, and by matching the condition name with the corresponding condition identifier, the report with the same condition name has the same condition identifier, so as to realize the standardization of the report, and facilitate the use of condition identifiers to manage the report when the number of reports is large; the condition identifier is mostly represented by numbers, letters or a combination of the two. Compared with directly using the condition name for report management, using the condition identifier for report management can reduce the amount of data in the data processing process.

[0012] In some optional implementations, the condition type includes a first condition type as an upper node and a second condition type as a lower node, and the internal parameter group also includes a cascade type; the internal parameter group of the second report is obtained, and further includes: in response to the user's operation of selecting the cascade type, the cascade type selected by the user is used as the cascade type of the first query condition; the method further includes: in response to the user's operation of determining the value of the first query condition in the second report, obtaining the condition type and cascade type of the first query condition; if the condition type of the first query condition is the first condition type, then detecting whether there is a second query condition in the second report that has the same cascade type as the first query condition and the condition type is the second condition type; if so, then using the value of the first query condition to filter the data corresponding to the second query condition. The beneficial effect of this technical solution is that the cascade type is set to realize the linkage between query conditions with upper and lower node relationships of the condition type, narrow the data range in the corresponding lower query condition when the upper query condition is to determine the value, and improve the work efficiency of the user. For example, the condition type of the first query condition is distribution, and the condition type of the second query condition is branch. Branch is the lower node of distribution. The user needs to query the Nanjing East Road branch corresponding to Shanghai distribution. When the user determines that the value of the distribution field is Shanghai distribution, Shanghai distribution is used to filter the data of the branch field to filter out the branches corresponding to Shanghai distribution, so that the user can quickly find the Nanjing East Road branch from the filtered branches. If cascading is not used, after the user selects Shanghai distribution in the distribution field, the branch field still displays the data of all branches, and the user needs to spend more time to find the Nanjing East Road branch.

[0013] In some optional implementations, generating a second report in the report system that embeds the first report based on the json data includes: using the configuration information of the second report in the json data to generate query conditions for the second report in the report system; using the URL of the first report in the json data to embed the first report in the report system through an iframe to generate a data display area for the second report. The beneficial effect of this technical solution is that the json data has a concise and clear hierarchical structure, which is easy for people to read and write, and is also easy for machines to parse and generate, and effectively improves network transmission efficiency. The configuration information and URL in the json data are used to generate the query conditions and data display area of ​​the second report, respectively, to improve report development efficiency.

[0014] In some optional implementations, the method further includes: storing the domain name of the reporting system in a cookie; in response to a user's data request operation in the second report, generating a data request carrying the cookie and sending it to a proxy server, so that the proxy server forwards the data request to a third-party system, the third-party system is used to provide the first report, the proxy server has the same domain name as the reporting system; and receiving the data request result returned by the proxy server. The beneficial effect of this technical solution is that cross-domain login between the reporting system and the third-party system is achieved through the proxy server.

[0015] In a second aspect, the present application provides a report generation device, which includes: a URL acquisition module for acquiring the URL of a first report for embedding in a reporting system; a configuration acquisition module for acquiring configuration information of a second report; a data generation module for generating json data containing the URL of the first report and the configuration information of the second report; and a report generation module for generating a second report in the reporting system that embeds the first report according to the json data.

[0016] In some optional implementations, the URL acquisition module is used to acquire the URL of the first report in response to a user selecting the first report, where the first report is created by the Cognos system according to the data source of the data package.

[0017] In some optional embodiments, the configuration information of the second report includes an external parameter group and an internal parameter group of the second report, the external parameter group includes at least one of a report name, a report identifier, and an attribution menu, and the internal parameter group includes at least one of a condition type, a condition name, a condition identifier, a condition box type, a cascade type, a required type, and a permission type of a query condition; the configuration acquisition module is used to: obtain the external parameter group of the second report; obtain the internal parameter group of the second report.

[0018] In some optional implementations, the configuration information of the second report also includes at least one of a report rule, a default time period, and a business area division identifier of the second report, and the business area division identifier is used to indicate whether the area in the second report adopts business area division.

[0019] In some optional embodiments, the external parameter group includes a report name and a report identifier; the configuration acquisition module is also used to: receive the report name of the second report; detect whether there is a report identifier corresponding to the report name in a predetermined report identifier group; if so, use the report identifier corresponding to the report name as the report identifier of the second report; if not, prompt the user to re-enter the report name, or receive the report identifier entered by the user as the report identifier of the second report.

[0020] In some optional embodiments, the internal parameter group includes a condition type, a condition name and a condition identifier of the query condition; the configuration acquisition module is also used to: in response to a user's operation of adding a first query condition, provide at least one condition type to the user; in response to a user's operation of selecting a condition type, use the condition type selected by the user as the condition type of the first query condition; receive the condition name of the first query condition; detect whether there is a condition identifier corresponding to the condition name of the first query condition in a predetermined condition identifier group; if so, use the condition identifier corresponding to the condition name of the first query condition as the condition identifier of the first query condition; if not, prompt the user to re-enter the condition name, or receive the condition identifier entered by the user as the condition identifier of the first query condition.

[0021] In some optional embodiments, the condition type includes a first condition type as an upper node and a second condition type as a lower node, and the internal parameter group also includes a cascade type; the configuration acquisition module is also used to: in response to the user's operation of selecting a cascade type, use the cascade type selected by the user as the cascade type of the first query condition; the device also includes a cascade filtering module, and the cascade filtering module is used to: in response to the user's operation of determining the value of the first query condition in the second report, obtain the condition type and cascade type of the first query condition; if the condition type of the first query condition is the first condition type, then detect whether there is a second query condition in the second report that has the same cascade type as the first query condition and the condition type is the second condition type; if so, use the value of the first query condition to filter the data corresponding to the second query condition.

[0022] In some optional embodiments, the report generation module is used to: use the configuration information of the second report in the json data to generate query conditions for the second report in the report system; use the URL of the first report in the json data to nest the first report through an iframe in the report system to generate a data display area for the second report.

[0023] In some optional embodiments, the method also includes a data request module, which is used to: store the domain name of the reporting system in a cookie; in response to the user's data request operation in the second report, generate a data request carrying the cookie and send it to the proxy server, so that the proxy server forwards the data request to a third-party system, the third-party system is used to provide the first report, and the proxy server has the same domain name as the reporting system; receive the data request result returned by the proxy server.

[0024] In a third aspect, the present application provides an electronic device, comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of any of the above methods when executing the computer program.

[0025] In a fourth aspect, the present application provides a computer-readable storage medium storing a computer program, which implements the steps of any of the above methods when executed by a processor. BRIEF DESCRIPTION OF THE DRAWINGS

[0026] The present application is further described below in conjunction with the accompanying drawings and embodiments.

[0027] Figure 1 It is a flowchart of a report generation method provided in an embodiment of the present application;

[0028] Figure 2 This is a schematic diagram of a process for obtaining configuration information provided by an embodiment of the present application;

[0029] Figure 3 This is a flow chart of obtaining a report identifier provided by an embodiment of the present application;

[0030] Figure 4 It is a schematic diagram of a process of obtaining a condition identification provided by an embodiment of the present application;

[0031] Figure 5 It is a schematic diagram of a process of obtaining a condition identification provided by an embodiment of the present application;

[0032] Figure 6 This is a schematic diagram of a process of filtering data using a cascade type provided in an embodiment of the present application;

[0033] Figure 7 This is a schematic diagram of a process of filtering data using a cascade type provided in an embodiment of the present application;

[0034] Figure 8 is a schematic diagram of a process for generating a second report provided in an embodiment of the present application;

[0035] Fig. 9This is a schematic diagram of a data request process provided by an embodiment of the present application;

[0036] Fig.10 It is a flowchart of a report generation method provided in an embodiment of the present application;

[0037] Fig.11 It is a structural schematic diagram of a report generation device provided in an embodiment of the present application;

[0038] Fig.12 It is a structural schematic diagram of an electronic device provided in an embodiment of the present application;

[0039] Fig.13 It is a structural diagram of a program product for implementing a report generation method provided in an embodiment of the present application. DETAILED DESCRIPTION

[0040] Below, the present application is further described in conjunction with the accompanying drawings and specific implementation methods. It should be noted that, under the premise of no conflict, the various embodiments or technical features described below can be arbitrarily combined to form a new embodiment.

[0041] An embodiment of the present application provides a report generation method for generating a report in a common report system that embeds a third-party system report, wherein the third-party system is, for example, a Cognos system, a MicroStrategy system, a BO system, an OracleBIEE system, or other systems.

[0042] Cognos is a data model that is service-oriented and built on the BI core platform. It is a solution that can provide complete business intelligence functions through a single product and on a single reliable architecture. It can provide seamless reports, analysis, scorecards, dashboards and other solutions, and simplify the way company employees handle information by providing all system and data resources. Compared with ordinary reports, the Cognos reports generated by the Cognos system have unified data flow, unified security, unified user interface and unified management configuration interface, which helps to quickly develop and implement, and greatly reduces training costs and deployment costs. The development efficiency of Cognos reports is high. When ordinary reports are still in various background interfaces and writing codes, Cognos reports have been developed and put into operation. In view of the advantages of these Cognos reports, in the specific implementation of the present application, it is preferred to embed the Cognos reports generated by the Cognos system into the ordinary report system.

[0043] See also Figure 1 The report generation method may include steps S101 to S104.

[0044] Step S101: Acquire the URL of a first report for embedding into a report system.

[0045] In some optional implementations, a first report for embedding in a report system may be created using a data source of a data package in a third-party system. Specifically, step S101 may include: in response to a user selecting a first report, obtaining a URL of the first report, wherein the first report is created by the Cognos system based on the data source of the data package. The step of the Cognos system creating the first report may include: creating a data package; creating the first report based on the data source of the data package.

[0046] Step S102: Acquire configuration information of the second report.

[0047] In some optional implementations, the query conditions in the second report can be determined by configuring an external parameter group and an internal parameter group, so that in actual applications, the user can flexibly select a suitable external parameter group and internal parameter group. Specifically, the configuration information of the second report may include an external parameter group and an internal parameter group of the second report. In a specific implementation, the configuration information of the second report may also include at least one of a report rule, a default time period, and a business area division identifier of the second report.

[0048] The report rule may be, for example, "this report data is updated every hour", and the user is prompted with relevant information of the report by configuring the report rule.

[0049] The default time period can be a date range selected by the user. The time range of the data displayed in the second report is determined by configuring the default time period. In a practical application, the expression T-1(D) can be used to dynamically represent it. T is the date of the day, 1(D) represents 1 day, and T-1(D) represents the day minus one day. For example, if today is May 12, 2020, the default time period is May 11, 2020 to May 11, 2020.

[0050] The business area division flag is used to indicate whether the areas in the second report adopt business area division. The business area division flag can be represented by "yes" and "no", or by "enable" and "disable". Business area division is different from administrative area division. Administrative area division is area division stipulated by the state, and business area division is area division made by users based on business needs in actual applications. For example, Kunshan City belongs to Jiangsu Province in terms of administrative area division, but in this application, the business area division of Kunshan City can belong to Shanghai. When the business area division flag of a report is "yes" or "enable", it indicates that business area division is used to divide the areas in the report. By configuring the business area division flag, it is determined whether the areas in the second report adopt business area division, thereby flexibly meeting the needs of users in actual applications.

[0051] See also Figure 2 , the step S102 may include steps S201 to S202.

[0052] Step S201: Obtain the external parameter group of the second report. The external parameter group may include at least one of a report name, a report identifier, and an attribution menu. The report name is the name to be displayed when the first report is integrated into the report system, such as "branch service quality assessment". The report identifier is, for example, "brch_serv_qlty_tot". The attribution menu is used to integrate the first report into a menu specified by the report system, such as the "branch system / business category / Cognos report" menu.

[0053] Step S202: Acquire the internal parameter group of the second report. The internal parameter group may include at least one of the condition type, condition name, condition identifier, condition box type, cascade type, mandatory type and permission type of the query condition.

[0054] The condition type is used to distinguish various query conditions, and the condition type includes at least one of region, province, distribution, outlet, site, employee, date range, time range, and others. Regions include the Yangtze River Delta, Pearl River Delta, and Beijing-Tianjin-Hebei, date ranges are accurate to days, time ranges are accurate to minutes, and others are condition types manually added by users.

[0055] The condition name refers to the name of the query condition. The following provides a method to automatically display the condition identifier by entering the condition name.

[0056] The condition identifier is represented by, for example, connecting the English abbreviation with an underscore.

[0057] Conditional box types include, for example, drop-down boxes, input boxes, and text fields.

[0058] The cascade type is used to indicate the cascade grouping information of the query conditions. The query conditions of the same cascade grouping can realize the linkage between several query conditions.

[0059] The mandatory type is used to indicate whether the query condition is a mandatory item when querying data. The mandatory type includes, for example, "yes" and "no". If the mandatory type is "yes", the query condition is a mandatory item, otherwise it is not a mandatory item.

[0060] The permission type is used to indicate whether the query condition requires permission. The permission type includes, for example, "yes" and "no". If the permission type is "yes", the value of the drop-down box or text box is displayed according to the current user permission.

[0061] See also Figure 3 , the external parameter group may include a report name and a report identifier; the step S201 may include steps S301 to S304.

[0062] Step S301: receiving the report name of the second report.

[0063] Step S302: Detect whether there is a report identifier corresponding to the report name in the predetermined report identifier group. The predetermined report identifier group includes a pre-set report identifier, and the report identifier corresponds to the report name, which means that the report name corresponds to a unique report identifier, and the report identifier can correspond to one or more report names. For example, when the report name is "branch service quality assessment" or "branch service quality inspection", the corresponding report identifier can be "brch_serv_qlty_tot".

[0064] Step S303: If it exists, the report identifier corresponding to the report name is used as the report identifier of the second report.

[0065] Step S304: If the report name does not exist, the user is prompted to re-enter the report name, or the report identifier input by the user is received as the report identifier of the second report.

[0066] The report name used by users can usually reflect the content or purpose of the report. By matching the report name with the corresponding report identifier, reports with the same report name have the same report identifier, thereby achieving report standardization and facilitating the use of report identifiers to manage reports when there are a large number of reports. Report identifiers are mostly represented by numbers, letters, or a combination of the two. Compared with directly using report names for report management, using report identifiers for report management can reduce the amount of data in the data processing process.

[0067] See also Figure 4 , the internal parameter group may include the condition type, condition name and condition identifier of the query condition; the step S202 may include steps S401 to S406.

[0068] Step S401: In response to the user adding a first query condition, at least one condition type is provided to the user. When providing the at least one condition type to the user, a list or a drop-down box may be used.

[0069] Step S402: In response to the user selecting a condition type, the condition type selected by the user is used as the condition type of the first query condition.

[0070] Step S403: Receive the condition name of the first query condition.

[0071] Step S404: Detect whether there is a condition identifier corresponding to the condition name of the first query condition in the predetermined condition identifier group. The predetermined condition identifier group includes pre-set condition identifiers, and the condition identifier corresponds to the condition name, which means that the condition name corresponds to a unique condition identifier, and the condition identifier can correspond to one or more condition names. For example, when the condition name is "distribution" or "distribution center", the corresponding report identifier is "dbct".

[0072] Step S405: If it exists, the condition identifier corresponding to the condition name of the first query condition is used as the condition identifier of the first query condition.

[0073] Step S406: If it does not exist, prompt the user to re-enter the condition name, or receive the condition identifier entered by the user as the condition identifier of the first query condition.

[0074] In specific implementations, as data grows, there may be a large number of condition identifiers in the predetermined condition identifier group, which reduces the response speed. Therefore, the corresponding condition identifier group can be filtered from the predetermined condition identifier group according to the condition type selected by the user. Figure 5 , the step S202 may include steps S501 to S507.

[0075] Step S501: In response to the user adding a first query condition, at least one condition type is provided to the user. When providing the at least one condition type to the user, a list or a drop-down box may be used.

[0076] Step S502: In response to the user selecting a condition type, the condition type selected by the user is used as the condition type of the first query condition.

[0077] Step S503: Obtain a first condition identification group corresponding to the condition type of the first query condition.

[0078] Step S504: Receive the condition name of the first query condition.

[0079] Step S505: Detect whether there is a condition identifier corresponding to the condition name of the first query condition in the first condition identifier group.

[0080] Step S506: If it exists, the condition identifier corresponding to the condition name of the first query condition is used as the condition identifier of the first query condition.

[0081] Step S507: If it does not exist, prompt the user to re-enter the condition name, or receive the condition identifier entered by the user as the condition identifier of the first query condition.

[0082] When a user adds a query condition, the first condition identification group is determined according to the condition type selected by the user, and the condition identification corresponding to the condition name is searched from the first condition identification group. The condition name used by the user can usually reflect the content or purpose of the query condition. By matching the condition name with the corresponding condition identification, reports with the same condition name have the same condition identification, thereby achieving report standardization and facilitating the use of condition identification to manage reports when there are a large number of reports. Condition identifications are mostly represented by numbers, letters, or a combination of the two. Compared with directly using condition names for report management, using condition identification for report management can reduce the amount of data in the data processing process.

[0083] The following is a non-exhaustive list of several situations in which query conditions may be added.

[0084] In the first case, after the user clicks to add a query condition, a list of condition types is provided to the user. After the user selects the condition type as "Date Range", if the condition name entered by the user is "Date Range", the condition identifier "dt_rng" corresponding to the "Date Range" is automatically brought out, the user's selection operation is received, and it is determined that the condition box type of the query condition is "Condition Box", the cascade type is "No", the required type is "Yes", and the permission type is "No".

[0085] In the second case, after the user clicks to add a query condition, a list of condition types is provided to the user. After the user selects the condition type as "Region", if the condition name entered by the user is "Region", the condition identifier "grtr_dist" corresponding to "Region" is automatically brought out, and the user's selection operation is received, and it is determined that the condition box type of the query condition is "Condition Box", the cascade type is "Cascade 1", the required type is "Yes", and the permission type is "Yes".

[0086] In the third case, after the user clicks to add a query condition, a list of condition types is provided to the user. After the user selects the condition type as "province", if the condition name entered by the user is "province", the condition identifier "provin" corresponding to "province" is automatically brought out, and the user's selection operation is received, and it is determined that the condition box type of the query condition is "condition box", the cascade type is "cascade 1", the required type is "yes", and the permission type is "yes".

[0087] In the fourth case, after the user clicks to add a query condition, a list of condition types is provided to the user. After the user selects the condition type as "distribution", if the condition name entered by the user is "distribution", the condition identifier "dbct" corresponding to "distribution" is automatically brought out, and the user's selection operation is received, and it is determined that the condition box type of the query condition is "input box", the cascade type is "cascade 1", the required type is "yes", and the permission type is "yes".

[0088] In the fifth case, after the user clicks to add a query condition, a list of condition types is provided to the user. After the user selects the condition type as "outlet", if the condition name entered by the user is "outlet", the condition identifier "brch" corresponding to "outlet" is automatically brought out, and the user's selection operation is received, and it is determined that the condition box type of the query condition is "input box", the cascade type is "cascade 1", the required type is "yes", and the permission type is "yes".

[0089] In the sixth case, after the user clicks to add a query condition, a list of condition types is provided to the user. After the user selects the condition type as "other", if the condition name entered by the user is "report type", the condition identifier "rpt_typ" corresponding to the "report type" is automatically brought out, and the user's selection operation is received to determine that the condition box type of the query condition is "condition box", the cascade type is "no", the required type is "no", and the permission type is "no". The sixth case allows the user to manually maintain custom condition types and corresponding custom options other than the predetermined condition types, and these custom options will appear in the drop-down box of the query condition corresponding to the condition type. In an actual application, double-clicking the condition identifier can select the condition type that the user manually maintains, such as the custom condition type "report type". In its drop-down box options, for example, 4 options can be included: the first option is identified as "1" and the content is "outlet", the second option is identified as "2" and the content is "province", the third option is identified as "3" and the content is "region", and the fourth option is identified as "4" and the content is "nationwide". The user needs to manually maintain the above 4 options and submit the maintenance information. In the second report, the drop-down box of the query condition corresponding to the custom condition type "report type" will include the above 4 options. For some common or frequently used custom condition types, you can also directly use the options stored in the maintenance information, which can maintain uniformity on the one hand and reduce the workload of users to manually maintain custom options each time on the other hand. For example, if multiple reports have the custom condition type "product type", the custom options in the maintenance information are used to avoid different personnel using the same option identifier to represent different option contents.

[0090] In some optional embodiments, the condition type includes a first condition type as an upper node and a second condition type as a lower node, and the internal parameter group also includes a cascade type. The first condition type is, for example, "region", and the second condition type is, for example, "province", or the first condition type is, for example, "distribution", and the second condition type is, for example, "outlet", or the first condition type is, for example, "outlet", and the second condition type is, for example, "personnel". Cascade types include, for example, "Cascade 1", "Cascade 2", and "No". Among them, all query conditions with a cascade type of "Cascade 1" can be regarded as a cascade group, such as a sending information group; all query conditions with a cascade type of "Cascade 2" can be regarded as a cascade group, such as a receiving information group; it should be noted that any query conditions with a cascade type of "No" are regarded as unrelated.

[0091] The step S202 may further include: in response to a user selecting a cascade type, using the cascade type selected by the user as the cascade type of the first query condition.

[0092] See also Figure 6 , the method may further include steps S601 to S603.

[0093] Step S601: In response to the user determining the value of the first query condition in the second report, the condition type and cascade type of the first query condition are obtained. The condition type of the first query condition is, for example, "distribution", and the cascade type is, for example, "cascade 1".

[0094] Step S602: If the condition type of the first query condition is the first condition type, then detect whether there is a second query condition in the second report that has the same cascade type as the first query condition and has the second condition type. That is, detect whether there is a query condition in the second report that has the cascade type of "cascade 1" and the condition type of "network".

[0095] Step S603: If it exists, the value of the first query condition is used to filter the data corresponding to the second query condition. The outlet is a lower-level node of the distribution. The user's requirement is to query the Nanjing East Road outlet corresponding to the Shanghai distribution. When the user determines that the value of the distribution field is the Shanghai distribution, the Shanghai distribution is used to filter the data of the outlet field, and the outlets corresponding to the Shanghai distribution are filtered out, so that the user can quickly find the Nanjing East Road outlet from the filtered outlets; if the cascade is not used, after the user selects the Shanghai distribution in the distribution field, the outlet field still displays the data of all outlets, and the user needs to spend more time to find the Nanjing East Road outlet.

[0096] In a further preferred embodiment, the condition type may include a first condition type as a first-level node, a second condition type as a second-level node, ..., an Nth condition type as an N-level node, where N is a positive integer greater than 1. N is, for example, 6, the first condition type is, for example, "region", the second condition type is, for example, "province", the third condition type is, for example, "distribution", the fourth condition type is, for example, "outlet", the fifth condition type is, for example, "outlet", and the sixth condition type is, for example, "personnel".

[0097] See also Figure 7 , the method may further include steps S701 to S703.

[0098] Step S701: in response to the user's operation of determining a value of a first query condition in the second report, obtaining a condition type and a cascade type of the first query condition.

[0099] Step S702: If the condition type of the first query condition is the Kth condition type, then detect whether there is a second query condition in the second report that has the same cascade type as the first query condition and has the Mth condition type, where K is a positive integer less than N, and M is any positive integer greater than K and not greater than N. When N is 6, and M is, for example, 3, then it is necessary to detect whether there is a query condition that has the same cascade type as the first query condition and has the fourth condition type, the fifth condition type, or the sixth condition type.

[0100] Step S703: If it exists, use the value of the first query condition to filter the data corresponding to the second query condition. For example, the condition type of the first query condition is "distribution", the cascade type is "cascade 1", and the value is "Shanghai". It is detected that there are query conditions A with cascade type "cascade 1" and condition type "outlet" and query conditions B with cascade type "cascade 1" and condition type "personnel", then filter the data corresponding to query conditions A and query conditions B according to the value "Shanghai" of the first query condition. Among them, the first query condition is the dispatch distribution, query condition A is the dispatch outlet, and query condition B is the dispatch person.

[0101] Therefore, the cascade type is set to realize the linkage between query conditions with upper and lower node relationships of the condition type, narrow the data range in the corresponding lower query condition when the upper query condition is to determine the value, and improve the user's work efficiency.

[0102] Step S103: Generate json data containing the URL of the first report and the configuration information of the second report. json is the abbreviation of JavaScript Object Notation, which means object notation. It is a lightweight data exchange format. It is based on a subset of ECMAScript (js specification developed by the European Computer Association) and uses a text format that is completely independent of the programming language to store and represent data.

[0103] Step S104: Generate a second report in the report system according to the json data, in which the first report is embedded.

[0104] See also Figure 8 , the step S104 may include steps S801 to S802.

[0105] Step S801: Using the configuration information of the second report in the json data, generate query conditions for the second report in the report system. The query conditions for the second report may be located in the upper area or the left area of ​​the second report. The query conditions for the second report may be generated in the report system by rendering using a functional module of the report system.

[0106] Step S802: Using the URL of the first report in the json data, the first report is nested in the report system through an iframe to generate a data display area for the second report, wherein the data display area for the second report can be located in the lower area or the right area of ​​the second report.

[0107] JSON data has a concise and clear hierarchical structure, which is easy for people to read and write, and easy for machines to parse and generate. It can effectively improve network transmission efficiency. The configuration information and URL in the JSON data are used to generate the query conditions and data display area of ​​the second report, respectively, to improve report development efficiency.

[0108] The second report generated in step S104 can be assigned to a specified role, such as a global administrator, a branch administrator or an ordinary staff, and each report can be assigned to one or more roles. For roles, in the report system, a role can be assigned to a user, and the user can see which reports are assigned to which roles.

[0109] After the second report is generated, the user can find the attribution menu selected when generating the report in the menu of the reporting system, and click to view the generated second report. If the configuration information of the second report needs to be modified, the second report can be viewed, and the step of double-clicking to modify the configuration is similar to step S102. For example, after the second report is generated, if it is found that the condition box type of a query condition is incorrectly selected, the user can re-enter the configuration step, enter the condition identifier "brch_serv_qlty_tot" of the query condition and click to query the second report. The reporting system displays the report generation record to the user. Double-clicking the report generation record of the second report can edit, modify, add or delete the configuration information. At this time, the user can modify the query condition with the condition type of "outlet", and change its condition box type from "condition box" to "input box". Click to modify to successfully modify. After the modification is successful, reopen the report to take effect.

[0110] In some optional implementations, a proxy server can be used to implement cross-domain login between the reporting system and the third-party system. Fig. 9 , the method may further include steps S901 to S903.

[0111] Step S901: Store the domain name of the reporting system in a cookie. For example, when a user logs in to the reporting system, the following information can be stored in the cookie: Name: TRUSTED_SIGNON_USER, Value: MD5 (BASE64 + USER + SLAT), Domain. Domain is the domain name of the reporting system, so that when the reporting system calls the query and export interface, it can carry the cookie for access.

[0112] Step S902: In response to the user's data request operation in the second report, a data request carrying the cookie is generated and sent to the proxy server, so that the proxy server forwards the data request to a third-party system, and the third-party system is used to provide the first report. The proxy server has the same domain name as the reporting system. Among them, the data request operation may include a query operation and / or an export operation. Since the reporting system and the third-party system belong to two systems, the cross-domain problem can be solved by configuring nginx. Specifically, it is necessary to build a transit nginx server for forwarding data requests. Using nginx reverse proxy to achieve cross-domain is simple and convenient. You only need to modify the configuration of nginx to make it in the same domain as the reporting system to solve the cross-domain problem. It supports all browsers and sessions, does not require any code modification, and does not affect server performance.

[0113] When the user performs a query operation in the second report, the report system generates a data request based on the query conditions selected by the user and the values ​​of the query conditions determined by the user by calling the query interface provided by the third-party system. When the user performs an export operation in the second report, the report system generates a data request based on the query conditions selected by the user and the values ​​of the query conditions determined by the user by calling the export interface provided by the third-party system.

[0114] Step S903: Receive the data request result returned by the proxy server.

[0115] Configure parameters in the reporting system and embed the first report generated by the third-party system into the second report in the reporting system in a nested manner, thereby integrating the developed third-party system reports into the existing reporting system. Users can interact with the third-party system through the reporting system to query, display and export reports generated by the third-party system, thereby improving report development efficiency.

[0116] In the reporting system, child-parent window pages can communicate with each other. Specifically, the first report in the third-party system can exchange data with the second report in the reporting system. Since the second report in the reporting system is generated by nesting the first report in an iframe, the relationship between the second report and the first report is a child-parent window. The first report transmits data through the js script window.parent.parent.postMessage(json,'*'), and the second report in the reporting system receives data and calls the reporting system method through the js script window.addEventListener. The window.postMessage() method can be used to safely implement cross-source communication. Generally, for scripts in two different report pages, the two scripts can only communicate with each other if the pages that execute them have the same protocol (usually https), port number (443 is the default value for https), and host (the modulus Document.domain of the two pages is set to the same value). The window.postMessage() method provides a controlled mechanism to circumvent this limitation, and this method is safe as long as it is used correctly.

[0117] See also Fig.10 , the embodiment of the present application also provides a report generation method, the method comprising steps S1001 to S1007.

[0118] Step S1001: Create a data packet.

[0119] Step S1002: Create a Cognos report through the data source of the data package.

[0120] Step S1003: configure report-related parameters in the Cognos generator of the report system, wherein the Cognos generator may be a page or a pop-up window.

[0121] Step S1004: Select a Cognos report for embedding in the Cognos generator, and generate a json data in the report system database. The json data includes the URL of the Cognos report and the configuration information in step S1003.

[0122] Step S1005: click the Generate button in the Cognos generator to generate a second report in the report system.

[0123] Step S1006: Add the second report to the menu of the report system, and assign the second report to the specified role.

[0124] Step S1007: Log in to the report system, add the domain name of the report system in the cookie, access the Cognos system through the proxy server, and view the second report embedded in the first report.

[0125] Step S1008: When performing a query or export operation in the second report, a data request carrying a cookie is generated, and a query interface or an export interface of the Cognos system is called to display the data results returned by the Cognos system.

[0126] Step S1009: If the configuration information of the second report needs to be modified, click the second report to modify it.

[0127] See also Fig.11 The embodiment of the present application also provides a report generation device, which includes: a URL acquisition module 101, used to obtain the URL of a first report for embedding in a report system; a configuration acquisition module 102, used to obtain configuration information of a second report; a data generation module 103, used to generate json data including the URL of the first report and the configuration information of the second report; a report generation module 104, used to generate a second report in the report system that embeds the first report according to the json data.

[0128] In some optional implementations, the URL acquisition module 101 may be used to acquire the URL of a first report in response to a user selecting the first report, where the first report is created by the Cognos system according to a data source of a data package.

[0129] In some optional embodiments, the configuration information of the second report may include an external parameter group and an internal parameter group of the second report, the external parameter group may include at least one of a report name, a report identifier, and an attribution menu, and the internal parameter group may include at least one of a condition type, a condition name, a condition identifier, a condition box type, a cascade type, a required type, and a permission type of a query condition; the configuration acquisition module 102 may be used to: obtain the external parameter group of the second report; obtain the internal parameter group of the second report.

[0130] In some optional implementations, the configuration information of the second report may further include at least one of a report rule, a default time period, and a business area division identifier of the second report, wherein the business area division identifier is used to indicate whether the area in the second report adopts business area division.

[0131] In some optional embodiments, the external parameter group may include a report name and a report identifier; the configuration acquisition module 102 may also be used to: receive the report name of the second report; detect whether there is a report identifier corresponding to the report name in a predetermined report identifier group; if so, use the report identifier corresponding to the report name as the report identifier of the second report; if not, prompt the user to re-enter the report name, or receive the report identifier entered by the user as the report identifier of the second report.

[0132] In some optional embodiments, the internal parameter group may include a condition type, a condition name and a condition identifier of the query condition; the configuration acquisition module 102 may also be used to: in response to a user's operation of adding a first query condition, provide at least one condition type to the user; in response to a user's operation of selecting a condition type, use the condition type selected by the user as the condition type of the first query condition; receive the condition name of the first query condition; detect whether there is a condition identifier corresponding to the condition name of the first query condition in a predetermined condition identifier group; if so, use the condition identifier corresponding to the condition name of the first query condition as the condition identifier of the first query condition; if not, prompt the user to re-enter the condition name, or receive the condition identifier entered by the user as the condition identifier of the first query condition.

[0133] In some optional embodiments, the internal parameter group may include a condition type, a condition name and a condition identifier of the query condition; the configuration acquisition module 102 may also be used to: in response to a user's operation of adding a first query condition, provide at least one condition type to the user; in response to a user's operation of selecting a condition type, use the condition type selected by the user as the condition type of the first query condition; obtain a first condition identifier group corresponding to the condition type of the first query condition; receive the condition name of the first query condition; detect whether there is a condition identifier corresponding to the condition name of the first query condition in the first condition identifier group; if so, use the condition identifier corresponding to the condition name of the first query condition as the condition identifier of the first query condition; if not, prompt the user to re-enter the condition name, or receive the condition identifier entered by the user as the condition identifier of the first query condition.

[0134] In some optional embodiments, the condition type may include a first condition type as an upper node and a second condition type as a lower node, and the internal parameter group also includes a cascade type; the configuration acquisition module 102 can also be used to: in response to the user's operation of selecting a cascade type, use the cascade type selected by the user as the cascade type of the first query condition; the device can also include a cascade filtering module 105, and the cascade filtering module 105 can be used to: in response to the user's operation of determining the value of the first query condition in the second report, obtain the condition type and cascade type of the first query condition; if the condition type of the first query condition is the first condition type, then detect whether there is a second query condition in the second report that has the same cascade type as the first query condition and the condition type is the second condition type; if so, use the value of the first query condition to filter the data corresponding to the second query condition.

[0135] In some optional implementations, the report generation module 104 can be used to: use the configuration information of the second report in the json data to generate query conditions for the second report in the report system; use the URL of the first report in the json data to nest the first report in the report system through an iframe to generate a data display area for the second report.

[0136] In some optional embodiments, the method may further include a data request module 106, which may be used to: store the domain name of the reporting system in a cookie; in response to a user's data request operation in the second report, generate a data request carrying the cookie and send it to a proxy server, so that the proxy server forwards the data request to a third-party system, the third-party system is used to provide the first report, and the proxy server has the same domain name as the reporting system; and receive the data request result returned by the proxy server.

[0137] See also Fig.12 The embodiment of the present application further provides an electronic device 200, which includes at least one memory 210, at least one processor 220, and a bus 230 connecting different platform systems.

[0138] The memory 210 may include a readable medium in the form of a volatile memory, such as a random access memory (RAM) 211 and / or a cache memory 212 , and may further include a read-only memory (ROM) 213 .

[0139] The memory 210 also stores a computer program, which can be executed by the processor 220, so that the processor 220 performs the steps of the report generation method in the embodiment of the present application (such as Figure 1 Memory 210 may also include a program / utility 214 having a set (at least one) of program modules 215, such program modules including but not limited to: an operating system, one or more application programs, other program modules, and program data, each of which or some combination may include the implementation of a network environment.

[0140] Accordingly, the processor 220 may execute the above-mentioned computer programs, and may execute the program / utility 214 .

[0141] The bus 230 may be a bus representing one or more of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, a processor, or a local bus using any of a variety of bus architectures.

[0142] The electronic device 200 may also communicate with one or more external devices 240 such as keyboards, pointing devices, Bluetooth devices, etc., and may also communicate with one or more devices that can interact with the electronic device 200, and / or communicate with any device (such as a router, a modem, etc.) that enables the electronic device 200 to communicate with one or more other computing devices. Such communication may be performed through an input / output (I / O) interface 250. In addition, the electronic device 200 may also communicate with one or more networks (such as a local area network (LAN), a wide area network (WAN) and / or a public network, such as the Internet) through a network adapter 260. The network adapter 260 may communicate with other modules of the electronic device 200 through the bus 230. It should be understood that, although not shown in the figure, other hardware and / or software modules may be used in conjunction with the electronic device 200, including but not limited to: microcode, device drivers, redundant processors, external disk drive arrays, RAID systems, tape drives, and data backup storage platforms.

[0143] The present application also provides a computer-readable storage medium for storing a computer program. When the computer program is executed, the steps of the report generation method in the present application are implemented (eg Figure 1 shown). Fig.13The program product 300 provided in this embodiment for implementing the above method is shown, which can adopt a portable compact disk read-only memory (CD-ROM) and include program code, and can be run on a terminal device, such as a personal computer. However, the program product 300 of the present invention is not limited to this. In this document, the readable storage medium can be any tangible medium containing or storing a program, which can be used by an instruction execution system, device or device or used in combination with it. The program product 300 can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of readable storage media (non-exhaustive list) include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.

[0144] Computer-readable storage media may include data signals propagated in baseband or as part of a carrier wave, wherein readable program codes are carried. Such propagated data signals may take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination of the above. The readable storage medium may also be any readable medium other than the readable storage medium, which may send, propagate, or transmit a program used by or in combination with an instruction execution system, an apparatus, or a device. The program code contained on the readable storage medium may be transmitted with any appropriate medium, including but not limited to wireless, wired, optical cable, RF, etc., or any suitable combination of the above. The program code for performing the operation of the present invention may be written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Java, C++, etc., and also conventional procedural programming languages ​​such as "C" language or similar programming languages. The program code may be executed entirely on a user computing device, partially on a user device, as an independent software package, partially on a user computing device, partially on a remote computing device, or entirely on a remote computing device or server. Where a remote computing device is involved, the remote computing device may be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computing device (e.g., through the Internet using an Internet service provider).

[0145] This application is explained from the perspectives of purpose of use, effectiveness, progress and novelty. The practical progress it has is in line with the functional enhancement and usage requirements emphasized by the Patent Law. The above description and drawings of this application are only the preferred embodiments of this application, and are not intended to limit this application. Therefore, all structures, devices, features, etc. that are similar or identical to those of this application, that is, all equivalent replacements or modifications made in accordance with the scope of the patent application of this application, should fall within the scope of protection of the patent application of this application.

Claims

1. A report generation method, characterized in that: The method comprises: Obtaining the URL of the first report for embedding into the reporting system; Obtain configuration information of the second report; Generate json data including the URL of the first report and configuration information of the second report; Generate a second report in the report system according to the JSON data, embedding the first report; The configuration information of the second report includes an external parameter group and an internal parameter group of the second report; the internal parameter group includes a condition type, a condition name, a condition identifier, and a cascade type of a query condition; The condition type includes a first condition type as an upper node and a second condition type as a lower node; The obtaining of the configuration information of the second report includes: obtaining an internal parameter group of the second report; The step of obtaining the internal parameter group of the second report includes: In response to the user adding a first query condition, providing at least one condition type to the user; In response to an operation of selecting a condition type by a user, taking the condition type selected by the user as the condition type of the first query condition; In response to the user selecting a cascade type, using the cascade type selected by the user as the cascade type of the first query condition; The step of obtaining the URL of the first report for embedding into the report system includes: In response to a user selecting a first report, a URL of the first report is acquired, where the first report is created by the Cognos system according to a data source of a data package.

2. The report generation method according to claim 1, characterized in that: The external parameter group includes at least one of a report name, a report identifier and an attribution menu, and the internal parameter group includes at least one of a condition type, a condition name, a condition identifier, a condition box type, a cascade type, a mandatory type and a permission type of a query condition; The obtaining of the configuration information of the second report includes: Obtain the external parameter group of the second report.

3. The report generation method according to claim 2, characterized in that: The configuration information of the second report also includes at least one of a report rule, a default time period, and a business area division identifier of the second report, where the business area division identifier is used to indicate whether the area in the second report adopts business area division.

4. The report generation method according to claim 2, characterized in that: The external parameter group includes a report name and a report identifier; The step of obtaining the external parameter group of the second report includes: receiving a report name of the second report; Detecting whether there is a report identifier corresponding to the report name in the predetermined report identifier group; If it exists, the report identifier corresponding to the report name is used as the report identifier of the second report; If it does not exist, the user is prompted to re-enter the report name, or the report identifier input by the user is received as the report identifier of the second report.

5. The report generation method according to claim 1, characterized in that: The step of obtaining the internal parameter group of the second report includes: Receive the condition name of the first query condition; Detecting whether there is a condition identifier corresponding to the condition name of the first query condition in the predetermined condition identifier group; If it exists, taking the condition identifier corresponding to the condition name of the first query condition as the condition identifier of the first query condition; If it does not exist, the user is prompted to re-enter the condition name, or the condition identifier entered by the user is received as the condition identifier of the first query condition.

6. The report generation method according to claim 1, characterized in that: The method further comprises: In response to the user determining a value of the first query condition in the second report, obtaining a condition type and a cascade type of the first query condition; If the condition type of the first query condition is the first condition type, detecting whether there is a second query condition in the second report that has the same cascade type as the first query condition and has the second condition type; If so, the value of the first query condition is used to filter the data corresponding to the second query condition.

7. The report generation method according to claim 1, characterized in that: Generating a second report in the report system according to the JSON data and embedding the first report includes: Using the configuration information of the second report in the JSON data, generating query conditions for the second report in the report system; Using the URL of the first report in the json data, the first report is nested in the report system through ifra me to generate a data display area for the second report.

8. The report generation method according to claim 1, characterized in that: The method further comprises: Storing the domain name of the reporting system in a cookie; In response to a data request operation of the user in the second report, a data request carrying the cookie is generated and sent to a proxy server, so that the proxy server forwards the data request to a third-party system, the third-party system is used to provide the first report, and the proxy server has the same domain name as the report system; Receive the data request result returned by the proxy server.

9. A report generation device, characterized in that: The device comprises: A URL acquisition module, used to acquire the URL of a first report for embedding into the report system; A configuration acquisition module, used to acquire configuration information of the second report; A data generation module, used to generate json data including the URL of the first report and the configuration information of the second report; A report generation module, used for generating a second report in the report system according to the JSON data and embedding the first report; The configuration information of the second report includes an external parameter group and an internal parameter group of the second report; the internal parameter group includes a condition type, a condition name, a condition identifier, and a cascade type of a query condition; The condition type includes a first condition type as an upper node and a second condition type as a lower node; The obtaining of the configuration information of the second report includes: obtaining an internal parameter group of the second report; The step of obtaining the internal parameter group of the second report includes: In response to the user adding a first query condition, providing at least one condition type to the user; In response to an operation of selecting a condition type by a user, taking the condition type selected by the user as the condition type of the first query condition; In response to the user selecting a cascade type, using the cascade type selected by the user as the cascade type of the first query condition; The step of obtaining the URL of the first report for embedding into the report system includes: In response to a user selecting a first report, a URL of the first report is acquired, where the first report is created by the Cognos system according to a data source of a data package.

Citation Information

Patent Citations

  • A report presentation method and device

    CN109213776A

  • Report generation method and device, computer device and storage medium

    CN110795475A