跳到主要内容
版本:3.0

字段与数据类型

学习目标
  • 理解字段的概念(类比 Excel 列)。
  • 掌握核心技术指标:字符长度限制、数字精度、舍入规则。
  • 攻克难点:彻底理清 Lookup (引用) 与 Master-Detail (主子明细) 的区别。
  • 了解各字段在报表数据导入时的特殊格式。

什么是字段?

如果说 对象 (Object) 是 Excel 中的一个工作表(Sheet),那么 字段 (Field) 就是表头的那一排 列 (Column)

字段决定了数据的格式(是文字还是数字?)和规则(最长能写多少字?)。


1. 文本与输入类 (Text & Input)

用于存储名称、描述、备注等非结构化信息。

字段类型图标适用场景
文本 (Text)🅰️姓名、标题
长文本 (Long Text)📝详细描述、备注
富文本 (Rich Text)📰公告、文章
电子邮件 (Email)📧客户邮箱
网址 (URL)🔗官网链接

2. 数字与货币类 (Numbers)

涉及金额、数量、统计的数据。

精度警告

所有数字类字段(数字、货币、百分比)在 15 位小数后会丢失精度。如果您输入过多小数位,系统可能会截断。

数字 (Number)

  • 场景:库存数量、年龄、排序号。
  • 规则
    • 前导零:系统自动移除(如输入 007 会变成 7)。
    • 舍入规则:采用 “四舍五入 (Round half up)”
      • 12.345 -> 12.35
      • -12.345 -> -12.35

货币 (Currency)

  • 场景:合同金额、单价。系统自动添加货币符号 (¥, $)。
  • 规则
    • 舍入规则:采用 “银行家舍入法 (Round-half-to-even)”。这是财务系统的标准算法,即“四舍六入五成双”,为了在大规模计算中减少累积误差。
      • 23.5 -> 24 (5后无数字,向偶数进位)
      • 22.5 -> 22 (5后无数字,向偶数舍去)

百分比 (Percent)

  • 场景:折扣率、完成度。
  • 规则:输入小数(如 0.10),系统显示为百分比(10%)。

3. 日期与时间类 (Date & Time)

字段类型说明示例格式
日期 (Date)仅包含年月日。是报表筛选的主要依据。2025-12-31
日期/时间 (DateTime)包含年月日和具体时刻。2025-12-31 14:30
时间 (Time)仅时间。支持毫秒。末尾加 Z 代表 GMT 时间。17:30:45.125Z

4. 逻辑与选择类 (Choice)

用于规范输入,防止用户乱填。

复选框 (Checkbox)

  • 定义:只有“是/否”两个状态(如:是否已离职)。
  • 数据表现(重要)
    • 在界面上:显示为勾选框 ☑️。
    • 在报表筛选中:使用 True (选中) 和 False (未选)。
    • 在数据导入/导出时:使用 1 (选中) 和 0 (未选)。

选择框 (Select)

  • 定义:单选下拉菜单。
  • 配置:需预先定义好选项值(Label)和代码值(Value)。支持多选。

5. 关系类 (Relationships) —— 核心必读

Steedos 的核心能力在于处理表与表之间的关系。这是初学者最容易混淆的地方。

引用关系 (Lookup) —— “弱关联”

"你可以指向它,但你们是独立的。"

  • 场景工单 关联 客户员工 归属 部门
  • UI 表现:显示为放大镜图标 🔍,点击弹出选择窗口。
  • 行为特征
    • 独立性:如果删除了“客户”(父),“工单”(子)通常不会被删除(仅仅是关联字段变空)。
    • 灵活性:这个字段通常是非必填的(例如:一个潜在客户可能还没有所属公司)。

主子明细关系 (Master-Detail) —— “强关联”

