用途:为 Salesforce Data Cloud 编写、测试和部署自定义 Python 代码扩展,实现读取与写入 Data Lake Objects(DLO)和 Data Model Objects(DMO)的转换逻辑。
主要能力:支持脚本型(批处理)与函数型(实时)两类扩展;通过扫描代码自动识别所需 DLO/DMO 读写权限与依赖,更新 config.json 和 requirements.txt;可在本地针对真实 Data Cloud 数据运行,部署后可在 Data Cloud 中按需或定时执行。
使用方式:先确认前提——SF CLI 已安装插件(sf plugins install @salesforce/plugin-data-code-extension)、Python 3.11、SDK(pip install salesforce-data-customcode)、部署时需 Docker 运行、已认证 org。初始化用 sf data-code-extension script init --package-dir <directory>(或 function init)。在 payload/entrypoint.py 编写逻辑,如 client.read_dlo、client.write_to_dlo。扫描用 sf data-code-extension script scan --entrypoint ./payload/entrypoint.py。本地测试用 sf data-code-extension script run --entrypoint <file> --target-org <org_alias>。部署用 sf data-code-extension script deploy --target-org <org_alias> --name <name> --package-dir ./payload --package-version <version> --description <description>。
适用场景:需要在 Data Cloud 中对 DLO/DMO 做自定义转换、生成新 DLO、参与 Datakit 工作流映射到 DMO 等。
限制:运行于隔离的 Python 3.11 环境;Docker 仅部署需要;本地运行使用真实数据而非模拟;部署时 --package-dir 必须指向 payload 目录;命令参数细节与版本以官方资料为准。