# 模型管理
功能简介:包括主题管理和模型管理。可进行数据模型的分类、分层级管理、维护主题共用属性,建立数据资源的管理体系,通过创建数据主题,形成管理数据对象的资源体系分类,并以此为模型管理、数据管理与应用的数据资源导航。此外,还包括数据模型的新增、编辑、删除和模型管理,可用于创建数据库结构、数据模型。在数据主题下创建数据模型,进行数据模型管理。引用数据模型定义,对数据元素进行数据描述,形成完整的数据信息、数据模型信息等。同时,对数据模型进行版本管理,以适应数据管理变动的需求。
# 主题管理
若用户拥有主题管理权限,则能够进行主题管理。
# 主数据内管理
# 新增主题
访问路径【管理门户】->【模型管理】->【主数据】,点击【+ 新建主题】,可以直接在主数据中新建主题。
# 公共资源同步
# 新建主题
切换到微应用公共资源
(点击顶部菜单中的【公共资源】
),再点击左侧一级菜单【主题管理】
,点击右侧子主题列表下方的【新建主题】
。
在新增主题中,输入或选择相应信息。
主题编号:手动输入,必填项,最多可输入64个字符,一个数据库中主题编号不可重复。
主题名称:手动输入,必填项,最多可输入64个字符,一个数据库中主题名称不可重复。
所属部门:手动输入,或点击右侧按钮从已存在的部门中选择机构,非必填项。
主题说明:非必填项。
# 主题同步
进入【管理门户】->【数据模型】->【主数据】或者【数据字典】页面。点击模型主题右侧的主题同步按钮,选择要同步的主题,点击提交后,即可将公共资源管理中的主题同步至主数据中。

# 主题机构搜索
输入想要查询的模型,点击查询,右侧树形界面显示匹配数据。(模糊匹配)
# 模型管理
访问路径【管理门户】→【模型管理】→【主数据】,进入模型管理
页面,如下图所示:
模型列表展示分为两个维度:主题与机构。通过切换当前维度,可以更清晰直观地看到不同主题和机构拥有的模型。
通过点击节点展示主题类别下的主题列表或模型列表。 文件夹图标表示非末级节点,点击该节点,展开其子主题,右侧显示该主题下模型列表;条目图标表示末级节点,点击该节点右侧显示模型列表。
# 新增数据模型
选中一个主题节点
,点击右侧的新增模型
按钮,弹出新增数据模型向导页面。
# 数据模型基本信息
在新增模型
页面中,输入或选择相应信息:
模型名称:手动输入名称,必填项,最多可输入256个字符。
模型编码:手动输入名称,必填项,最多可输入60个字符,不能以数字、下划线、特殊字符开头;
表名称:手动输入编码,输入内容必须是数字、字母和下划线且不能以数字开头,不是必填项,如留空,默认与模型编码同名,最多可输入60个字符,表名唯一;(注意:部分ORACLE数据版本表名长度较短)
模型类型:枚举值,普通模型
、分类模型
。
组织机构:手动选择,必填项。
排序号:数字,手动输入,映射业务门户模型一级菜单顺序。
备注:模型的备注信息,最多可输入500个字符。
以上各项信息填写完毕后,点击页面的【保存】
或【下一步】
按钮,模型信息创建成功后再进行字段/页面/等配置。
# 字段配置
新建字段,按用户模型设计录入业务字段(操作习惯建议:先新增所有字段和分组,保存后在拖拽字段进行归类分组。待UI完善易用性操作优化后移除这段备注文字。);如果需要对字段进行归类可以新建分组并把字段拖入各个分组下。处理手动录入字段方式,还可以选择从元标准或其他模型导入业务字段。如下图所示:
项 | 说明 |
---|---|
字段编码 | 手动输入英文名称,必填项,允许输入字母、数字或下划线,且首字符必须是字母或下划线,不能是数据库关键字,最多可输入64个字符,英文名称唯一 |
字段名称 | 手动输入属性名称,必填项,最多可输入256个字符,属性名称唯一; |
数据类型 | 数值、字符串、日期、时间、文件、图片;(文件和图片都是附件类型,功能基本相同) |
长度(L/P) | 只能填写正整数;适用于数据类型:数值(P)、字符串(L)。字符串长度注意不要超过数据库厂商限制(不宜超过2000),也要考虑好单行数据总量大小(否则可能导致建表失败)。数值长度不宜超过38。 |
精度(S) | 只能填写正整数,配合长度参数使用(P, [S]),值小于等于长度值(原因:SQL语法DECIMAL(P, S) P >= S );仅适用于数据类型:数值。精度为0表示存储整数值。 |
注释 | 输入字符限制500,非必填项。 |
如果有子模型(内部从模型|One2Many)也在这个向导页进行配置,如职工模型的子模型~家庭成员:
分组开启附属分组功能(高级特性),开启意味着启用多分表模式(附属分组都要独立建表,不要配置太多分表,应该合理规划以保证查询效率和数据维护效率),附属分表的表名使用主表名+分组序号
命名规则。启用附属分组(分表模式)只对物理层的数据读写实现有影响(数据写入需要分别写入主表和不同的分表,数据查询SQL需要JOIN分表实现),对业务层(低开UI表单和相关对外提供的数据读写等API)没有影响——对外不体现分表模式。分表模式旨在扩展单条数据的存储能力和提升部分场景的数据查询效率(有些场景只需要查询部分业务数据)。
# 页面配置
低开页面配置,首次进入该模型向导页会自动初始化表单(按字段类型),部分表单可能不符合用户需求,在下图这个低开表单编辑器
上进行调整即可,如把组件类型单行文本
修改为多行文本
,把单行文本
修改为业务组件-编码
,拖拽方式调整字段对应表单布局和顺序等。
字段职工编号
对应表单调整为编码字段类型,操作步骤:选择职工编号
表单 -> 右侧组件类型当行文本
修改为业务组件-编码
,如下图所示:(注意:子模型不支持编码,不要在子模型使用这个表单组件)

