这几天发现一个奇怪的问题。一直正常刷新的报表,刷新失败了。刷新时间边上的红色感叹号,呲啦啦地冲击着我的眼睛。
报错原因忘记截图了,大意说一端表出现了重复值。但这个表是对事实表中的一列去重得到的,不会有重复值才对。后来发现——Power Query里去重区分大小写,加载到Power BI后大小写有会转换一次大小写。不知道PBI是不是一直这样?在这里记录一下。
假设有一张一列的表格,里面的值分别为Operations、OPERATIONS、Logistics、LOgistics。手工维护的数据源里出现并不奇怪。现在加载到Power QueryLife后对它进行去重。事实上,每一个值都是唯一值,去重之后没有变化。
关闭并应用到Power BI里之后,每个值会经过一次大小写转换,就会出现重复值。
开始建模的时,通常不会用这样的表格作为的一端,并且创建关系时,就能发现重复值。问题在于,报表发布之后,随着数据的增加才暴露出来。这也是,这次报表刷新失败的原因。处理的方式有很多,但如果提前注意到Power Query 和Power BI大小写转换的“特性”或“问题”,后期维护起来就会更方便。如果想得到运行良好的报表,以及健壮的报表体系,就不得不提前思考了。