使用 CLI 命令创建和管理自定义元数据类型
您可以使用 Salesforce 命令行界面 (CLI) 创建自定义元数据类型,生成字段,创建记录,从 CSV 文件创建记录,并从 sObject 生成自定义元数据类型。
所需的 Edition
| 适用于:Salesforce Classic 和 Lightning Experience |
适用于:Enterprise、Performance、Unlimited 和 Developer Edition 您可以在以下版本创建、编辑和删除已安装软件包中的自定义元数据类型记录:Group 和 Professional Edition |
| 所需用户权限 | |
|---|---|
| 运行自定义元数据类型 CLI 命令: | 自定义应用程序 |
Salesforce CLI 插件版本 49.0 支持自定义元数据类型。有关如何设置 CLI、设置开发人员中心、创建项目和创建临时组织的信息,请参阅 Salesforce CLI 设置指南。
命令
以下命令可以创建和管理自定义元数据类型。有关标记和使用信息,请使用--help标记。例如,sf cmdt generate records --help。
- 创建自定义元数据类型。
sf cmdt generate object - 根据指定字段类型,生成自定义元数据字段。您可以在元数据对象文件夹中创建字段,或者在对象文件夹的目录中进行传输。
sf cmdt generate field - 生成 sObject 的自定义元数据类型及其所有记录。使用此命令,以将现有自定义对象或自定义设置迁移到自定义元数据类型。默认目录是
force-app/main/default/customMetadata。sf cmdt generate fromorg
备注 不支持类型层次结构的自定义设置。 - 创建指定自定义元数据类型的记录。
sf cmdt generate record - 从 CSV 文件插入新自定义元数据类型记录。
sf cmdt generate records
注意事项
- 在创建自定义元数据类型或字段时,指定对象文件夹。例如,
--output-directory force-app/main/dirObjects/Mycmdt。 - 在创建自定义元数据类型时,指定唯一名称。
- 对于可插入的记录数量,没有限制。插入大量记录时,请注意
project deploy start命令默认设置为 33 分钟。默认值是命令等待完成并将结果显示到终端窗口的分钟数。 - 使用
cmdt generate records命令时,DeveloperName标识符默认为列Name,并且是必填列。但是,可以使用--name-column标志指定任何列名。不支持将Label作为替代标识符。 cmdt generate records命令可用于创建新的自定义元数据类型记录或更新现有的自定义元数据记录。
示例 创建受保护的自定义元数据类型,以及字段类型百分比和复选框。元数据 XML 会在 SDFX 项目的本地目录中创建。
sf cmdt generate object --type-name Mycmdt --visibility Protected --output-directory force-app/main/dirObjects
sf cmdt generate field --name Checkbox --type Checkbox --output-directory force-app/main/dirObjects/Mycmdt
sf cmdt generate field --name Percent --type Percent --output-directory force-app/main/dirObjects/Mycmdt
示例 从自定义对象中,生成自定义元数据类型。使用此命令,以将现有自定义对象迁移到新自定义元数据类型。
sf cmdt generate fromorg --dev-name FromCustomObject --sobject MyCustomObject__c示例 将记录从 CSV 文件插入现有自定义元数据类型。
创建 CSV 文件,并在插入命令中提供自定义元数据类型的 API 名称。例如,
| 名称 | CountryCode__c | CountryName__c |
| 澳大利亚 | AU | 澳大利亚 |
| 巴西 | BZ | 巴西 |
| 加拿大 | CA | 加拿大 |
sf cmdt generate records --csv ~/Downloads/CMT_CSV_country.csv --type-name CmdtCountry将自定义设置和自定义对象迁移到自定义元数据类型
在将 sObjects 转换为自定义元数据类型时,不支持的对象类型会转换为字符串格式。
| sObject 类型 | 转换类型 |
|---|---|
| 自动编号 | 文本字段 |
| 公式 | 已根据公式返回类型转换。若是文本类型,将其转换为长文本区域,默认长度是 32768 |
| 查找 | 文本字段 |
| 累计汇总 | 文本字段 |
| 外部查找 | 文本字段 |
| 主详细信息 | 文本字段 |
| 加密文本 | 不可读取的文字字串。 |
| 地理位置 | 2 个文本字段分别代表纬度和经度 |
| 多选选项列表 | 文本字段 |
| 时间 | 文本字段 |
| 币种 | 文本字段 |
另请参阅:
本文章是否解决您的问题?
请与我们共享您的想法,以便我们进行改进!

