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

Zoho Books/Inventory Deluge脚本两大问题:描述覆盖与费率不更新

Zoho Inventory Deluge脚本问题修复方案

问题1:自定义描述被商品默认描述覆盖,添加描述后丢失item_id

原脚本中注释掉了销售订单行描述的赋值语句,导致无法保留用户自定义的行描述;直接取消注释即可,原代码已明确将item_id存入pro2,不会出现丢失问题。

修改代码片段:

pro2 = Map();
pro2.put("item_id",ele1.get("item_id"));
pro2.put("description",ele1.get("description")); // 取消注释这行,保留自定义描述
pro2.put("quantity",ele1.get("quantity"));
pro2.put("rate",ele1.get("rate"));
pdlist.add(pro2);

此修改既保留商品item_id,又同步用户在销售订单中修改的自定义描述,不会被商品默认描述覆盖。


问题2:已存在的「Recycling Fees」行项目无法更新费率

原脚本逻辑错误:修改了原始line_items数组中的目标行,但最终提交的pdlist未同步该修改。需直接在待提交的pdlist中更新目标行,同时修复语法错误。

修改代码片段:

found = false;
// 遍历待提交的pdlist,直接更新目标行
for each pdItem in pdlist
{
    if(pdItem.get("item_id") == "2015797000015488030")
    {
        pdItem.put("rate",Fee.toDecimal());
        pdItem.put("quantity",1);
        found = true;
        break;
    }
}
// 未找到目标行则添加新行
if(found == false) // 原代码为赋值操作=,修正为相等判断==
{
    pro = Map();
    pro.put("item_id","2015797000015488030"); // 保持item_id为字符串类型,与判断条件匹配
    pro.put("rate",Fee.toDecimal());
    pro.put("quantity",1);
    pdlist.add(pro);
    info pro;
}

关键修正点:

  1. 遍历pdlist而非原始line_items,确保修改内容同步到提交参数中;
  2. 修复条件判断语法错误:将赋值操作=改为相等判断==;
  3. 统一item_id的字符串类型,避免类型不匹配导致的查找失败。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 10:40:41