历史版本6 :新值改变单元格对齐方式 返回文档
编辑时间:
内容长度:图片数:目录数:
修改原因:
1. 描述编辑
在制作报表的过程中,我们通常只能对整行(列)单元格对齐方式进行统一设置。方法:单元格属性 -> 样式 -> 自定义样式 -> 对齐 -> 水平(垂直)对齐。
但有时候,用户需求:对某行(列)满足一定条件的单元格单独设置,那我们该如何实现这一功能呢?
实现效果如图:
注:(次数)列,单元格内容默认:居中对齐,小于100000的水平靠左对齐,大于150000的水平靠右对齐。
2. 思路编辑
通过设置单元格条件属性(新值)后,用HTML显示内容来实现。
水平靠左 :
CONCATENATE("<div align='left'>"+$$$+"</div>")
水平居中 :
CONCATENATE("<div align='middle'>"+$$$+"</div>")
水平靠右 :
CONCATENATE("<div align='right'>"+$$$+"</div>")
垂直靠上 :
CONCATENATE("<div valign='top'>"+$$$+"</div>")
垂直居中:
CONCATENATE("<div valign='middle'>"+$$$+"</div>")
垂直靠下 :
CONCATENATE("<div valign='bottom'>"+$$$+"</div>")
注:也可以通过下载单元格对齐条件属性插件来实现,此插件不支持移动端。
3. 示例编辑
以纵向扩展单元格C2为例:
对齐方式:默认水平居中,垂直居中;
条件属性:当C2的值小于100000时,水平靠左;当C2的值大于150000时,水平靠右。
3.1 准备数据
新建数据集ds1,sql语句:SELECT * FROM "TOP10车型"
3.2 模板设置
将数据集中的字段拖到单元格中,并设置内容居中,样式如下图:
3.3 条件设置
选中C2单元格,右键-条件属性-新增条件属性1。属性公式:$$$>150000,新值公式:CONCATENATE("<div align='right'>"+$$$+"</div>")
同理:右键-条件属性-新增条件属性2。属性公式:$$$<100000,新值公式:CONCATENATE("<div align='left'>"+$$$+"</div>")
3.4 属性设置
选择C2单元格,单元格属性表-其它属性->显示内容,用HTML显示内容。
4.保存预览编辑
点击预览,效果如上图。
已完成模板请查看%FR_HOME%\WebReport\WEB-INF\reportlets\doc\Form\LineForm\自定义单元格对齐方式.cpt