<< Click to Display Table of Contents >> 字典列复制链接 |
通过设置字典列,在选取筛选值以及数据展现的时候,显示字典列数据。
使得事实表数据量很大且与维表做关联的场景下,通过设置字典列,在筛选组件查询数据时,无需查询关联后的数据,直接查询字典列设置的字段数据来提升性能。
1. 设置方式
在数据集的元数据页面,鼠标悬浮于字典列对应的单元格位置,点击编辑。
在字典列对话框中,可以选择字典列来源。
2. 通过数据集字段设置字典列
•指定事实表数据集的某个字段的字典数据来自某个维度表的数据
在字典列对话框中选择“数据集字段”:
“数据集”选择基于维度表创建的数据集,标签选择关联所需的列,值选择要展示的列:
3. 通过字典表设置字典列
•使用场景:有一份“字典表”数据,管理了所有的字典,有一份“维值表”数据是所有“字典表”里的字典对应的数据。
•需要在bi.properties里配置:
dictionary.table=字典表.sqry;字典代码;字典名称
dimension.value.table=维度表.sqry;字典代码;维值代码;维值名称
dictionary.table参数说明:
•字典表.sqry:字典表的数据集路径。
•字典代码:关联列,从维值表里按关联列的数据取数。
•字典名称:字典列,字典数据,上方的UI里“选择字典:”的数据来源。
选择字典时,选择的数据来自于dictionary.table的字典列数据,如下图所示:
在字典列对话框中选择“数据集字段”,设置“选择字典”指定映射关系。
dimension.value.table参数说明:
•维度表.sqry:维值表的数据集路径。
•字典代码:关联列,从维值表里按关联的数据取数。
•维值代码:值列。
•维值名称:标签列,非必填。
4. 示例
4.1 数据集字段示例
事实表如下:
维度表如下:
设置【DepartmentCodeLevel1】列的字典列如下:
结果如下:
4.2 字典表示例
bi.properties配置如下
dictionary.table=数据集路径/字典表.sqry;字典代码;字典名称
dimension.value.table=数据集路径/维值表.sqry;字典代码;维值代码;维值名称
字典表如下:
维值表如下:
设置【DepartmentCodeLevel1】列的字典列如下:
设置【DepartmentCodeLevel2】列的字典列如下:
结果如下:
4.3 使用示例
过滤里:
过滤组件、参数组件上:
组件数据:
➢注意:
通过修改参数modify.data.masking.when.referenced可以实现在自服务或组合数据集里不可修改已设置的字典列,设置参考【附录>系统属性配置>安全配置】。