[]
        
在线Demo 免费试用
(Showing Draft Content)

自定义计算字段

1. 概述

1.1 功能概述

在缓存/直连数据集配置过程中,可以通过自定义计算字段创建新字段,与Sql表达式不同,计算字段功能支持通过VB表达式创建跨数据源衍生字段,在保留原始数据的同时实现灵活的数据维度扩展。

技术原理

  • 预处理阶段: 优先解析表引用与连接关系, 生成中间结果表

  • 编译阶段: 将计算字段与普通字段共同编译为内存函数树

  • 执行阶段: 动态执行函数树,逐行输出最终结果

1.2 应用场景

  • 增强数据集过滤能力: 生成新字段方便在数据集过滤器进行后续引用

  • 模块化复杂计算逻辑: 生成新字段作为其他计算字段的组成部分,减少设计难度。

  • 智能化数据标准化: 使用WynSql函数库自由定义新字段,所有计算字段均遵循WynSql语法规范,支持数据集查询参数引用。例如:当原生字段列的“[姓]“或“[名]“为空时,用计算字段返回"未知",否则拼接全名:

    IIF(IsNull(姓) OR IsNull(名) , '未知', 姓 + 名)

2. 操作步骤

示例: 基于产品单价与折扣构建计算字段,生成折后价格字段(产品单价*折扣)

2.1 前提条件

  1. 界面状态: 已进入缓存/直连数据集的数据准备界面。

  2. 表关系: 确保关联关系至少有一张表。

  3. 视图模式: 自定义计算字段功能仅限详情视图使用。

2.2 操作步骤

步骤一:进入字段详情视图

  1. 单击数据集编辑区的字段列表,默认进入详情视图

    PixPin_2025-04-08_09-38-38

步骤二:配置表达式字段

  1. 进入详情视图,选择任意字段,在字段所在行单击image2018-6-7_17-12-31.png,选择添加计算字段(截图以直连数据集为例),进入计算字段配置对话框界面。

    PixPin_2025-04-07_13-46-45

  2. 在计算字段配置对话框界面,输入字段名称,单击左侧数据源名称选择一个数据源并单击下拉箭头选择数据表;双击字段添加至表达式,配合函数完善表达式,最后单击保存保存并继续创建按钮完成操作。

    缓存-计算字段

  • 表达式支持调用以下函数类别,具体使用方法可选择函数进行对应查看或参考WynSql

    • 基础运算: 数学、文本、日期时间

    • 高级处理: 类型转换、流程控制、数据检测

    • 专业计算: 财务、混合函数

  • 查询参数引用:

    • 在表达式中使用@参数名(如@P1)引用数据集的查询参数。

    • 快速添加参数: 输入未定义的参数(如@P1)后,单击右下角的参数按钮完成参数配置。

    • PixPin_2025-04-07_11-22-27

  1. 计算字段添加完成后,新的字段在计算字段界面显示。您可以单击指标右侧的image2018-6-7_17-12-31.png,对指标进行编辑、删除或基于新字段继续添加计算字段。

    PixPin_2025-04-07_16-35-32

步骤三:预览数据

  1. 计算字段表达式配置完成后,首先需要设置数据集需要的输出字段(本例为展示直观,仅勾选产品单价和折扣这两个字段)。

    PixPin_2025-04-07_14-02-39

  2. 输出字段设置完成后,单击上方操作栏的预览按钮,即可进行数据验证。

    PixPin_2025-04-07_14-03-58

    注意: 新添加的 计算字段 默认必须输出,不能取消。如不需要输出此字段,请将其删除。

    PixPin_2025-04-07_14-04-57

步骤四:保存数据集

  1. 数据验证通过后,单击上方操作栏的保存按钮,输入数据集的名称后即可保存数据集。保存后的数据集即可在仪表板/报表中进行使用。

    PixPin_2025-04-07_14-06-18

3. 注意事项

  1. 函数使用限制: 禁止使用聚合函数,计算字段表达式中不可包含 SUMAVG等聚合函数。

  2. 引用关系验证: 错误检测时机,仅在数据集预览或保存时检查错误(如循环引用,无效引用等)。

  3. 别名引用规范: 强制使用别名,当源表字段设置了别名时,计算字段必须引用其别名而非原始名称,否则会被认定是无效引用。

  4. 跨数据源场景: 强制选择,必须使用计算字段

  5. 函数需求场景: WynSql函数优势,当数据源原生函数不足时,采用计算字段调用WynSql函数库。