Table of Contents

代码操作 DI004(改进):为列引用添加表名

描述

列引用应始终包含表名以避免歧义,即使表名是可选的。

示例

将以下内容:

SUMX('Internet Sales', [Line Amount] * [Quantity])

替换为:

SUMX('Internet Sales', 'Internet Sales'[Line Amount] * 'Internet Sales'[Quantity])

Tabular Editor 为什么会建议这样做?

由于模型中的_度量值_名称始终唯一,因此引用度量值时无需指定表名。 但列名称在模型内并不唯一,因此在引用列时必须指定表名,例如使用某个聚合函数时:SUM('Sales'[Amount])

不过,在某些情况下,列引用中的表限定符是可选的。 例如,当列存在于活动的行语境中时(比如在计算列内部)。 即便如此,在这种情况下写上表名仍然是有效的,并且如果以后模型里新增了同名度量值,也能帮助避免歧义和错误。

如果始终遵循这一做法,你的代码会更简洁、更易读,也更便于区分度量值引用与列引用。

备注

此代码操作还提供一个 (所有出现位置) 变体,当代码中有多个片段可以改进时就会显示。 该变体会一次性将此代码操作应用到文档中所有相关代码片段。

相关内容: