纵向分片
纵向分片
现在,我们把2.1.1中的报表做一些改变,首先,我们在原有数据集的基础上增加如下数据集的定义:
ds3:SELECT 雇员.雇员ID,订单明细.产品ID,雇员.职务,雇员.姓氏||雇员.名字 as 姓名 FROM 雇员,订单,订单明细 WHERE 雇员.雇员ID = 订单.雇员ID AND 订单.订单ID = 订单明细.订单ID ORDER BY 订单.订购日期 ASC
然后在报表下方追加一行,增加一个纵向扩展格,如下图所示:

该报表的预览效果如下图所示:

从上图可以看出,该报表出现了两片纵向扩展区域,这两片纵向扩展区域看起来毫无关系,但是格线严格对齐。下面我们对这个报表继续做改变,在新增加的行中写入计算表达式,如下图所示:

(1) 在B4单元格输入表达式:= ds3.group(职务,false)
(2) 在C4单元格输入表达式:= ds3.group(雇员ID,false) 设置显示值为:ds3.姓名
(3) 在D4单元格输入表达式:=ds1.sum(数量*单价,雇员ID==C4) 设置显示格式为:¥#0.00
D4格中的表达式为:=ds1.sum(数量*单价,雇员ID==C4)。其含义是:雇员ID为C4单元格的雇员在D2城市的销售额;可以看出,这个表达式既和上表头D2格有关联,又和左表头C4格有关联,我们再看一下预览效果:

从上图可以看出,上下两片本来没有关系的扩展区域,通过D4格的表达式和上表头D2格关联起来,变成了上下两片紧密关联的扩展区域。