全部文档
文档中心业务模型操作管理业务模型

管理业务模型

  • 拥有一个先胜云系统管理员账号,拥有对 业务模型 组件的注册并启用、对强依赖组件配置的全部操作权限。

  • 拥有一个先胜云管理员账号,由系统管理员授权拥有对 业务模型 组件的操作权限。

在业务模型创建/编辑界面中,主要是将关联的数据表以树形结构展示,且有严格的分层关系。每张数据表都处在某一个层级中,且除模型主表之外,其他数据表都必须同其上一层的某张表有关联关系。第一层只有主表一张表。

元素管理 界面,点击 +新建 > 业务模型,进入业务数据模型的新建首页。这里可以选择用一个已有的数据表元素来创建模型,还是新建一张数据表来创建模型。



  • 如果选择 手动创建,则会通过添加字段的方式,创建一张新数据表作为业务数据模型的主表。添加字段时,需要先选择字段类型(文本/整数/小数/日期时间),再填写字段名,字段名 只允许输入字母,数字,下划线且不能下划线开头。点击添加的字段,右侧弹出字段属性框,可对字段进行属性设置。




  • 如果选择 从已有数据表创建,则会弹窗要求从元素目录中选择所需的数据表。


    从目录中选择一张已有的数据表,点击 完成 进入模型创建界面,该数据表作为模型主表显示在第一层级。

点击数据表右侧 + 按钮,可以为主表创建子表,子表的创建同样可以通过选择 新建数据表已有数据表 来实现。

选择 新建数据表已有数据表 后,该子表将展示在第二层级,并且从属于第一层级的主表。


以此类推,可以建立具有多层级结构的业务数据表模型。

数据表层级结构建立完成后,默认将子表和主表的同名字段建立关联关系,可以选中该子表,在右侧弹框中的 模型信息 > 关联字段 中进行修改或删除。


若子表和主表不存在同名字段,该子表将被框红并在鼠标放置于标题时悬浮框提示 未设置表之间的关联关系,同样可选中该表并在右侧弹框中设置关联字段。

如需修改主表和子表的连接关系,可选中子表,随后在右侧弹框中修改其父表,父表可以选择模型中存在的除本表以外的任何表,修改后层级关系将发生变动。



  • 当将一张已经添加到模型中的表删除或者替换成其他数据表时,该表上配置的所有信息均清除。如果该表已经被设置为子模型中的一张表,则自动从该子模型中移除(子模型的创建将在下文中进行详述)。


  • 如果删除了一张父级表,此时子表没有父表的连接,即断掉了与模型主体的联系,此时该子表以及其所有后代表都通过红框标出该表是无父级的表。


    如果此时点击 保存,会弹窗提示 以下数据表缺少同模型的联系,保存后将被移出模型,请确认。点击 确定移除并保存 则保存除这几张表之外的所有信息,刷新后这几张表不再显示。这样,模型基础结构就搭建好了。

模型创建/编辑界面分为三层结构:首先是最外层的模型结构;其次是模型下的数据表结构;最后是数据表的字段属性。针对这三层结构,分别都有对应的属性设置区域,详细设置步骤操作如下。

点击页面左上方的业务模型名称后面的设置按钮,右侧栏出现 业务数据模型 属性编辑界面,模型的属性有两个标签页:基本信息子模型管理



配置信息如下:

模型属性

配置信息

说明

基本信息

编码

编码字段需要唯一,只允许输入字母,数字,下划线且不能下划线开头,且保存后不允许再次编辑

名称(多语种)

名称语种的配置取决于系统启用了多少种语言

引用关系管理

点击可查看业务模型引用的其他元素信息,可选择查看绝对路径或相对路径。只有保存后该属性才可编辑

子模型管理

编码

编码字段只允许输入字母,数字,下划线且不能下划线开头

名称(多语种)

名称语种的配置取决于系统启用了多少种语言

子模型主表

仅配置了业务主键的数据表才可被选择为子模型主表;选择为子模型主表后,该数据表的颜色会发生变化,用于区分是否是子模型


配置结果如图:



模型配置完成后,点击右上角 保存 按钮,选择该模型需要保存的位置信息,点击 确定 按钮,模型便保存在已选择的路径下。再次编辑,可通过该路径点击进入。

点击数据表头,右侧栏出现 数据表 属性编辑界面,数据表属性有两个标签页:基本信息模型信息



配置信息如下:

数据表属性

配置信息

说明

