
# 如何导入导出对象结构
#### 为什么要导入导出对象结构
导入和导出对象结构的功能主要是实现数据的迁移和数据的备份，如迁移旧数据模型去新的环境，保持对象的一致和兼容。还有导入导出数据（参见[如何导入导出数据](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0043.html)）、导入导出资产包和源码包、导入导出应用包（[工程能力](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0673.html)）等，实现数据和代码功能在不同的租户间或环境间的转移，避免重复开发和不兼容的开发。
#### 前提条件
- 条件1：若已有了需要导入导出对象结构的目标对象，则不需要执行条件2、条件3。本章节以条件2、条件3中的对象和字段为例，介绍如何导入导出对象结构。
- 条件2：新建一个简单的对象Class，对象创建过程请参见[创建自定义数据对象](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0007.html#astrozero_05_0007__section14707144715118)。
- 条件3：在对象Class建一个自定义数字类型字段number，自定义字段创建过程请参见[定义自定义对象的字段（Fields）](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0007.html#astrozero_05_0007__section128217211214)。
 
 #### 如何导出对象结构
导入导出对象结构等价于元数据导入导出，是导出表的定义信息。在AstroZero经典版开发环境首页，选择"管理 \> 系统管理 \> 数据处理 \> 元数据导出"，选中对象Class__CST导出，具体步骤请参见[如何导出数据](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0043.html#astrozero_05_0043__section6343228131214)。如[图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
}
```
图1元数据导出   
![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001960286049.png "点击放大")
 #### 如何导入对象结构
导入对象结构是为了继续使用这个对象的结构。准备好导入目标对象zip包，例如使用[如何导出对象结构]中导出的Class对象的zip包，准备导入。
在AstroZero经典版开发环境首页，选择"管理 \> 系统管理 \> 数据处理 \> 元数据导入"，新建元数据导入，拖入对象Class的zip包，如[图2]。对象导入的具体步骤，请参见[如何导入数据](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_0043.html#astrozero_05_0043__section1434102611188)。
对象导入成功后，在经典版开发环境页面左侧的列表中，单击![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001960126245.png)，选择"模型 \> 对象"，就能查到CNAME__Class__CST对象导入的自定义字段。
图2元数据导入   
![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001933046920.png "点击放大")
![](https://support.huaweicloud.com/usermanual-astrozero/public_sys-resources/note_3.0-zh-cn.png)
如果原来没有Class对象，导入元数据象将新增Class对象，完成对象结构的迁移，此时的对象"布局"页签不会自动创建有Detail和Records标准页面。只有手动新建字段时，才可勾选"添加本字段到页面布局"。
