注释
DAX 用户定义函数目前为 预览版。
数据分析表达式(DAX)用户定义的函数(UDF)允许将可重用的参数化 DAX 逻辑打包到模型中,使 DAX 代码更易于编写、维护和共享。 UDF 不会跨度量值、计算列和视觉对象重复公式,而是为语义模型带来编程样式的灵活性,让你定义函数一次,并在支持 DAX 的任何地方使用它们。 若要了解详细信息,请参阅 DAX 用户定义的函数。
为何使用用户定义的函数?
- 可重用性和一致性:定义一次计算,并在任何地方重复使用计算。
- 可维护性:在一个位置更新逻辑以修复或改进规则。
- 更安全的创作:可选的类型提示和类型检查辅助工具支持可预测、减少错误的代码。
- 一流的模型对象:UDF 位于模型中,可以在模型资源管理器中查看。
开始
若要在桌面中试用 UDF,请执行以下作:
- 转到 “文件 > 选项”和“设置 > 选项”。
- 选择 预览功能 并检查 DAX 用户定义的函数。
- 选择 “确定 ”并 重启 Power BI Desktop。
定义函数
可以使用 DAX 查询视图 (DQV)或 TMDL 视图在 Power BI Desktop 中定义用户定义的函数。
常规语法
UDF 的一般语法为:
/// Optional description above the function
FUNCTION <FunctionName> = ( <ParameterName>: <ParameterType>, ... ) => <FunctionBody>
示例:简单税务函数
下面是 DQV 中的一个简单的示例,用于向给定金额添加税款。 还可以在 DQV 中评估用户定义函数(UDF)。
DEFINE
/// AddTax takes in amount and returns amount including tax
FUNCTION AddTax = (
amount : NUMERIC
) =>
amount * 1.1
EVALUATE
{ AddTax ( 10 ) }
// Returns 11
定义 UDF 后,可以更新模型或使用代码镜头将函数添加到模型。