更新时间:2024-11-18 GMT+08:00
分享

创建多维版本的数据实例

功能介绍

版本对象的创建视图接口(createView)和批量创建视图接口(batchCreateView)是根据M-V模型实体已有数据实例的versionId(version.唯一编码)并指定多版本属性进行创建。创建后该M-V模型实体会生成实例数据完全复制原数据实例现有信息,但“version.修订版本”“branch.大版本”会从初始值重新开始计算的多维版本数据实例。

本章节以createView为例,如需调用batchCreateView,请前往全量数据服务查看。

URI

  • URL格式:

    POST http://{Endpoint}/rdm_{appID}_app/publicservices/api/{entityName}/createView

  • 参数说明:
    表1 URI参数说明

    参数

    是否必填

    参数类型

    描述

    Endpoint

    String

    承载REST服务端点的服务器域名或IP地址。

    appID

    String

    应用ID。

    entityName

    String

    实体的英文名称。

前提条件

  • 获取用户Token
  • 已获取Endpoint值(数据建模引擎所在域名或IP地址)和应用ID。
  • 已创建一个M-V模型实体并在“功能配置”“多维版本”中配置了多维版本属性(如“view2”),详情请参见创建数据实体
  • 已在应用运行态为M-V模型实体创建一个数据实例,详情请参见创建数据实例

请求参数

表2 请求body参数

参数

是否必填

参数类型

描述

versionId

String

原视图的versionId,即已创建数据实例的version.唯一编码。

workCopyType

Object

此配置项用于创建多维版本数据实例时是否继承其对应的关系实例。根据业务需求,选择类型。

  • BOTH:若存在关系实例引用此数据实例作为源端实例或目标端实例,创建后的数据实例将继承这些关系实例。
  • SOURCE:若存在关系实例引用此数据实例作为源端实例,创建后的数据实例将继承这些关系实例。
  • TARGET:若存在关系实例引用此数据实例作为目标端实例,创建后的数据实例将继承这些关系实例。
  • NONE:创建后的数据实例将不继承任何关系实例。
  • CUSTOM:若指定的关系实体集合对应的关系实例引用此数据实例作为源端实例或目标端实例,创建后的数据实例将继承这些关系实例。

customLinkSet

List

关系实体名称的集合。

“workCopyType”设置为“CUSTOM”时,需要设置此参数。

needSetNull

List

指定不复制的属性。被指定不复制的属性,其返回值将被设置为“null”

view2

说明:

如果用户在应用设计态配置“多维版本”功能配置时,将此多维版本属性设置为必填,则请求参数为必填项。

Object

自定义的多维版本属性。

modifier

String

更新者。

响应参数

返回创建的多维版本数据实例。

请求示例

示例背景

您已在cn-north-4区域的TestApp应用中,构建一个名称为“TestMV”、多维版本属性为“view2”的M-V模型数据实体,并完成了实体发布、应用发布和应用部署。希望可以根据已创建的M-V模型数据实例,创建一个多维版本数据实例。

示例代码

{
    "params": {
        "versionId": "521722330943061234",
        "modifier": "DME_Developer",
        "view2": {
            "id": "11",
            "clazz": "ViewAttr"
        }
    }
}

响应示例

为篇幅起见,这里只展示部分内容。其中,"version": "A"表示多维视图的迭代版本。

{
    "result": "SUCCESS",
    "data": [
        {
            "id": "523616294595981234",
            ......
            "rdmVersion": 1,
            "rdmDeleteFlag": 0,
            "rdmExtensionType": "View2",
            "tenant": {
                ......
            },
            "className": "View2",
            "name": "AS",
            "description": null,
            "kiaguid": null,
            "securityLevel": "internal",
            "master": {
                ......
                "rdmExtensionType": "View2Master",
                "tenant": {
                    ......
                },
                "className": "View2Master"
            },
            "branch": {
                ......
                "rdmVersion": 1,
                "rdmDeleteFlag": 0,
                "rdmExtensionType": "View2Branch",
                "tenant": {
                    ......
                },
                "className": "View2Branch",
                "version": "A"
            },
            "latest": true,
            "latestIteration": true,
            "versionCode": 1,
            "iteration": 1,
            "version": "A",
            "latestVersion": true,
            "workingCopy": false,
            "workingState": {
                "code": "CHECKED_IN",
                "cnName": "已检入",
                "enName": "checked in",
                "alias": "CHECKED_IN"
            },
            "checkOutUserName": null,
            "checkOutTime": null,
            "preVersionId": "52281****087179264",
            "viewAttr1": null,
            "viewAttr3": null,
            "viewAttr2": null
        }
    ],
    "errors": []
}

相关文档