如何制作实例化数据包
什么是实例化数据包
实例化数据是应用需要自带的预设数据,用于支持应用的默认行为。
在AstroZero平台中,实例化数据包是由以下三种类型数据的整体或部分构成的数据压缩包:
- 系统对象数据
AstroZero系统定义的实例化数据主要是用户在开发应用过程中平台产生或用户使用平台功能生成的,在应用安装完成后能够进行配置的数据。
- 标准对象数据
AstroZero平台内部自带的或第三方提供的标准对象数据,标准对象实例化数据包括了平台内置的(例如Account、Contact)以及订购了基线应用所提供的对象的实例化数据。
- 自定义对象数据
应用在发布时,包含一些初始化的数据,可通过单击,使用SQL语句查询对象及对象的数据,详情可参考使用控制台分析查询SQL。
为什么要制作实例化数据包
制作实例化数据包后,可以根据您的需求,进行数据备份,批量修改数据等,对数据进行导入导出操作。
实例化数据包是应用的数据补充,一般配合项目的软件包一起使用。因为项目软件包多数情况仅包含应用本身,不涉及预设的数据。通常情况下,先安装项目软件包,然后再导入实例化数据包。
定制应用的实例化数据的范围如下所示:
- 表1中的实例化数据,只要是在应用内创建的,在打包发布应用时会自动归档,请参见如何下载发布后的包。
表1 打包发布APP时自动归档的实例化数据 分类
对象
对象描述
归档说明
业务权限凭证
ServicePermission
包含业务权限凭证的信息。
按照开发规范,这些数据一般是在应用的“配置”页签下创建的,打包发布应用时,会自动将这些数据归档到应用zip包的data目录下,不需要手动归档,详情请参见如何下载发布后的包。
ServicePermissionCustomAPI
包含自定义接口配置的业务权限凭证。
其它
SysParameter
包含系统参数的信息。
Connector
包含业务应用使用到的连接器。
Picklist
PicklistValue
包含选项列表的信息。
BulkTemplate
包含数据导入模板。
多语言
CustomResource
CustomResourceValue
包含多语言的相关信息。
CustomTranslation
包含用户自定义的翻译。
TranslationSetting
包含翻译工作台里的信息。
- 表2中的实例化数据,需要伙伴根据自己的业务逻辑和业务场景,手动导出业务应用依赖的对象,然后归档到公共实例化数据包或者业务应用的zip包中,请参见如何导入导出数据。
表2 需要手动归档的实例化数据 分类
对象
归档场景
归档说明
Alarm BO
AL_AlarmDefAttr
AL_AlarmDefCategory
AL_AttrDef
AL_AlarmDef
告警规格数据所在的对象。
如果在告警BO中,新增/修改/删除了告警规格,且定制应用有用到告警BO,则需要导出这4个对象,然后归档到定制应用的zip包中。
Barcode BO
BC_BarcodeType
BC_BarcodeScenes
如果在条码BO中,新增/修改/删除了条码类型或者条码场景,且定制应用需要用到这些数据,则需要导出这些对象,然后归档到定制应用的zip包中。
例如:基线的移动通行应用用到了条码类型和条码场景,所以MoibleAccess应用的zip包中包含了BC_BarcodeType.csv和BC_BarcodeScenes.csv这2个对象。
Device BO
DE_DeviceRelationType
设备关系类型的对象。
如果在设备BO中,新增/修改/删除了设备关系类型,则需要导出该对象。
CustomResource
CustomResourceValue
DE_AttrDef
DE_AttrType
DE_AttrTypeUnit
DE_CommandDef
DE_DeviceDef
DE_DeviceDefAttri
DE_DeviceDefCategory
DE_DeviceDefMessage
DE_DeviceDefService
DE_DeviceProduct
DE_ExternalChannel
DE_DeviceDefDisplay(可选)
设备规格数据所在的对象。
如果在设备BO中,新增/修改/删除了设备规格,则需要导出这14个对象。
- 在定义设备规格时,如果上传了设备规格图标,需要导出DE_DeviceDefDisplay对象。
- 其中CustomResource和CustomResourceValue对象对应多语言。
Identity BO
CA_CM_LoginAccountTypeDefinition
CA_CM_IdentitySubjectType
如果在身份BO中,新增/修改/删除了登录账号类型或者身份主体类型,则需要导出这些对象。
Organization BO
ORG_Organization_System
ORG_Organization_Type
ORG_Organization_Instance
ORG_Organization
组织数据所在的对象。
如果在组织BO中,新增/修改/删除了组织,则需要导出所有的这4个对象。
Person BO
PE_PersonTypeAttri
PE_PersonTypeIdentity
PE_IdentityTypeDef
PE_PersonAttrDef
PE_PersonType
人员数据类型所在的对象。
如果在人员BO中,新增/修改/删除了人员类型,则需要导出这5个对象。
Space BO
SPA_Basic
SPA_Level_Relation
SPA_Level
SPA_Instance
空间数据所在的对象。
如果在空间BO中,新增/修改/删除了空间,则需要导出这4个对象。
AssetManagement BO
SmartCampus__AssetAttrDef__CST
SmartCampus__AssetType__CST
SmartCampus__AssetAttribute__CST
资产数据所在的对象。
如果在资产BO中,新增/修改/删除了资产自定义属性、资产分类或者资产属性值,则需要导出这3个对象。
Workorder BO
EQM_FieldMeta
FWO_ElementMeta
FWO_FlowConditionMeta
FWO_FlowMeta
FWO_FlowStatusMeta
FWO_FlowTransitionMeta
FWO_TemplateElementRelation
FWO_TemplateMeta
FWO_SchemeMeta
如果在工单BO中,新增/修改/删除了工单方案,则需要导出这些对象。
邮件模板
EmailTemplate
邮件通知模板的对象。
如果在业务平台中,新增/修改/删除了邮件通知的模板,则需要导出该对象。
人员群组类型
PicklistValue
人员群组类型的对象。
如果在AstroZero管理中心的“系统管理 > 选项列表 > PE_PersonGroup.GroupType”中,新增/修改/删除了人员群组类型,则需要导出该对象。
如何导入导出数据
- 数据修改后,升级没变化:不是同一条数据,即ID不一致。
- 对象存在,但数据导出里面找不到该表:开发界面里对象属性“允许API批量访问”未勾上。
- 报错“parsing request parameters content of JSON failed: 'record'”:表中存在lookup/masterdetail类型的字段,该字段的值必须为id,不能是普通的值。
- 报错“file server exception, receive response failed, TrackerTask RecvHeader recv resp status 28 != 0”:文件服务器异常,需要咨询运维处理。