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

如何通过API读取或更新ACC表单中的自定义表格数据?

解决ACC自定义表格API操作问题

问题根源

ACC的tabularValues接口仅支持操作内置的三个表格(worklogEntries、materialsEntries、equipmentEntries),自定义表格的处理逻辑与内置表完全不同,无法复用该接口,这就是你收到Must be one of: worklogEntries, materialsEntries, equipmentEntries错误的原因。

正确操作步骤

1. 获取自定义表格的内部字段结构

因为GET表单接口不会在tabularData中返回自定义表格信息,你需要调用表单模板查询API(如GET /forms/templates/{你的表单模板ID}),在返回结果的sections数组中找到自定义表格对应的板块:

  • 找到自定义表格的内部字段名(通常是类似custom_table_xxxx的格式,而非你手动命名的billingdetailEntries)
  • 记录表格每一列对应的fieldId(不是显示的列名,比如custom_billingdate而非billingdate)

2. 更新自定义表格数据的正确请求格式

自定义表格的数据需要作为表单的普通字段值提交,放在values字段下,而非tabularValues。示例请求体:

{
  "values": {
    "custom_billingdetail": [ // 这里是模板中拿到的自定义表格内部字段名
      {
        "id": "aaaaaaaaaaa", // 仅更新已有行时需要,新增行可省略
        "custom_billingdate": "2025-01-01", // 模板中拿到的列fieldId
        "custom_maximoreference": "W1234567",
        "custom_billamount": 100
      }
    ]
  }
}

3. 验证数据提交结果

提交PUT请求后,再次调用GET表单接口,自定义表格的数据会出现在values字段下对应的数组中,而非tabularData,这是ACC自定义表格的正常返回逻辑。

关键注意事项

  • 绝对不要使用自定义表格的显示名称作为接口参数,必须使用模板返回的内部字段标识
  • 自定义表格的列参数必须用模板中的fieldId,不能用界面上的显示列名
  • 内置表与自定义表的API操作逻辑完全隔离,不存在通用的表格操作接口

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.11 13:03:25