Previous topicNext topic
WebBuilderX > 子页面容器类型 > 面板类容器 > 表格面板 > 默认值与行控制 >
锁定行

锁定行仅在某些特殊情况下才会用到。通过对锁定行条件的合理化使用,可实现企业内部管理系统中最常见的流程审批功能。

例如,张三的角色是录入人员,李四的角色是审核人员。正常情况下,张三只能查看未经审核的数据记录,当然也可以对这些记录进行新增修改或者删除。在张三输入完毕一条记录之后,李四立即对该记录执行了通过审核操作,那么,这个时候,就应该限制张三再对该条记录执行修改或删除操作了。

如何限制?只需加上锁定行条件即可。如下图所示,在锁定行所在的编辑区双击,即可弹出和“初始加载条件”完全一样的条件设置窗口,条件输入完毕即可生成锁定条件:

这样,当张三再次修改已经通过审核的数据记录时,将弹出“当前行已被锁定,不允许编辑”的提示信息,删除记录操作同时会失效。

但要注意,这样的锁定行条件将对所有用户有效,包括李四想撤销审核也会操作不了。如何给不同用户使用不同的锁定行条件?有两种处理方法:

第一种,给锁定行条件同时加上用户方面的限制。例如:

姓名='张三' and 审核 = true

请注意,这样的锁定条件写法其实是不太严谨的,因为它并没有考虑到空值的情况,可能会影响到非锁定行的删除操作。以ACCESS数据源为例,以下才是严谨的锁定行条件(请遵循不同类型数据源的SQL语言规范):

iif(姓名 is null, '', 姓名) = '张三' and iif(审核 is null, false, true) = true

锁定行条件中,一样可以使用“表单默认值”中的全部传值变量。

第二种,给不同用户设置不同的表格面板页面使用权限。例如,A页面一个表格面板,B页面一个表格面板,通过功能权限让不同用户打开不同的页面即可,因为默认值和行控制都是跟着不同的表格面板走的。