尺码类报表的制作

简介: 交叉报表,坐标

女人衣柜里总是缺少那么一件衣服,怎么办呢?当然是买买买呀!!!现在出国方便,电商平台有全球购,朋友圈里有代购,即使足不出户,漂亮衣服也会出现在眼前,时不时的勾引下你购买的欲望。可是,如果买来的衣服大小不合适,那就破坏了我们美丽的心情,这该如何避免呢?当然是看好尺码对照表呀!
1

上面这样的尺码对照表,对于小编这样执着于技术的宅女来说,看懂挺难,
但是小编知道怎么用报表实现这样的尺码表哦!
数据表结构如下:
2

在 COLNO,ROWNO 中分别存储了对应尺码表在报表的坐标数据,CODE 字段存储的是对应的尺码值,我们怎样根据行列坐标从一个字段中读取尺码信息,形成上面那 4 行的尺码对照表呢?
其实,这样根据行列数据取到对应交叉格的值的形式,就是一张典型的交叉报表,在报表中实现很简单,不信我就来和你说一下基本实现思路:
我们可以通过 to() 函数根据列号最小值和最大值横向扩展列,行号最小值和最大值纵向扩展行;接着通过报表取数函数(加过滤条件)取到对应行列的值。
下面就是报表中具体的做法:
1.. 获取行号最小值和行号最小值。
在 A1 中通过 ds1.min(rowno) 取出所有尺码中行号的最小值,在 B1 中通过 ds1.max(rowno) 得到行号的最大值。
3
4

  1. 获取列号最小值和列号最大值
    在 A2 中通过 ds1.min(colno) 取出所有尺码中列号的最小值,在 B2 中通过 ds1.max(colno) 得到列号的最大值。

5
6

  1. 得到所有行号
    在 C4 单元格通过 to(A1:B1) 函数表达式, 将尺码的行的坐标纵向扩展出来。

7
8

  1. 得到所有列号
    在 D3 单元格通过 to(A2:B2) 函数表达式, 将尺码列的坐标横向扩展出来,这里要注意的是,需要手动将 D3 单元格的扩展方式改成横向,这样通过 C4,D3 就形成了尺码表的左表头和上表头。

9
10

  1. 根据行号列号取到对应尺码值
    中间的交叉点 D4 单元格则用 ds1.select(CODE,colno==D3 && rowno==C4,1) 将对应行列坐标的数据检索出来。

11
12

  1. 将辅助行列进行隐藏
    将前三行选中设置隐藏行,将前三列选中设置隐藏列,就画出了尺码对照表了。

13

目录
相关文章
|
BI 数据库连接
机房收费系统——报表下载及模板制作
机房收费系统——报表下载及模板制作
|
BI 数据库
FineReport学习(二)——各种报表的制作(三)
FineReport学习(二)——各种报表的制作(三)
FineReport学习(二)——各种报表的制作(三)
FineReport学习(二)——各种报表的制作(二)
FineReport学习(二)——各种报表的制作(二)
FineReport学习(二)——各种报表的制作(二)
FineReport学习(二)——各种报表的制作(四)
FineReport学习(二)——各种报表的制作(四)
FineReport学习(二)——各种报表的制作(四)
|
BI 数据库
FineReport学习(二)——各种报表的制作(六)
FineReport学习(二)——各种报表的制作(六)
FineReport学习(二)——各种报表的制作(六)
FineReport学习(二)——各种报表的制作(一)
FineReport学习(二)——各种报表的制作(一)
FineReport学习(二)——各种报表的制作(一)
FineReport学习(二)——各种报表的制作(五)
FineReport学习(二)——各种报表的制作(五)
FineReport学习(二)——各种报表的制作(五)
|
JavaScript BI 定位技术
|
SQL BI
动态列报表的制作
动态列报表
1150 0
报告式报表的制作
报告式报表
1868 0