基本信息

编码

编码字段需要唯一,只允许输入字母,数字,下划线且不能下划线开头,且保存后不允许再次编辑

名称(多语种)

名称语种的配置取决于系统启用了多少种语言

实际表名

实际表名默认为数据表编码,可编辑;前缀为所在的应用 ID,不可编辑

记录创建人、创建时间

勾选 记录创建人、创建时间,将创建 _creator_create_time 字段,用来记录创建的相关信息

记录更新人、更新时间

勾选 记录更新人、更新时间,将创建 _modifier_modify_time 字段,用来记录修改的相关信息

保存模型时创建排序字段

勾选 保存模型时创建排序字段,将创建 _sort 字段,以满足业务明细表中表格等区域在多条数据情况下的排序需求

模型信息

所属层级

显示为该数据表所在层级,不可编辑

父级表

仅非主表有该配置,显示为当前数据表的父级表,可修改为除本表以外的任何表,修改后层级关系将发生变动

路径

仅非主表有该配置,显示为当前数据表的父级表所在位置,自动带出,可选择查看绝对路径或相对路径

关联字段

仅非主表有该配置,默认将子表和主表的同名字段建立关联关系,可增加、删除、修改

对应关系

仅非主表有该配置,默认为 1:N,可修改,表示主表和子表间的对应关系是一对一还是一对多

业务主键

除系统主键外,可选择该数据表中逻辑属性为文本/维度/值列表类型的字段作为业务主键,可配置多个业务主键字段

系统主键

除业务主键字段、关联字段、冗余字段外,可以选择该数据表中的其他任何字段

冗余字段

冗余字段可以添加多个,先选择子表(本数据表)的字段,选好后,如果父表中有同名字段,则自动带出,如果没有则置空,需要手动选择。自动带出的字段也允许修改。保存时会校验冗余字段是否都有匹配的父级表字段。使用效果:若该业务模型被业务明细表引用,当往表中新增一条数据的时候,如果该字段上的值为空,则自动从父级表中取相同字段上对应的值下来作为冗余信息;如果写入的数据中该字段上已经有值,则不做替换。在单个字段做更新的时候则不主动更新该字段。


配置结果如图:



点击数据表字段,右侧栏出现字段的属性编辑界面,字段的属性有三个区域:数据库属性逻辑属性编辑和权限属性


配置信息如下:

字段属性

配置信息

拓展字段

说明

备注

数据库属性

所属数据表

-

-

字段所属的数据表,不可修改

字段名

-

-

字段编码,只允许输入字母,数字,下划线且不能下划线开头,必填

描述

-

-

字段的名称

数据类型

文本

长度

默认为255,可修改

整数

长度

默认10,可修改

小数

整数长度

默认13,可修改

小数长度

默认6,可修改

日期和时间

-

-

设为主键

-

-

设置数据表的主键字段

自增

-

-

只有整数类型主键可设置自增

逻辑属性

字段类型

文本

长度

可输入的文本长度

和数据库属性中的 数据类型 具有联动关系:文本→文本、数字、值列表、维度、日期时间、用户、附件上传;整数→数字;小数→数字;日期和时间→日期和时间

数字

整数部分长度

可输入的整数长度

小数部分长度

可输入的小数长度

数值范围

允许输入的数值范围

值列表

值列表

选择关联的值列表元素,必填

值列表路径

显示所关联值列表元素所在位置,自动带出,不可编辑,可选择查看绝对或相对路径

值列表成员

选择值列表成员

维度

维度

选择关联的维度元素,必填

维度路径

显示所关联维度元素所在位置,自动带出,不可编辑,可选择查看绝对或相对路径

维度表达式

选择维度表达式

角色方案

选择关联的权限方案

角色方案路径

显示所关联权限方案所在位置,自动带出,不可编辑,可选择查看绝对或相对路径

角色/角色组

选择对应的角色或角色组

日期时间

日期时间内容

选择日期显示格式

用户

-

-

默认值

-

-

该字段使用时的默认值

编辑和权限属性

设为业务主键

-

-

若勾选,将在数据表属性->模型信息->业务主键中显示,两边均可操作,具有联动关系

启用权限控制

-

-

若勾选,则可以对该字段设置权限控制,详见下文 权限设置

权限控制单元

-

-

勾选 启用权限控制 后出现 权限控制单元 属性,输入权限控制单元名称后,在 权限管理 中可通过权限控制单元设置该字段的读写权限


