应用场景
在原始数据表中,保存的是编码性质的数据,而在数据呈现时,需要显示的是有意义的实际值。如数据库的订单表中只有运货商ID,希望将报表中的运货商ID显示为对应的运货商名称,如下图所示:
功能介绍
显示值的设置包括5种方式:
- 无:直接显示为真实值不做任何转换。
- 值:直接将本单元格内容替换为某个特定的显示值,直接在输入框内输入需要显示的值即可。设置界面如下图:
- 值转化:设置真实值和显示值的对应关系,例如运货商ID,”1”显示为”急速快运”;”2”显示为”统一包裹”。设置界面如下图:
- 字段转化:将本单元格真实值对应的字段显示为另外一个字段的值,例如本单元格的真实值为“运货商ID”,要想显示为“运货商名称”,数据库中存储了运货商ID和运货商名称姓名的对应关系,可以设置将运货商ID显示为对应的运货商名称。设置界面如下图:
- 表达式:用户可以通过编写表达式来设置本单元格的显示值。设置界面如下图:
注意:新建报表对应的字段将自动带入对应数据集中字段的预定义显示值,用户仍可在报表中通过显示值向导对显示值进行修改。(在显示值向导中修改显示值定义,不影响数据集、数据表中预定义显示值。优先级:复杂报表单元格的显示值设置> 数据集字段的显示值设置> 数据表字段的显示值设置)
以上设置显示值的方式,原理都是通过可视化页面的设置,在右侧属性栏—显示值处生成相应表达式,如下图。故此,熟悉函数的用户可以直接在显示值处书写表达式来实现显示值的功能。
示例
在上节设计的网格式报表示例“运货信息表”中,运货商C2单元格是用数值(运货商ID)显示的,为了增加报表可读性,我们可以在此表的基础上增加显示值设置,将运货商ID显示为对应的运货商姓名,使报表的可读性更强。
1.打开报表
在 资源中心 下找到“运货信息表”,选择资源名称后的【更多】里的【另存为】,将报表另存为“运货信息表2”。找到“运货信息表2”,点击【修改】进入设计器。
2.设置显示值
方式一:值转化
选中C2单元格,上方菜单栏选择【编辑】—【显示值】,选择值转化,设置真实值和显示值的对应关系,如下图:
方式二:字段转化
选中C2单元格,上方菜单栏选择【编辑】—【显示值】,选择字段转化,设置好显示来源为数据集,码表数据集为“演示 _ 运货商”,显示值字段为COMPANYNAME,真实值字段为SHIPPERID,点击【确定】。如下图所示:
显示值来源分为数据表和数据集两种,设置方式想似,区别仅在于对应的显示值字段来源不同。
方式三:表达式
1.引入数据集“演示 _ 运货商”。
2.选中C2单元格,上方菜单栏选择【编辑】—【显示值】,选择表达式,在输入框内直接输入表达式,或者点击【编辑】按钮,进入表达式设置页面设置表达式。
3.效果预览
点击设计界面左上角的预览按钮对报表模板进行查看。
预览界面:
特殊场景说明
特别地,当码表中真实值不唯一,并且报表主体数据和显示值使用同一个数据集的情况下,建议设置显示值表达式,再右侧属性栏—显示值处使用select1表达式实现。工具栏中显示值—字段转化得原理是生成一个真实值与显示值的键值对,当真实值存在相同的值时,后面的值会覆盖前面的,可能会导致显示值不匹配。
例如,下图的报表,给第二列使用两种不同的方式设置显示值,
使用select1设置显示值,结果如下:
使用工具栏中显示值—字段转化,效果如下: