场景描述
用户在使用公式时有时会出现公式不合法的情况,本章将为用户提供其中一些不合法时的排查方式。
用户可以在公式编辑区下方判断公式是否合法,如下图所示:
原因分析
主要有以下两种原因:
1)输入的标点和字段格式不正确。
2)输入的公式不符合 BI 的函数逻辑。
语法错误,缺少标示符
字符错误
例如需要新增一列,该列全部赋值为 1,此时输入 "1,由于缺少一半英文双引号,会出现如下报错「字符错误」:
明细表不支持聚合函数
聚合函数只用于计算字段,FineBI 的聚合函数功能详细请参见:聚合函数
明细表不能使用聚合函数,报错如下图所示:
不支持直接输出聚合函数
问题描述:使用聚合函数报错「不支持直接输出聚合函数」
原因分析:聚合函数计算出的是一个聚合的值,自助数据集的新增公式列只支持输出明细级别的字段。
解决方案:
1)在制作组件阶段,使用「添加计算字段」功能,再输入相关函数进行计算即可。
2)将聚合函数嵌套在 DEF 函数内使用,输出明细级别字段。详情请参见:DEF(指定维度)
聚合函数不能嵌套聚合函数
聚合函数内部不能使用聚合函数,否则公式不合法,如下图所示:
无法将聚合参数和非聚合参数混合使用
例如:使用 IF 函数对聚合函数进行二次计算,当公式中含有非聚合参数时,公式不合法,如下图所示:
此时可以将非聚合参数变成聚合参数,如下图所示:
但聚合函数可以与非聚合函数进行嵌套,sum_agg(max(字段))是合法的,如下图所示: