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

如何用Deluge脚本实现父记录子表单附件一键批量下载?

实现Deluge脚本批量下载子表单附件

由于Deluge原生不支持同时触发多个文件下载,最可行的方案是将所有子表单附件打包成ZIP文件,再下载这个ZIP包。以下是具体实现代码和注意事项:

核心代码实现

// 获取当前操作的父记录
parentRecord = zoho.crm.getRecordById("父表单API名称", recordId);

// 提取父记录关联的子表单数据集合
childRecords = parentRecord.get("子表单字段API名称");

// 创建一个空的ZIP文件对象
zipFile = createZipFile();

// 遍历所有子表单记录,收集附件并添加到ZIP
for each child in childRecords
{
    // 获取当前子记录的附件列表
    attachments = child.get("附件字段API名称");
    // 跳过无附件的子记录
    if(attachments == null || attachments.isEmpty())
    {
        continue;
    }
    // 遍历当前子记录的每个附件
    for each att in attachments
    {
        // 通过附件的下载链接获取文件内容
        fileContent = invokeurl
        [
            url: att.get("download_url")
            type: GET
            connection:"crm_connection" // 需提前配置CRM连接
        ];
        // 将文件添加到ZIP,保留原始文件名
        zipFile.addFile(att.get("file_name"), fileContent);
    }
}

// 生成ZIP文件的临时下载链接
zipDownloadUrl = zipFile.getDownloadUrl();

// 触发浏览器自动下载ZIP包
openUrl(zipDownloadUrl, "_self");

关键注意事项

  • 配置CRM连接:需要在Deluge的「连接管理器」中创建Zoho CRM的连接,命名为crm_connection,确保该连接拥有访问附件的权限。
  • 替换API名称:将代码中的父表单API名称、子表单字段API名称、附件字段API名称替换为实际模块/字段的API标识(可在CRM模块设置的「API」选项卡中查看)。
  • 单/多附件适配:如果子表单的附件字段仅支持单个文件,可以去掉内层的for each att in attachments循环,直接处理单个附件对象。
  • 下载触发逻辑:openUrl方法会在当前窗口打开下载链接,实现自动下载;如果需要在后台处理,也可以将ZIP链接返回给前端页面触发下载。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 09:00:58