# 计算字段详解

**有限**：计算型自定义字段仅在某些产品版本中可用。 [联系支持](https://app.impact.com/support/portal.ihtml?createTicket=true&) 升级您的倡导者计划以获得访问权限。

通过 [自定义字段](https://help.impact.com/brand/zh/nin-xiang-liao-jie-shen-me/advocate-program/manage-advocate-participants/custom-and-calculated-fields/custom-fields-for-advocate-explained)，您可以向 impact.com 发送有关您的倡导者（Advocate）参与者的比运行推荐计划所需基础信息更广泛的附加信息。

计算字段接收用户和事件数据，其值会被计算、存储并显示在参与者的资料中。设置计算字段后，当您发送符合条件的 Advocate 计划事件时，其值将动态更新。

{% hint style="info" %}
**示例：** 可以配置一个计算字段来统计参与者在一个月内至少消费 100 美元的购买次数。然后，您可以设置计划，对在一个月内至少进行 3 次此类 100 美元购买的参与者发放特别奖励。
{% endhint %}

#### 默认计算字段

默认情况下，系统为您提供了四个计算字段。您在开始设置计划规则时即可引用这些字段。

<details>

<summary>默认计算字段</summary>

| 计算字段               | 说明                                |
| ------------------ | --------------------------------- |
| lastSeenDate       | 跟踪用户在 Advocate 中最后一次被 upsert 的时间。 |
| firstPurchaseDate  | 跟踪我们首次收到该参与者购买事件的日期。              |
| lastPurchaseDate   | 跟踪参与者最近一次购买事件的日期。                 |
| totalPurchaseCount | 跟踪该参与者的购买事件总次数。                   |

</details>

#### 客户端创建的计算字段

您可以创建超出默认字段范围的自定义计算字段。设置计算字段时，您可以：

* 如果希望计算在有限时间内运行（例如 1 月 1 日至 2 月 17 日），可添加开始和结束日期。此设定的时间范围称为活动期间。
* 为您的求和和计数计算指定一个 [跟踪窗口](https://help.impact.com/brand/zh/nin-xiang-liao-jie-shen-me/advocate-program/manage-advocate-participants/custom-and-calculated-fields/tracking-windows-for-calculated-fields-explained) 跟踪窗口可以是固定窗口（例如单一日历月或日历年）或滑动窗口（例如过去 90 天）。
* 通过添加筛选器或编写 JSONata 表达式来设置额外约束，以控制何时执行计算。有关这些选项的更多详细信息，请参阅我们的文章 [设置计算字段](https://help.impact.com/brand/zh/nin-xiang-liao-jie-shen-me/advocate-program/manage-advocate-participants/custom-and-calculated-fields/set-up-a-calculated-field).

{% hint style="info" %}
**注意：** 如果您的计算字段具有活动期间或跟踪窗口，则在计算期结束后值不会再更新。如果计算字段具有活动期间（或仅对求和/计数计算具有跟踪窗口），则在计算期结束后值不会进一步更新。但这些值仍将显示在每个参与者的资料上。
{% endhint %}

<details>

<summary>客户端创建的计算字段</summary>

在构建计算字段时，您可以使用几种类型的计算。

| 计算       | 说明                                                                    | 示例                                                            |
| -------- | --------------------------------------------------------------------- | ------------------------------------------------------------- |
| 求和       | 计算来自 `{fieldname}` 字段的总和，来自 `{eventkey}` 事件                           | 汇总推荐好友在注册后 30 天内的所有购买。在顾客倡导者（customer advocate）中根据花费金额发放分级奖励。 |
| 数量       | 计数 `{eventkey}` 事件                                                    | 当参与者购买次数超过 10 次时发放奖励。                                         |
| 首次出现（日期） | 计算第一次 `{eventkey}` 事件                                                 | 如果参与者在某一特定日期之前开始进行购买，则给予奖励。                                   |
| 最后出现（日期） | 计算最后一次 `{eventkey}` 事件                                                | 如果参与者的最近一次购买在 5 天内，则给予奖励。                                     |
| 首次值      | 计算第一个 `{fieldname}` {eventkey} 事件的 {fieldname} 字段的值                   | 当参与者进行高额首次购买时给予奖励。                                            |
| 最后值      | 计算第一个 `{fieldname}` {eventkey} 最近一次事件的 {fieldname} 字段 `{eventkey}` 事件 | 当参与者的最近一次付款至少达到某个数值时给予奖励。                                     |

</details>