"同生共死,主控一切。"

  • 场景报销单报销明细订单商品行
  • 行为特征
    1. 级联删除 (Cascade Delete):如果删除了“报销单”(主),下面所有的“明细”(子)会被系统自动删除
    2. 安全性继承:子记录的权限完全依赖主记录。如果你没权限看“报销单”,你就绝对看不了它的“明细”。
    3. 必填性:子记录必须始终关联一个主记录,不能存在“孤儿”数据。
    4. 累计汇总:只有建立了主子关系,才能使用下面的“累计汇总”功能。

6. 公式 (Formula)

“像 Excel 公式一样,自动计算结果。”

公式字段是只读的,用户不能手动填写它。它的值是由系统根据你写的表达式,实时计算出来的。当源数据发生变化时,公式的结果也会立即自动更新。

公式编写说明

  • 适用场景

    • 简单运算总价 = 单价 * 数量
    • 文本拼接全名 = 姓氏 + " " + 名字
    • 逻辑判断状态 = (结束日期 < 今天) ? "已过期" : "正常"
    • 跨表取值:直接显示关联对象的字段(例如:在“合同”上直接显示“客户”的等级)。
  • 技术限制 (Specs)

    • 舍入规则:公式中的数字计算采用 “四舍五入 (Round half up)” 规则。
      • 12.34512.35
      • -12.345-12.35
    • 数据类型:创建公式时,必须指定返回值的类型(是返回一个数字、一个日期,还是一个布尔值?)。

7. 累计汇总 (Roll-Up Summary)

“不仅能看明细,还能自动算总账。”

这是 Steedos 最强大的统计功能之一。它允许主记录(父)自动统计其名下所有子记录的数据。

核心前提

必须建立“主子明细关系 (Master-Detail)”! 如果两个对象之间只是普通的“引用关系 (Lookup)”,是无法使用累计汇总字段的。这是最常见的配置错误。

  • 支持的四种运算

    1. 计数 (Count)
      • 例子:在这个“项目”下,一共有多少个“任务”?
    2. 求和 (Sum)
      • 例子:这个“客户”的所有“已成交订单”的总金额是多少?
    3. 最小值 (Min)
      • 例子:该项目的“任务”中,最早的开始日期是哪天?
    4. 最大值 (Max)
      • 例子:该销售的所有“回款”中,最大的一笔金额是多少?
  • 技术限制 (Specs)

    • 实时性:当子记录被添加、删除或修改数值时,主记录上的汇总字段会立即自动更新。
    • 字段类型限制:只能对子表中的数字货币百分比日期字段进行汇总计算(文本字段无法求和)。

8. 自动编号 (Auto Number)

“给每一条数据一个独一无二的身份证号。”

在 Excel 中,我们经常需要手动输入“序号”。而在 Steedos 中,自动编号字段可以替你完成这项工作。它会自动生成递增的序列号,确保永远不会重复。

  • 适用场景

    • 订单编号 (如:ORD-20251201-001)
    • 工单号 (如:TICKET-0056)
    • 客户编码 (如:C-10086)
  • 格式语法

    • 你需要定义一个显示格式。
    • {0000} 代表数字位。
    • {YYYY}{MM}{DD} 代表当前的年、月、日。
    • 示例:设置格式为 INV-{YYYY}-{0000},系统生成的编号将是 INV-2025-0001,下一条是 INV-2025-0002
  • 技术限制 (Specs)

    • 最大长度30 个字符。
    • 前缀/后缀限制:其中最多 20 个字符可用于非数字的前缀或后缀文本。
    • 不可修改:一旦生成,用户无法手动修改这个编号(这是为了保证数据的严谨性)。

常见问题 (FAQ)

Q: 字段类型创建后能修改吗? A: 风险很高! 虽然系统允许修改,但这通常会导致数据丢失或截断。例如,将“长文本”改为“文本”,超过 255 字的内容会被切断;将“文本”改为“数字”,非数字内容会被清空。

Q: 如何设置字段为“必填”? A: 在创建或编辑字段时,勾选 Required (必填) 属性。注意:这会应用到所有层面(API、导入、页面录入),请谨慎使用。