zoho crm有一个deluge操作是在记录删除后触发的,但是记录删除后就查不到了,应该怎么解决

核心原因:

当 Zoho CRM 触发"删除后 (On Delete)"的工作流时,数据库中的那条记录确实已经消失了。因此,任何在 Deluge 脚本中尝试使用 zoho.crm.getRecordById() 去查这条记录的操作都会返回 null 或报错。

解决方案:不要"去查",而是"带着走"。

你必须在配置工作流和函数关联的时候,通过 "编辑参数 (Edit Arguments)" 将你需要的数据直接传给函数,而不是在函数内部去查询。

以下是具体操作步骤:

方法一:利用函数参数映射(适用于主模块字段)

这是最标准的方法。虽然记录被删除了,但在工作流触发的那一毫秒,系统内存中还保留着该记录"临终前"的数据。

  1. 进入设置:工作流规则 -> 选择触发器为"记录删除 (On Delete)"。

  2. 关联函数:在动作中选择你的 Deluge 函数。

  3. 关键步骤 - 编辑参数 (Edit Arguments):

    • 在函数配置弹窗中,点击 "编辑参数"。
    • 这是你唯一获取数据的机会。
    • 定义键名(例如 deleted_subject),按 # 键选择该模块的字段(例如 主题)。
    • 把你所有需要用到的字段全部映射一遍。
  4. Deluge 代码写法:
    错误写法 ❌:

    javascript 复制代码
    // 在删除触发中,这绝对查不到数据
    rec = zoho.crm.getRecordById("Quotes", quote_id); 
    name = rec.get("Subject");

    正确写法 ✅:

    (假设你在参数映射里已经把 Subject 映射给了变量 arg_subject)

    javascript 复制代码
    // 直接使用映射进来的变量,不需要查库
    info "被删除的记录主题是: " + arg_subject;
    
    // 你可以在这里直接把 arg_subject 发送给外部 API

方法二:应对"子表/相关列表"数据(快照法)

痛点: 方法一只能映射主模块的字段(如金额、名称、所有者)。如果你需要获取 "被删除记录底下的子表数据(如报价单里的产品明细)",方法一是不行的,因为参数映射不支持映射整个子表 List。

这时候就必须结合我们之前讨论过的 "快照 (Snapshot)" 方案:

  1. 前期准备:

    在主模块建一个隐藏的长文本字段(例如 JSON_Backup)。

  2. 保存时备份:

    写一个"创建/编辑"时触发的脚本,每次记录保存时,把子表数据转成 JSON 字符串,存入 JSON_Backup 字段。

  3. 删除时获取:

    在"删除后"的脚本中,使用 方法一 映射 JSON_Backup 这个字段到变量。

  4. 解析:

    代码如下:

    javascript 复制代码
    // 假设 arg_json_backup 是通过参数映射传进来的长文本
    if(arg_json_backup != null && arg_json_backup != "")
    {
        // 还原之前保存的子表数据
        subform_list = arg_json_backup.toList(); 
        
        // 现在你可以遍历这个列表,知道删除了哪些详细产品了
        for each item in subform_list
        {
             // ...
        }
    }

总结

  • 主字段数据 (如 ID、Name、Total):在工作流配置页面通过 参数映射 (Key-Value Mapping) 直接传进去。
  • 复杂数据 (子表、多选列表):必须在删除发生之前(即创建/编辑时),先备份到一个文本字段里,然后删除时读取那个文本字段。
相关推荐
虎头金猫4 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
AI职业加油站4 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
此冬歌咏4 天前
K8s 节点故障实战:优雅驱逐 31 秒,硬故障 331 秒,以及那个永远 Pending 的 Pod
运维·k8s
-梅4 天前
linux(8) 软硬链接
linux·运维·服务器
Wang's Blog4 天前
Java 项目实战: 外卖平台-文件下载与ServletOutputStream回写浏览器
服务器·项目开发
张洛闻Eren4 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
琥珀色糖4 天前
SimlpeHttp
linux·服务器
其实防守也摸鱼4 天前
内网穿透与反向代理:原理、工具与实战指南
android·大数据·运维·安全·网络安全·自动化·渗透
第十人i4 天前
Linux 日志管理系统:journald 配置与优化
linux·服务器
布裘4 天前
【银河麒麟】V4桌面图标消失,右击鼠标没反应排查
运维·银河麒麟·桌面环境