语法作用
计算占总计的百分比。第一参数:任意返回表的表达式,第二参数:任意标量表达式,将在外部计值环境和第一参数提供的行上下文中计值。
将迭代第一参数的表的每一行,计算第二参数的表达式,并将结果汇总得到总计值,然后以第二参数在外部计值环境中的结果为当前值,最后将当前值除以总计得出占总计的百分比。
注意:如果当前值为空则直接返回空值。
XF.Analysis.PctOfTotal(tbl:table,expression:expr)
函数代码
该函数的实现代码如下:
/// 计算占总计的百分比。第一参数:任意返回表的表达式,第二参数:任意标量表达式,将在外部计值环境和第一参数提供的行上下文中计值。将迭代第一参数的表的每一行,计算第二参数的表达式,并将结果汇总得到总计值,然后以第二参数在外部计值环境中的结果为当前值,最后将当前值除以总计得出占总计的百分比。注:如果当前值为空则直接返回空值
FUNCTION XF.Analysis.PctOfTotal = (tbl:table,expression:expr) =>
VAR CurVal = expression
RETURN
IF(
NOT ISBLANK(CurVal),
DIVIDE(CurVal,SUMX(tbl,expression))
)
应用示例
计算各产品的采购价占总计的百分比。
XF.Analysis.PctOfTotal(ALL('产品'[产品名称]),[采购价])
结果如下图所示:






