如何导入导出对象结构
为什么要导入导出对象结构
导入和导出对象结构的功能主要是实现数据的迁移和数据的备份,如迁移旧数据模型去新的环境,保持对象的一致和兼容。还有导入导出数据(参见如何导入导出数据)、导入导出资产包和源码包、导入导出应用包(工程能力)等,实现数据和代码功能在不同的租户间或环境间的转移,避免重复开发和不兼容的开发。
前提条件
- 条件1:若已有了需要导入导出对象结构的目标对象,则不需要执行条件2、条件3。本章节以条件2、条件3中的对象和字段为例,介绍如何导入导出对象结构。
- 条件2:新建一个简单的对象Class,对象创建过程请参见创建自定义数据对象。
- 条件3:在对象Class建一个自定义数字类型字段number,自定义字段创建过程请参见定义自定义对象的字段(Fields)。
如何导出对象结构
导入导出对象结构等价于元数据导入导出,是导出表的定义信息。在AstroZero经典版开发环境首页,选择“管理 > 系统管理 > 数据处理 > 元数据导出”,选中对象Class__CST导出,具体步骤请参见如何导出数据。如图1,单击导出后等1分钟就会有邮件(或界面直接下载结果),这种方式允许您从平台中导出元数据的副本。您可以手动启动导出过程,或按预定时间自动启动导出过程。Class的对象结构的结果如下:
{ "allowActivities": false, "allowBulkApiAccess": false, "allowChatter": false, "allowReports": false, "allowSearch": false, "allowSharing": false, "allowStreamingApiAccess": false, "contextSetup": 0, "description": "", "fields": [ { "caseSensitive": true, "dataType": "Name", "description": "", "id": "XXX", "inlineHelpText": "", "installedPackage": "", "isRequired": false, "isSearchable": false, "isUnique": false, "label": "名称", "name": "name", "protectMode": 0, "visibleLines": 3 }, { "caseSensitive": true, "dataLength": 18, "dataType": "Number", "defaultValue": null, "description": "", "id": "XXX", "inlineHelpText": "", "installedPackage": "", "isRequired": false, "isSearchable": false, "isUnique": false, "label": "number", "name": "CNAME__number__CST", "protectMode": 0, "scale": 0, "visibleLines": 3 } ], "id": "XXX", "installedPackage": "", "keyPrefix": "cfBY", "label": "Class", "name": "CNAME__Class__CST", "pluralLabel": "Classs", "protectMode": 0, "trackFieldHistory": false }
如何导入对象结构
导入对象结构是为了继续使用这个对象的结构。准备好导入目标对象zip包,例如使用如何导出对象结构中导出的Class对象的zip包,准备导入。
在AstroZero经典版开发环境首页,选择“管理 > 系统管理 > 数据处理 > 元数据导入”,新建元数据导入,拖入对象Class的zip包,如图2。对象导入的具体步骤,请参见如何导入数据。
对象导入成功后,在经典版开发环境页面左侧的列表中,单击,选择“模型 > 对象”,就能查到CNAME__Class__CST对象导入的自定义字段。
如果原来没有Class对象,导入元数据象将新增Class对象,完成对象结构的迁移,此时的对象“布局”页签不会自动创建有Detail和Records标准页面。只有手动新建字段时,才可勾选“添加本字段到页面布局”。