> ## Documentation Index
> Fetch the complete documentation index at: https://jinshuju-20a27453.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 计算字段介绍

> 通过公式自动计算数据，避免人工录入错误。

能参与计算的字段有：

* 「数字」「日期」「评分」；

* 带赋值的「单项选择」「多项选择」「图片单选」「图片多选」「下拉选择」「多级下拉」；

* 添加了计算字段的「矩阵填空」「表格」；

* 「计算」字段；

* 「身份证」。

***

## 计算字段使用方法

我们以售卖家具，计算销售提成为例，销售的产品✖️数量✖️提成点🟰提成业绩，详细设置步骤如下。

### 为选项设置赋值

* 添加单项选择题，选项为每个家具类型名称，给 [选项赋值](/next/articles/Selectedtopics#%E9%80%89%E9%A1%B9%E8%B5%8B%E5%80%BC)。
* 添加数字题，不用设置赋值，可以直接参与计算。该题让别人填写购买数量。

<img src="https://mintcdn.com/jinshuju-20a27453/IuRh1KD9bwx_ZiC0/next/attachments/61KNvT1DMLwVMbdEyG5WvNsw.png?fit=max&auto=format&n=IuRh1KD9bwx_ZiC0&q=85&s=16f5490d4fbd5fe22a2ac84cdf7eb232" alt="PC|字段|家具售卖提成计算表编辑页，含冰箱洗衣机餐桌单选字段和售卖数量字段" width="1536" height="897" data-path="next/attachments/61KNvT1DMLwVMbdEyG5WvNsw.png" />

### 编辑计算公式

使用计算字段，并设置计算公式。

<img src="https://mintcdn.com/jinshuju-20a27453/9qE-_3Lm3Za-tJKI/next/attachments/9V2vHoDieEiXHbL53nnHH2un.png?fit=max&auto=format&n=9qE-_3Lm3Za-tJKI&q=85&s=3942a517dc28b073258c296889b7d6e7" alt="PC|字段|家具售卖提成计算表，计算字段公式「产品×数量×0.02」自动计算提成" width="1536" height="897" data-path="next/attachments/9V2vHoDieEiXHbL53nnHH2un.png" />

若公式不合法，系统将提示「公式不正确，解析失败」，请重新设置计算公式再点击确定。

<img src="https://mintcdn.com/jinshuju-20a27453/YnvErCp2PvxCFl_9/next/attachments/XuipwvyteAjSNKaXQSCKBEs3.png?fit=max&auto=format&n=YnvErCp2PvxCFl_9&q=85&s=6e26f74435266e85b7746e8d5707fcad" alt="PC|字段|家具售卖提成计算表表单编辑页面，中央弹出编辑计算公式窗口" width="1536" height="897" data-path="next/attachments/XuipwvyteAjSNKaXQSCKBEs3.png" />

点击查看计算字段效果示例： [体验表单](https://im.jsjform.com/f/phUR3u)。

***

## 逻辑判断：IF 函数

定义：用于判断一个条件能否满足：如满足，返回「真值」，不满足，则返回「假值」。支持返回值可以是数值、文本。

公式写法示例：

`IF(字段1>字段2,1,0)`

代入数据后（真值）：

`IF(3>1,1,0) `计算结果：`1`

代入数据后（假值）：

`IF(3>5,1,0) `计算结果：`0`

IF 公式可以嵌套使用。

***

## 日期差：DAYS 函数

定义：用于计算两个日期之间的**天数差**。

公式写法示例：

`DAYS(结束日期,开始日期)`

代入数据后：

`DAYS(2021-01-03,2021-01-01)  `计算结果：`2`

***

## 日期差：DATETIME\_DIFF 函数

定义：计算 2 个日期之间的**单位时间差**。单位可以是：秒-s，分-m，时-h，日-d，月-M，年-y

公式写法示例（计算年差值）：

`DATETIME_DIFF((结束日期),(开始日期),"y")`

代入数据后：

`DATETIME_DIFF((2023-01-01,2021-01-01),"y")  `计算结果：`2`

公式写法示例（计算月差值）：

`DATETIME_DIFF(结束日期,开始日期),"M")`

代入数据后：

`DATETIME_DIFF((2023-01-01,2021-01-01),"M")  `计算结果：`24`

***

## 日期增减：DATEADD 函数

定义：在日期上增加 N 个单位的时间。单位可以是：日-d，月-M，年-y

公式写法示例：

`DATEADD((日期) , 2,"M")`

代入数据后：

`DATE(2021-01-01,2,"M")  `计算结果：`2021-03-01`

***

## 四舍五入：ROUND 函数

定义：按照指定的小数位数进行四舍五入运算的结果。

公式写法示例：

`ROUND(number, digits)`

代入数据后：

`ROUND(3.1415926,2)  `计算结果：`3.14`

***

## 向上取整：ROUNDUP 函数

定义：向上舍入数字（要舍去的首数小于4也进数加1）。

公式写法示例：

`ROUNDUP(number, num_digits)`

代入数据后：

`ROUNDUP(76.9,0)  `计算结果：`77`

***

## 向下取整：ROUNDDOWN 函数

定义：靠近零值向下舍入数字。

公式写法示例：

`ROUNDDOWN(number, num_digits)`

代入数据后：

`ROUNDDOWN(3.14159,3)  `计算结果：`3.141`

***

## 身份证信息提取：ID 函数

定义：根据身份证字段计算年龄、性别和出生日期。

公式写法示例：

返回年龄：`ID(身份证字段,0)`

返回性别：`ID(身份证字段,1)`

返回出生日期：`ID(身份证字段,2)`

带入数据后：

`ID(61****200003105827,0)  `计算结果：24

`ID(61****200003105827,1)  `计算结果：女

`ID(61****200003105827,2)  `计算结果：2000-03-10

***

## 计算字段设置常见问题

### Q1：保存公式失败，提示「公式包含不存在或者不可计算的字段变量」的原因？

**答**：你需要根据排查以下情况：

* 字段标题中带有英文符号；

* 字段标题中带有空格；

* 公式本身或者公式中的运算符使用错误（运算符需是英文符号）；

* 修改字段名称后，未修改计算字段公式中的字段名称。

### Q2：有的字段被「规则」控制了，并不显示，或者直接被隐藏了，怎么参与计算？

**答**：该字段将以 0 值参与计算。

### Q3：保存公式失败，提示「计算宇段存在循环引用」的原因？

**答**：在表单中存在多个计算字段，计算字段之间存在循环引用的情况。例如，计算字段 A 的公式为「 1 + 计算字段 B」，而计算字段 B 的公式为「 2 + 计算字段 A」，则会报错「计算字段存在循环引用」。

***

## 计算字段相关资费介绍

以下是计算字段的资费情况：

| | **免费版** | [**专业版**](https://jinshuju.net/plan_payment) | [**专业增强版**](https://jinshuju.net/plan_payment) | [**企业基础版**](https://jinshuju.net/plan_payment) | [**企业协作版**](https://jinshuju.net/plan_payment) | [**企业高级版**](https://jinshuju.net/plan_payment) |
| - | - | - | - | - | - | - |
| **价格** | 免费 | 599 元/年 | 2,399 元/年<br />299 元/月 | 4,399 元/年 | 7,399 元/年 | 23,999 元/年 |
| **是否支持此功能** | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.