配置结果如图:

点击右上角设置按钮,选择 自定义逻辑,进入自定义逻辑编辑界面:


业务模型的自定义逻辑分保存前,保存后,删除前,删除后这4个阶段,分别表示在关联的业务明细表保存前后或关联的清单表条目删除前后执行的逻辑。


在每个阶段可以添加多个步骤,每个步骤可以是一个 URL 地址或者一个 python 脚本,可选择 同步异步 执行。步骤可以拖拽排序。


在财务模型的相关介绍中已经提到过,先胜云的权限控制是通过用户对数据的角色,以及数据的状态这两个信息去共同控制的。在一个业务模型中,角色由业务模型主模型中的某个或某几个字段确定(业务模型中主表的字段)。当确定了角色之后,再根据主模型或者子模型中指定的状态字段的值,实现对主模型或者子模型中所有字段的读写权限的控制。

在一个模型中,角色和状态确定了之后,还经常会要求对一个子模型中不同的字段设置不同的读写权限。比如在一个子模型提交审核后,编辑用户不允许录入任何字段,但审核用户对其中某几个字段还是有编辑的权限,对其余的字段是只读权限,这时,业务模型还允许进一步针对不同的字段去配置不同的权限。

由于需要针对字段进行权限设置,当一个模型中的字段较多时,会导致用户要做大量的配置,并且当新增字段的时候,还需要对新的字段再进行权限设置。一旦权限设置需要做修改,则需要将所有字段的权限都调整一遍,工作量巨大。这时需要引入一个新的概念:权限控制单元。

权限控制单元,是权限控制的虚拟对象。一个权限控制单元其实就是一个标签,同一个权限控制单元可以被赋值给任意多个字段。这样,在配置权限的时候,将权限相同的字段赋予同一个权限控制单元,随后仅需要对权限控制单元设置读写权限,即可以实现对具体字段的权限控制。这样的好处在于大大减少了配置权限的工作量。比如一个子模型中有 100 个字段,如果直接对字段做权限设置,需要设置 100 次,但如果能够将所有字段的权限分为两类 A 和 B,A 类允许在提交状态下审核用户可以继续编辑,B 类在提交状态下不允许编辑。则只要对 A 和 B 这两个权限控制单元做权限设置,一共设置 2 次,就可以满足需求。


点击右上角设置按钮,选择 权限管理,进入权限管理编辑界面。权限管理分为三个区域:角色设置状态设置权限设置


  • 角色设置 通过关联权限方案(角色方案的配置详见 管理权限方案 中的 管理角色管理角色组 章节),对用户的数据权限做控制;

  • 状态设置 若关联审批流,可启用使用该业务模型的业务明细表的审批流,并在权限设置中对业务明细表进行字段的读写权限控制;

  • 状态设置 若仅关联值列表,可在权限设置中对使用了该业务模型的业务明细表进行字段的读写权限控制。

点击 角色设置 的下拉框,选择要关联的权限方案。


之后从主模型主表中所有维度类型字段中勾选,并关联权限方案中的维度。

状态设置是基于主模型和子模型的维度进行配置的,可切换各个模型,在各模型主表中所有值列表类型字段中勾选,并关联值列表元素或审批流。


设置的状态将自动作为列添加在 权限设置 栏。

可通过直接配置字段或配置权限控制单元来控制字段的读写权限:

  • 通过字段控制:

    依次通过下拉框选择业务模型中的数据表-字段,角色/角色组(允许多选),配置的状态成员值(允许多选),和读写权限,实现 当前字段-角色-状态 组合下对应数据的读写权限控制。

    .. note:: 仅至少有一个字段的编辑和权限属性中勾选了 启用权限控制 的数据表,才可以被选到;仅勾选了 启用权限控制 的字段,才可以被选到。




  • 通过权限控制单元控制:

    点击 权限控制单元 后,依次通过下拉框选择此业务模型中已配置的权限控制单元,角色/角色组(允许多选),配置的状态成员值(允许多选),和读写权限,实现 当前权限控制单元-角色-状态 组合下对应数据的读写权限控制。


若在权限设置页面对同一字段存在重复数据,则取最高权限。例如:字段 A 在某角色下为只读权限,字段 A 所在的权限控制单元在相同角色下为可写权限,则取可写权限。

回到顶部

咨询热线

400-821-9199

我们使用 ChatGPT,基于文档中心的内容以及对话上下文回答您的问题。

ctrl+Enter to send