You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何识别Salesforce表中的自动计算字段?(使用simple-salesforce)

查询Salesforce对象的自动计算字段(以CaseMilestone为例)

你可以通过Salesforce的对象描述API识别自动计算类字段,结合simple-salesforce库可轻松实现。以下是具体步骤和代码:

实现步骤

  1. 通过simple-salesforce建立与Salesforce的连接
  2. 调用目标对象的describe()方法获取字段元数据
  3. 遍历字段列表,筛选具备自动计算属性的字段

代码示例

from simple_salesforce import Salesforce

# 初始化Salesforce连接(替换为你的凭证)
sf = Salesforce(
    username='你的用户名',
    password='你的密码',
    security_token='你的安全令牌'
)

# 获取CaseMilestone对象的元数据描述
object_describe = sf.CaseMilestone.describe()

# 筛选自动计算类字段
calculated_fields = []
for field in object_describe['fields']:
    # 自动计算字段通常包含以下属性:
    is_calculated = field.get('calculated', False)  # 公式字段
    is_rollup = field.get('rollupSummary', False)   # 汇总字段
    is_autonumber = field.get('autoNumber', False)  # 自动编号字段
    
    if is_calculated or is_rollup or is_autonumber:
        calculated_fields.append({
            'field_name': field['name'],
            'label': field['label'],
            'type': field['type'],
            'is_calculated': is_calculated,
            'is_rollup': is_rollup,
            'is_autonumber': is_autonumber
        })

# 打印结果
print("自动计算类字段列表:")
for field in calculated_fields:
    print(f"字段名: {field['field_name']}, 标签: {field['label']}, 类型: {field['type']}")

关键属性说明

  • calculated: 标记字段是否为公式字段(你提到的TimeRemainingInMins就属于这类,每次调用API时实时计算返回结果)
  • rollupSummary: 标记是否为汇总字段(基于子对象数据汇总计算)
  • autoNumber: 标记是否为自动编号字段(系统自动生成唯一编号)

运行代码后,就能得到CaseMilestone对象下所有自动计算类字段的详细信息,其中TimeRemainingInMins的calculated属性会显示为True。

内容的提问来源于stack exchange,提问作者Eric

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.14 19:10:59