SFMC:使用QUERY或SSJS获取Content Builder模板最后修改日期
SFMC获取Content Builder模板最后修改日期的实现方案
完全可以通过SQL查询或者SSJS实现该需求,两种方式都支持接入自动化流程,具体实现如下:
1. SQL查询方案(优先推荐)
Content Builder的所有资产元数据都存储在_Asset系统数据视图中,直接查询该视图即可获取模板最后修改日期,查询结果可直接输出到数据扩展供后续流程使用:
SELECT AssetID, Name AS TemplateName, ModifiedDate AS LastModifiedDate, -- 目标字段:最后修改日期 CreatedDate, AssetType, FolderID FROM _Asset -- 可根据实际需求调整过滤条件,不同类型模板对应的AssetType取值可先全量查询确认 WHERE AssetType = 'template'
你可以直接把这段SQL放到自动化的「SQL查询活动」中运行,配置简单、执行效率更高。
2. SSJS方案(适合需要后续逻辑处理的场景)
SSJS可以直接通过Core库的Retrieve方法拉取资产元数据,无需额外配置认证,完全适配自动化的「脚本活动」运行要求:
Platform.Load("Core","1.1.1"); // 定义过滤规则,仅拉取模板类资产 var filter = { Property: "AssetType", SimpleOperator: "equals", Value: "template" }; // 检索资产元数据,可按需调整返回字段 var assets = Platform.Function.Retrieve("Asset", ["ID","Name","ModifiedDate","CreatedDate","FolderID"], filter); // 示例:将结果写入预先创建好的数据扩展中 var targetDE = DataExtension.Init("你的数据扩展外部密钥"); for(var i = 0; i < assets.length; i++) { var currentAsset = assets[i]; targetDE.Rows.Add({ AssetID: currentAsset.ID, TemplateName: currentAsset.Name, LastModifiedDate: currentAsset.ModifiedDate, CreatedDate: currentAsset.CreatedDate }); }
注意:如果你的模板总数量超过2500条,需要额外添加分页检索逻辑,避免单次调用返回数据超限。
内容的提问来源于stack exchange,提问作者Joseph
相关产品推荐
相关产品推荐

