有的时候我们一张报表的数据可能要从多个数据库的表中获取,此时我们就要新建多个数据集,并且要设置相应的过滤条件,设置连接字段。跟sql里面的join差不多。
新建一张报表,新建数据集,选中订单表,选中select*
再新建另外一个数据集,选中订单明细表:
此时两个表中都包含订单id字段,我们就可以通过订单id关联两个数据集。
从数据集中拖入我们要展示的字段,其中前五个字段是从订单表中获取的, 后三个字段是从订单明细表中获取的。
对表进行基本设置:字体字号,设置边框,标题行添加背景颜色和字体颜色。
如果此时直接保存预览,会导致内存溢出:
跟sql一样,产生了笛卡尔积,数据发散了。需要设置一下。
我们先选中订单id的数据单元格,右边单元格元素里面数据设置选择列表,在这里给报表设置成明细表:
同样把产品id做相同设置。
下一步进行两个数据表的关联。首先把鼠标放在第二张表的开始字段,也就是产品id字段上面。然后双击,在弹窗中做如下设置:选中过滤,可选列中选择订单id,这是我们的关联字段,操作符选择等于,选择单元格
单元格出来以后,找到我们要对应的单元格,我们选中的两张表中,订单表和订单明细表中关联字段是订单id,所以这里的关联列就是A2单元格,点击新增,确定
保存预览,此时我们能看到报表效果:
数据已经关联上了。但是这里还有一个问题,就是这里数据太多,如果我们一直往下拉查看数据,标题行就看不见了。如果我们想冻结标题栏,那么应该在这里设置,选中当前模板,在模板中选择重复与冻结设置
在弹窗中做如下设置:
因为我们的标题只有一行,所以选中重复标题行从第一行至第一行,分页冻结第一行至第一行。确定。此时标题冻结就好了。
标签:报表,--,数据源,单元格,订单,选中,设置,数据,id From: https://www.cnblogs.com/bozai-1/p/16653783.html