zoukankan      html  css  js  c++  java
  • 如何开发主从报表

    主从报表是一种很常见的报表需求:报表数据分为上下两部分,上方为汇总说明信息,下方为明细列表信息。如何快速制作这类报表呢?下面我们通过一个例子来看一下润乾报表是如何做的:

    需求说明:

    销售系统中的客户订单表样式如下:

    报表上半部分显示订单基本信息,下半部分显示订单明细信息,每个订单呈独立的卡片式显示。

    润乾报表开发步骤如下:

    1、连接数据源

    使用润乾报表设计器,连接自带数据源 DEMO。

    2、设置数据集

    新建报表并设置数据集,由于数据来源不同,需要设置多个数据集。

    数据集 SQL 如下:

    ds1: SELECT *  FROM 订单

    ds2: SELECT *  FROM 订单明细

    3、编辑报表表达式

    根据目标报表样式,设置报表表达式。

    其中: 1)在 B2 单元格输入表达式:= ds1.select(订单 ID,,, 订单 ID) 

    同时设置 B2 单元格的左主格为:`0

    2)在 D2 单元格输入表达式:= ds1. 发货日期

    设置显示格式为:yyyy 年 MM 月 dd 日

    F2 单元格进行相同设置

    3)在 B4 单元格输入表达式:= ds1. 客户 ID

       F4、B5、F5、D8、E8 单元格进行相同设置

    4)在 D5 单元格输入表达式:= ds1. 运货费

    设置显示格式为:¥#0.00

    5)设置 A8 单元格的左主格为 B8

    6)在 B8 单元格输入表达式:= ds2.select@r(产品 ID:1, 订单 ID==B2,, 产品 ID)

    这里是制作主从报表的关键。设置 B8 单元格的左主格为 B2 单元格,查询 ds2 数据集中所有订单 ID 为 B2 的产品列表。

    7)在 C8 单元格输入表达式:= ds2. 单价

      设置显示格式为:¥#0.00

    8)在 F8 单元格输入表达式:=C8*E8

    设置显示格式为:¥#0.00

    9)设 A1、A2、A3、A4、A5、A6、A7、A9 单元格的左主格为 B2 单元格。

    将这些单元格的左主格设为 B2 的目的是为了使 B2 单元格扩展的时候其它单元格随着一起扩展,从而实现单表式主子报表。

    10)设 A9 单元格为行后分页,实现打印时每张定单单独打印。并将第 9 行下边框设为蓝色,对不同订单加以区分。

    至此,我们就实现了需求效果,完成了一个典型的主从报表的制作。

  • 相关阅读:
    maven 3.2.5 的安装,部署和实例
    Java8 stream操作toMap的key重复问题
    Jenkins配置定时任务注意点
    npm install提示node-sass错误
    centos 使用docker 安装 teamcity
    centos 不能连接外网,使用本地yum源安装软件
    git添加本地代码到远程仓库
    mysql 新建外网用户 和只读用户
    mysql 删除重复数据保留最新一条
    批量删除redis缓存
  • 原文地址:https://www.cnblogs.com/IBelieve002/p/10918123.html
Copyright © 2011-2022 走看看