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

SuiteTalk开发:如何获取Custom Segment的列表值

你当前调用getRecords返回的returnedRows中每个元素都是CustomSegment类型的实例,仅包含分段的基础元数据(ID、名称),要获取对应的可选列表值,需要先提取分段关联的自定义列表引用,再查询该自定义列表的完整数据即可,具体实现如下:

List<CustomizationRef> getCustIdResult = client.getCustomizationId(GetCustomizationType.customSegment, true);
if (getCustIdResult == null)
    return new ArrayList();

List<?> returnedRows = client.getRecords(getCustIdResult);
List<CustomListValue> allSegmentValues = new ArrayList<>();

for (Object segmentObj : returnedRows) {
    if (segmentObj instanceof CustomSegment) {
        CustomSegment customSegment = (CustomSegment) segmentObj;
        // 获取当前自定义分段关联的自定义列表引用
        RecordRef customListRef = customSegment.getCustomList();
        if (customListRef == null) {
            continue;
        }
        // 查询自定义列表的完整数据,包含所有可选值
        CustomList customList = (CustomList) client.getRecords(Collections.singletonList(customListRef)).get(0);
        // 提取列表值
        if (customList != null && customList.getCustomValueList() != null) {
            allSegmentValues.addAll(customList.getCustomValueList().getCustomValue());
        }
    }
}
  • 每个CustomListValue实例包含valueId、scriptId、name等你需要的列表值字段,可按需提取
  • 如果自定义分段设置了不适用自定义列表(比如动态取值的分段),会出现customListRef为空的情况,需要对应业务逻辑做兼容处理

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 16:54:06