1. 概述

有时,数据表中的原始维度和度量并不能满足我们的需求,需要使用公式或函数进行数据加工处理。本产品提供了计算字段功能,利用各种函数新建新建字段。新建计算字段时能够快速复用上次计算字段的内容,实现继续创建计算字段。

2. 快速入门

2.1 常用使用场景


以默认数据模型为例,查看到各地区的利润情况,该模型中有“销售额”和“成本”值的字段,但并没有利润值的字段。基于这种情况,您可以使用销售额”和“成本”字段中的数据为“利润”创建一个计算字段。

(1)在报告编辑页面,点击字段列表区中度量右侧加号,弹出新建计算字段配置框,依次输入新字段的“名称”和“表达式[销售额]-[成本]”;
计算字段 - 图1

(2)点击确定后,便可在字段列表区“自定义度量”分类中看到新建的“利润”字段;
计算字段 - 图2

(3)创建一个图表,将字段“地区”和“利润”分别拖入,即可查看到各地区的利润情况。
计算字段 - 图3

2.2 常用函数类型

3. 功能介绍

维度与度量支持创建计算字段。

3.1 创建计算字段位置


(1)报告编辑页面,点击字段列表区中维度或度量右侧加号,可新建计算字段;
计算字段 - 图4

(2)数据模型编辑页面,点击新建计算维度/度量,也可新建计算字段;
计算字段 - 图5

3.2 整体界面


添加函数到输入框,支持两种方式:

  • 手动输入函数或字段

  • 可点击右侧函数自动插入函数,同时可选择上方表达式,插入维度、度量和参数

    • 插入参数: 目前支持的参数有报告参数、全局参数、平台属性、自定义属性。
      • 平台属性:
        平台属性包括用户名、账号。根据账号和用户名的不同,在有数BI中,可根据用户的账号或用户名来控制其对报表的访问权限。 计算字段 - 图6

右侧可选择函数查看详细释义和示例,同时点击帮助中心进入用户手册函数章节,查看函数的具体使用。
计算字段 - 图7

3.3 计算字段转义说明


在字符串内部使用双引号(")、反斜杠(\)时,需要对它们进行转义,转义方式为在需要进行转义的字符前加反斜杠(\)。

例如:字符串"ab\"c"对内部的双引号进行了转义,而字符串"ab\\c"则对内部的反斜杠进行了转义。

3.4 函数调试


调试是开发过程中必不可少的重要一环。本产品目前已支持函数调试功能,它能帮我们快速找到问题的原因,从而提高写计算字段的效率。

如下图所示,编辑窗口,选中一段表达式后点击“调试”按钮,将进入调试窗口(若未选中任何表达式,则对整个表达式进行调试)。调试窗口展示如下内容:

  • 计算结果:展示选中表达式的计算结果
  • 表达式片段:展示前一步选中的表达式片段
  • 字段/参数取值:展示表达式片段中引用到的字段/参数

计算字段 - 图8

(1)在计算过程区域,支持按照表达式的计算顺序层层下钻拆分,每次钻取相当于按照计算顺序剥离了一层嵌套,把即将计算的函数的每个参数拆解为一行。如果参数还是一个函数,则支持继续对其进行钻取。

计算字段 - 图9

(2)重新计算:点击后将基于最新的表达式和字段/参数取值,重新计算表达式的结果

(3)修改更新至原表达式:点击后,会将调试窗口中最新修改的代码段覆盖回原表达式。

4. 智能问答

您是不是也曾有过这样的经历?想写一个计算字段,但又不知道该用什么表达式?不知道该如何写?或者过于复杂很难写……

如果有这么一种功能,您只需要填写描述需求,系统就自动能根据需求生成表达式,就像聊天一样简单粗暴。基于此,我们在计算字段创建/编辑页面添加了智能问答功能。您只需提供所需的描述或示例,然后AI就可以自动为您生成计算字段的表达式。

登录本产品后(该功能目前仅支持SaaS版本体验),在数据准备、数据模型、报告和自助取数的计算字段编辑界面都可以找到提供AI生成表达式的入口,下图以报告编辑界面入口为例:
计算字段 - 图10

4.1 使用流程


在新的弹窗中根据模板输入你的需求描述或示例后点“生成”按钮,如果您对生成的结果满意,再点击“应用”按钮,然后将不存在的字段替换为模型中的字段即可。现阶段每天最多可生成20次。
计算字段 - 图11

4.2 用法举例


(1)使用描述:清空对话框,直接输入文字描述。
计算字段 - 图12

  • 输入需求描述时尽量简洁直白,如“将字符串中的所有字符去除”、“将数字a转换成日期”;
  • 输入长度不能超过300个字符。

(2)使用示例:清空对话框,提供输入输出示例供AI参考。
计算字段 - 图13

  • 如果有多个示例,请使用“示例1”“示例2”加换行区分,如上图所示;
  • 每个示例都需要输入和输出,并按照示例模板设置内容和指定字段类型。

(3)同时使用描述和示例:使用方法请参照示例模板,描述和示例需要换行区分。
计算字段 - 图14

4.3 调整表达式


如果您对AI生成的表达式不满意,您可以手动调整AI生成的表达式,然后再点击应用。目前主要支持基本数据类型的运算和格式转换,表计算、LOD等高阶用法还在模型训练中。