zoukankan      html  css  js  c++  java
  • 多数据源报表性能优化方案

    润乾报表支持在同一报表内使用不同类型的数据源,包括 RDB、TXT 文本、Excel、JSON、HTTP、Hadoop、mongodb 等。润乾报表中使用混合数据源不必依赖第三方程序(如 JAVA),只须使用内置的脚本(数据集)即可完成,下面通过例子来说明使用过程。

    业务系统中将订单信息存储到 JSON 格式的文件中,报表查询时需要读取 JSON 文件与数据库表(维表)进行联合查询。这里以查询某个发货时间段内所有订单的客户信息为例。

    orders.json 部分内容如下:

     
    [
        {
            "订单ID": "10248",
            "订单编号": [
                {
                    "订单ID": "10248",
                    "产品ID": "5",
                    "单价": 12,
                    "折扣": 0,
                    "数量": 1
                }
            ],
            "客户ID": "VINET",
            "发货日期": "2000-07-16",
            "到货日期": "1996-08-01",
            "运货费": 32.38
        },
    ……
        {
            "订单ID": "10400",
            "客户ID": "EASTC",
            "发货日期": "1997-01-16",
            "到货日期": "1997-01-29",
            "运货费": 83.93
        }
    ]

    报表设计过程如下:

    1、连接数据源

    在报表设计器中连接数据源。

    2、设置报表参数

    新建报表,并设置报表参数(发货起止日期)。

    3、设置数据集

    在数据集设置窗口选择“脚本数据集”,在脚本读取 json 文件,并和数据库表完成关联查询。

    代码说明:

    A1:读取订单信息 JSON 格式文件;

    A2:根据发货日期范围过滤数据;

    A3:查询数据库客户表信息;

    A4:根据客户 ID 关联文件和数据表,完成混合计算;

    A5:根据关联结果新建结果集,并通过 A6 返回给报表。

    4、编辑报表表达式

    根据脚本数据集返回的结果,编写如下报表表达式,完成报表制作。

    报表展现结果如下:

  • 相关阅读:
    19.2.15 [LeetCode 80] Remove Duplicates from Sorted Array II
    19.2.15 [LeetCode 79] Word Search
    19.2.15 [LeetCode 78] Subsets
    19.2.15 [LeetCode 77] Combinations
    19.2.15 [LeetCode 76] Minimum Window Substring
    19.2.13 [LeetCode 75] Sort Colors
    19.2.13 [LeetCode 74] Search a 2D Matrix
    19.2.13 [LeetCode 73] Set Matrix Zeroes
    19.2.13 [LeetCode 72] Edit Distance
    19.2.13 [LeetCode 71] Simplify Path
  • 原文地址:https://www.cnblogs.com/IBelieve002/p/10931741.html
Copyright © 2011-2022 走看看