字段最高学历
对应表单调整为字典类型,操作步骤:选择最高学历
表单 -> 右侧组件类型当行文本
修改为下拉选择
-> 对数据来源(5种可选)进行配置。

切换到默认视图
标签页,配置业务数据查询表格样式(默认查询条件表单,表格列定制等),如下图所示:
表格列(字段)显示配置(可以拖拽调整顺序),数据状态 | 数据版本 | 更新时间 | 更新人
为数据模型系统字段。重置
操作可以把所有字段快速加入,但会丢弃原有配置(包括顺序);按需使用,否则遇到新增字段时点击添加显示列
后手动添加和配置。
表格上方查询条件自定义配置:
子模型表单配置和默认视图配置与主模型基本类似,但子模型不支持编码(使用过程注意不要在子模型表单中使用组件-编码)。
注意:表单中编码组件字段
配置为查询条件时,需通过自定义条件 -> 选择编码字段 -> 控件类型选择文本框
配置
# 约束配置
支持配置业务主键,数据唯一约束,业务数据检核。
新建主键约束
或唯一约束
,如下图所示:

# 编码配置
字段编码方案配置。如果向导页页面配置
没有配置编码
类型表单,则这一向导页会跳过(因为无需配置),如下图所示:
支持配置多种编码方案,例如物料模型按照不同的物料采用不同的编码方案。一般情况下只有一个默认的编码方案(方案匹配条件不配置即可),注意配置的编码方案的各个码段累计长度不要超过前面字段配置
向导页中该字段定义的长度。(例如物料模型,可能需要根一二级物料类别采用不同的编码方案,那就可以配置多套编码方案—— 通过方案匹配条件进行配置)
主数据默认提供12种码段编码规则,用户可以按需扩展编码规则(通过SPI接口com.primeton.mdm.management.spi.code.StatelessEncoder | com.primeton.mdm.management.spi.code.StatefulEncoder
扩展后以jar文件的方式部署到server端后重启服务即可。参考码段扩展开发文档 )
# 概览
最后一个向导页,展示数据模型定义的字段(分组)信息,包括子模型的字段信息。如下图所示:
数据模型配置向导完成后(至少要完成:字段配置向导页/表单配置向导页),获得一个可发布的数据模型,如下图所示:
# 分类模型
配置项 | 继承模式 | 非继承模式 |
---|---|---|
分类树 | √ | √ |
字段配置(以及子模型字段) | √ | |
预留字段 | √ |
与普通模型略有差异,创建分类模型向导页需要配置分类树,如果是开启继承模式那还需要配置预留字段。
分类模型开启继承模式情况下,点击数据模型卡片分类配置
打开分类树维护界面,如下图所示:
选择具体类别,点击上方+新增模型
按钮打开新增具体业务类别模型配置向导(与普通模型类似,此处不再赘述;但要注意配置的字段数量和类型不要超出分类模型定义的预留字段,如果无法自动分配会导致无法发布——需要先结合实际业务规划好共享的预留字段)
目前采用的是智能自动绑定物理字段(即父模型所配置的预留字段)模式:只有父模型定义的字段+预留字段才直接建表,所以子模型定义的主要字段需要绑定父模型配置的预留字段,如下图示例(只有生产物料一张表,所有物料存储在同一表中,但预留字段对应每种物料的特征值含义并不相同):
图中“生产物料”模型发布时会创建数据库表(包括其定义的含业务含义的字段,以及一批无业务含义的预留字段),其各个子模型(逻辑模型)不会创建数据库表但会复用前者的表——子模型定义的业务字段绑定父模型的预留字段,从而实现数据读写的能力(在业务层与普通模型无异)。
创建分类模型不开启继承模式情况下,向导完成分类树配置后再打开分类配置
窗口进行关联普通模型,这种模式有点类似菜单——在业务门户数据维护时把相关模型的业务数据维护聚合到一起方便切换。
把分类模型发布后,再配置分类树——把需要的模型挂载到对应的类别下即可。如下图所示:
# 编辑模型
在卡片模型下选择模型卡片内模型配置
链接或在列表模式下在右侧操作区选择模型配置
链接,打开模型配置向导页,配置过程与创建模型向导基本一样,此处不再赘述。
# 模型业务数据维护接口文档
访问路径:【管理门户】->【模型管理】->【主数据】->【主题】->【XXX模型】->【服务管理】,如下图所示:
API文档查看还有一种方式,如果后端开启了swagger-doc,使用浏览器访问/swagger-ui.html?urls.primaryName=mdm#/mdm-client-openapi
可以查看模型业务数据维护通用API。
# 注册服务
注册服务:将模型的服务信息注册到普元ESB服务平台,首先需要在企业服务总线【ESB】平台上面注册好相关的信息(域,系统,通道)。
# ESB9.0/iPaaS 9.1.0
使用ESB9.0或iPaaS 9.1.0版本时,需要将application-mdm.properties
中的配置改为
mdm.esb.support.afc=true
若程序已启动,则需要停止,修改配置文件并重新启动,即可生效。具体配置请参考服务注册相关系统变量中的配置。
域,系统,通道配置好了以后,点击注册服务按钮,选择配置好的域,系统,通道,然后输入服务编码和服务名称(服务编码和服务名称默认为模型编码和模型名称)。
提交后,在企业服务总线【ESB】平台上面可以看到该模型的服务信息,同时服务接口显示已注册。
点击服务注册旁边【...】按钮,点击【取消注册】可以将注册的服务信息在esb上进行删除,同时更新该模型下的服务接口信息状态为未注册。
# 模型版本对比和建表SQL下载
访问路径:【管理门户】->【模型管理】->【主数据】->【主题】->【XXX模型】->【版本比较】,如下图所示:
可以选择指定版本完整建表SQL语句下载或选择对比版本升级SQL语句下载。(如果版本之间字段比对结果无变化,那升级SQL为空;可能只是修改了表单等其他配置)
# 导入模型
访问路径:【管理门户】->【模型管理】->【主数据】->【主题】->【XXX主题】->【左上角按钮:导入模型】,如下图所示:

从图中“下载模块”链接处下载所需类型模型Excel填写模板文件,填写完成后上传即可(按规范填写的模型编码等信息注意避免与现存模型冲突)。上传成功后的数据模型还不可以直接发布,需要先执行模型配置向导完善其页面配置(低开表单)以及字段编码/数据检核等可选配置。
# 导出模型
模型导出功能是把当前模型发布版本的字段按照导入模板导出为excel表格。导出的模型数据可以直接通过导入模型功能把数据导入到其他模型中。
在模型管理卡片(或列表)中选则目标模型,点击卡片操作扩展区【...】选择【导出模型】按钮,完成模型导出。
# 扩展信息
在模型管理卡片(或列表)中选则目标模型,点击卡片操作扩展区【...】选择【扩展信息】,维护模型扩展信息。
# 模型关系图
模型关系图展示模型间的关系。可以查看全局模型关系图,也可以按照主题查看模型关系图。
访问路径:【管理门户】->【模型管理】->【主数据】->【主题】-> 【标签页:模型关系图】
# 主题层级图
访问路径:【管理门户】->【模型管理】->【主数据】->【主题】-> 【标签页:主题层级图】,展示主题和模型的关系。可以查看全局主题层级图,也可以按照主题查看主题层级图。