常听到的一句话
这个数,怎么和财务的对不上?
为什么会这样
指标写在每张报表的 SQL 里:财务一份,销售一份,运营一份。改一处,忘了另外两处;新人接手,只能照抄。
梳子怎么做
口径,只定义一次。
在画布上把表、关联、维度和度量搭成语义模型,验证后发布。报表、AI 助手与开放接口读的是同一份定义,没有人再各算各的。
valuationsrevenue · count
funds
regions
calendar
products
measures:
- name: revenue
type: sum
sql: amount
filters:
- sql: "{CUBE}.status = 'confirmed'" ref(revenue)
- 报表
- AI 助手
- API
- PG 端口
- MCP
revenue = SUM(amount) WHERE status = 'confirmed'
- 01
图形化建模
表、关联、维度、度量在画布上完成,需要时可查看原生定义。
- 02
草稿到发布
先验证,再整体发布成新修订。历史口径不会被悄悄改写。
- 03
统一计算口径
报表、AI 助手与开放接口使用同一套语义模型计算,结果可复核。
具体能力
关联图
多张表按关系组织成模型,聚合时由语义层处理扇出与重复计算。
视图
只暴露业务需要的字段,并用业务名称,而不是库表里的列名。
叠加定义
报表里临时加的指标与维度,由后端编译成成员,不放行任意 SQL。
时区固化
查询截断时区写进发布定义,历史结果不会因为谁在哪个时区而变。