[]
在缓存/直连数据集配置过程中,可以通过自定义计算字段创建新字段,与Sql表达式不同,计算字段功能支持通过VB表达式创建跨数据源衍生字段,在保留原始数据的同时实现灵活的数据维度扩展。
技术原理
预处理阶段: 优先解析表引用与连接关系, 生成中间结果表
编译阶段: 将计算字段与普通字段共同编译为内存函数树
执行阶段: 动态执行函数树,逐行输出最终结果
增强数据集过滤能力: 生成新字段方便在数据集过滤器进行后续引用
模块化复杂计算逻辑: 生成新字段作为其他计算字段的组成部分,减少设计难度。
智能化数据标准化: 使用WynSql函数库自由定义新字段,所有计算字段均遵循WynSql语法规范,支持数据集查询参数引用。例如:当原生字段列的“[姓]“或“[名]“为空时,用计算字段返回"未知",否则拼接全名:
IIF(IsNull(姓) OR IsNull(名) , '未知', 姓 + 名)
示例: 基于产品单价与折扣构建计算字段,生成折后价格字段(产品单价*折扣)
界面状态: 已进入缓存/直连数据集的数据准备界面。
表关系: 确保关联关系至少有一张表。
视图模式: 自定义计算字段功能仅限详情视图使用。
步骤一:进入字段详情视图
单击数据集编辑区的字段列表,默认进入详情视图。
步骤二:配置表达式字段
进入详情视图,选择任意字段,在字段所在行单击,选择添加计算字段(截图以直连数据集为例),进入计算字段配置对话框界面。
在计算字段配置对话框界面,输入字段名称,单击左侧数据源名称选择一个数据源并单击下拉箭头选择数据表;双击字段添加至表达式,配合函数完善表达式,最后单击保存或保存并继续创建按钮完成操作。
表达式支持调用以下函数类别,具体使用方法可选择函数进行对应查看或参考WynSql:
基础运算: 数学、文本、日期时间
高级处理: 类型转换、流程控制、数据检测
专业计算: 财务、混合函数
查询参数引用:
在表达式中使用@参数名
(如@P1
)引用数据集的查询参数。
快速添加参数: 输入未定义的参数(如@P1
)后,单击右下角的参数按钮完成参数配置。
计算字段添加完成后,新的字段在计算字段界面显示。您可以单击指标右侧的,对指标进行编辑、删除或基于新字段继续添加计算字段。
步骤三:预览数据
计算字段表达式配置完成后,首先需要设置数据集需要的输出字段(本例为展示直观,仅勾选产品单价和折扣这两个字段)。
输出字段设置完成后,单击上方操作栏的预览按钮,即可进行数据验证。
注意: 新添加的 计算字段 默认必须输出,不能取消。如不需要输出此字段,请将其删除。
步骤四:保存数据集
数据验证通过后,单击上方操作栏的保存按钮,输入数据集的名称后即可保存数据集。保存后的数据集即可在仪表板/报表中进行使用。
函数使用限制: 禁止使用聚合函数,计算字段表达式中不可包含 SUM
、AVG
等聚合函数。
引用关系验证: 错误检测时机,仅在数据集预览或保存时检查错误(如循环引用,无效引用等)。
别名引用规范: 强制使用别名,当源表字段设置了别名时,计算字段必须引用其别名而非原始名称,否则会被认定是无效引用。
跨数据源场景: 强制选择,必须使用计算字段
。
函数需求场景: WynSql函数优势,当数据源原生函数不足时,采用计算字段调用WynSql函数库。