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

对item_fulfillment执行removeLine操作时报SSS_INVALID_SUBLIST_OPERATION错误

问题根因
  • 正序遍历删除子列表行导致索引错位:循环初始获取的行计数是转换后的初始子列表行数,删除行后实际子列表行数会同步减少,后续循环操作的行号超出当前实际最大行号时,就会访问不存在的行,触发SSS_INVALID_SUBLIST_OPERATION报错。
  • 未处理关联子记录:待删除的行如果关联了inventorydetail库存分配子记录,直接删除行不会自动清除关联子记录,系统会判定行被占用无法执行删除操作。
  • 频繁操作触发重计算:动态模式下连续删除行会触发子列表自动重计算,易导致临时行索引失效,触发操作错误。
解决方案

方案1:修正遍历逻辑(需保留删除逻辑场景适用)

采用逆序遍历+预清关联子记录的方式处理,代码示例如下:

// 转换记录使用标准模式,子列表操作稳定性更高
var objRecord = record.transform({
    fromType: record.Type.SALES_ORDER,
    fromId: soid,
    toType: record.Type.ITEM_FULFILLMENT,
    isDynamic: false,
});

// 从最后一行开始逆序遍历,避免删除行后索引错位
var linecount = objRecord.getLineCount({sublistId: 'item'});
for (var i = linecount - 1; i >= 0; i--) {
    var locationid = objRecord.getSublistValue({
        sublistId: 'item',
        fieldId: 'location',
        line: i
    });
    if (locationid !== 15) {
        // 提前清空该行关联的库存分配子记录
        var hasInvDetail = objRecord.hasSublistSubrecord({
            sublistId: 'item',
            fieldId: 'inventorydetail',
            line: i
        });
        if (hasInvDetail) {
            objRecord.removeSublistSubrecord({
                sublistId: 'item',
                fieldId: 'inventorydetail',
                line: i
            });
        }
        // 删除行时添加ignoreRecalc参数避免频繁重计算
        objRecord.removeLine({
            sublistId: 'item',
            line: i,
            ignoreRecalc: true
        });
    }
}

// 保存发货单
var fulfillId = objRecord.save({
    enableSourcing: true,
    ignoreMandatoryFields: false
});

方案2:转换时直接过滤行(更高效,无需后续删除操作)

在调用record.transform时通过defaultValues参数指定过滤规则,系统会自动仅加载符合条件的可履行行,代码示例如下:

var objRecord = record.transform({
    fromType: record.Type.SALES_ORDER,
    fromId: soid,
    toType: record.Type.ITEM_FULFILLMENT,
    isDynamic: true,
    defaultValues: {
        fulfilllocation: 15, // 仅加载对应位置的行
        ignoreunfulfilled: true // 自动忽略无库存分配的不可履行行
    }
});

// 无需执行删除行操作,直接修改后保存即可
var fulfillId = objRecord.save();

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 23:24:03