配置规则

UI 包含用于字段依赖关系和验证的规则框架。 规则确保用户在 UI 中输入的数据有效。

规则可以提供字段值的其他验证,也可以改变字段的行为,例如隐藏字段。 某些规则允许您将字段的值与另一个字段进行比较,而其他规则则将其与规则本身中定义的值进行比较。 但是,您无法使用规则来更改或覆盖字段依赖关系。

规则在 "创建" , "任务" 和 "管理" 视图中可用,但在 "网格视图" 中不可用。 在 "任务视图" 中,无法将规则添加到 "任务视图" 标题中的字段。 规则中使用的控制器字段必须在视图中。

要定义规则,请转至 视图设计器中的 设计 选项卡。 选择字段,然后在字段的属性面板中单击 新建规则 。 选择 规则类型 并添加条件。 字段类型确定可用的规则类型。 一个字段可以具有多个规则类型。

要除去规则,请将鼠标悬停在属性面板上的规则上。 单击 "除去" ,然后单击 完成

还有 必需可编辑只读 规则类型。 这些规则类型是在您单击 新建规则时定义的。 使用它们可根据视图中另一个字段 (称为 控制器 字段) 的值来定义字段是必需的,可编辑的还是只读的。

  • 如果 必需 显示为切换控件,那么可以将其设置为 True。 在此情况下,将禁用 必需 规则类型。 如果将其设置为 False ,那么可以定义用于确定字段是否为必需的 必需 规则类型。
  • 如果 只读 显示为切换控件,那么可以将其设置为 True。 在此情况下,将禁用 可编辑只读 规则类型。 如果将其设置为 False ,那么可以定义 可编辑只读 规则类型,以确定该字段是只读还是可编辑。
注: 未在 "任务" 或 "创建" 视图中定义从属选取列表。 但是,视图会强制实施在对象类型上定义的从属选取列表。 有关更多信息,请参阅 添加和使用从属选取列表
表 1. 规则类型
设计 JSON 描述

可编辑

只读

editable

readOnly

根据一个或多个其他字段的值使字段可编辑或只读。

可见

隐藏

visible

hidden

根据一个或多个其他字段的值使字段可视或隐藏。

Required

required

根据一个或多个其他字段的值,使字段成为必填字段。 在视图中,将禁用 保存 按钮,直到为该字段提供值为止。

大于

大于或等于

小于

小于或等于

等于

greater

greaterEqual

less

lessEqual

equal

验证某个字段的值是否大于,小于或等于同一类型的另一个字段的值,或者是否等于规则定义中提供的值。 您可以在整数,十进制,日期或货币字段上定义这些规则。

在视图中,将在该字段旁边显示红星,并且将禁用 保存 按钮,直到验证通过为止。

等于 规则还可以验证两个文本字段是否具有相同的值。 不支持超长字符串字段。

最小长度

最大长度

minLength

maxLength

验证文本字段的值是否具有最小或最大字符数。 在视图中,将禁用 保存 按钮,直到验证通过为止。 您可以在字符串字段上定义这些规则。

模式 pattern

验证文本字段的值是否具有指定的格式,例如 nnn-nn-nnnn。 在视图中,将禁用 保存 按钮,直到验证通过为止。 您可以在字符串字段上定义此规则。

模式规则中不支持大型长字符串字段。

定义可编辑和只读规则

可编辑只读规则类型可根据视图中一个或多个控制器字段的值使字段成为可编辑或只读字段。

关于本任务

您可以在任何字段类型上定义可编辑只读规则。

打开字段的属性面板时,字段类型和字段定义会决定是否显示必填属性。

控制器字段必须是枚举字段或角色字段。

当一个字段因控制器字段的更改而被设置为只读时,该字段自上次保存以来的值更改将恢复为其原始值。
注意:更改网格和卡片关系字段中的值存在例外。 这些值无法还原,因为它们会被立即保存。

在 JSON 标签上,当 "type设置为 "editable或 "readOnly时,将定义可编辑和只读规则。 还必须指定 "controllers或 "controllerName属性。 以数组形式指定一个或多个 "controllers。 使用简写格式 controllerName 而不是 controllers ,只指定一个 controller ,其中 ANY 值将满足规则的标准。

在以下步骤中,在规则类型中选择可编辑只读

过程

  1. 视图设计器中,单击设计选项卡。
    这将显示选用板。
  2. 选择要向其添加规则的字段。
  3. 在属性面板中,单击 "新建规则"。
  4. 选择规则类型
  5. "受控于 "中,选择 "一个字段和任意值"或"多个控制器或值"。
  6. 如果您选择"一个字段",并带有任何值
    1. 选择控制字段
    2. 单击完成
  7. 如果选择多个控制器或值
    1. 控制字段逻辑中选择 "必须满足所有控制字段条件"或 "可满足任何控制字段条件"。
    2. 单击新建控制器
    3. 控制字段中选择一个字段。 这将显示所有可用的控制字段。 后续选择取决于字段类型。
      • 对于参与者字段,可以设置与当前用户匹配和/或选择其他用户或组中的其他用户或用户组。 任一字段上的任何匹配都会将控制器解析为 true。 如果与当前用户匹配设置为 true,那么登录用户必须是与控制字段中值对应的用户或属于其中的用户组。
      • 对于枚举类型字段,单击,然后可以选择一个或多个不同的值。
      • 点击完成
    4. 单击 "新建控制器"添加下一个控制器字段。 重复前面的步骤,直到添加完所有控制器字段。 虽然您可以更改控制器字段的顺序,但此更改在视图中无效。
  8. 单击完成

定义可见规则和隐藏规则

根据视图中一个或多个控制器字段的值,"可见"和 "隐藏"规则类型可使字段或内联指导部分可见或隐藏。

开始之前

关于本任务

可见隐藏规则可定义在任何字段类型上,也可定义在章节的内联引导上。 如果已在字段上定义了可见字段依赖关系,则无法在任务或创建视图中为该字段定义这些 类型的其他规则。

controllers 必须是枚举字段或行为体字段。

当一个字段因控制器字段的更改而被隐藏时,该字段值自上次保存以来的更改将恢复为其原始值。
注意:更改网格和卡片关系字段中的值存在例外。 这些值无法还原,因为它们会被立即保存。

在 JSON 标签中,当 "type设置为 "visible或 "hidden时,将定义可见和隐藏规则。 您必须指定 "controllers或 "controllerName属性。 更多信息,请参阅定义可编辑和只读规则

在以下步骤中,在规则类型中选择可见隐藏

过程

  1. 视图设计器中,单击设计选项卡。
    这将显示选用板。
  2. 选择要向其添加规则的字段。
  3. 在属性面板中,单击 "新建规则"。
  4. 选择规则类型
  5. "受控于 "中,选择 "一个字段和任意值"或"多个控制器或值"。
  6. 如果您选择"一个字段",并带有任何值
    1. 选择控制字段
    2. 单击完成
  7. 如果选择多个控制器或值
    1. 控制字段逻辑中选择 "必须满足所有控制字段条件"或 "可满足任何控制字段条件"。
    2. 单击新建控制器
    3. 控制字段中选择一个字段。 这将显示所有可用的控制字段。 后续选择取决于字段类型。
      • 对于参与者字段,可以设置与当前用户匹配和/或选择其他用户或组中的其他用户或用户组。 任一字段上的任何匹配都会将控制器解析为 true。 如果与当前用户匹配设置为 true,那么登录用户必须是与控制字段中值对应的用户或属于其中的用户组。
      • 对于枚举类型字段,单击,然后可以选择一个或多个不同的值。
      • 点击完成
    4. 单击 "新建控制器"添加下一个控制器字段。 重复前面的步骤,直到添加完所有控制器字段。 虽然您可以更改控制器字段的顺序,但此更改在视图中无效。
  8. 单击完成

定义必要规则

根据视图中一个或多个控制器字段的值,"必填"规则类型将字段设为必填字段。

关于本任务

在对字段或其控制器字段之一进行更改时,都会对该字段进行验证,以确保它有一个值。 如果字段为必填字段,但缺少一个值,则字段上会显示一条信息,并禁用 "保存 "按钮。

该规则可定义在任何字段类型上,但对象类型(JSON 中的objectTypeName)设置为 "SOXDocument的关系字段除外。

如果已在字段上定义了必填字段依赖关系,则无法在任务或创建视图中为该字段定义此类型的其他规则。

控制器必须是枚举字段或角色字段。

在 JSON 标签中,当 "type设置为 "required时,会定义一条必填规则。 您必须指定 "controllers或 "controllerName属性。 更多详情,请参阅定义可编辑和只读规则

在以下步骤中,在规则类型中选择必填

过程

  1. 视图设计器中,单击设计选项卡。
    这将显示选用板。
  2. 选择要向其添加规则的字段。
  3. 在属性面板中,单击 "新建规则"。
  4. 选择规则类型
  5. "受控于 "中,选择 "一个字段和任意值"或"多个控制器或值"。
  6. 如果您选择"一个字段",并带有任何值
    1. 选择控制字段
    2. 单击完成
  7. 如果选择多个控制器或值
    1. 控制字段逻辑中选择 "必须满足所有控制字段条件"或 "可满足任何控制字段条件"。
    2. 单击新建控制器
    3. 控制字段中选择一个字段。 这将显示所有可用的控制字段。 后续选择取决于字段类型。
      • 对于参与者字段,可以设置与当前用户匹配和/或选择其他用户或组中的其他用户或用户组。 任一字段上的任何匹配都会将控制器解析为 true。 如果与当前用户匹配设置为 true,那么登录用户必须是与控制字段中值对应的用户或属于其中的用户组。
      • 对于枚举类型字段,单击,然后可以选择一个或多个不同的值。
      • 点击完成
    4. 单击 "新建控制器"添加下一个控制器字段。 重复前面的步骤,直到添加完所有控制器字段。 虽然您可以更改控制器字段的顺序,但此更改在视图中无效。
  8. 单击完成

定义 "大于"、"大于等于"、"小于"、"小于等于 "和 "等于 "规则

大于、"大于或等于、"小于 、"小于或等于和 "平等规则类型会验证字段的值,并确保该值满足规则类型应用的条件。 可以设置规则,将字段的值与另一个同类型字段的值或规则本身定义的值进行比较。

关于本任务

每次对字段进行更改时,都要对其进行验证,以确保它满足条件。 如果该值正在与另一个字段进行比较,则该字段的值发生变化时,该值就会被验证。 如果不满足条件,字段上会显示一条信息,并禁用保存按钮。 该信息解释了如何提供有效值。

这些规则类型可在整数、小数、日期和货币字段上设置。 比较两个字段时,两个字段的类型必须相同。 如果其中一个字段没有值,则不对规则进行评估。

文本字段也可以使用 "等于 "规则,但只能与另一个文本字段进行比较。 不支持超长字符串字段。

在 JSON 选项卡上,当 type 设置为 greater, greaterEqual, less, lessEqualequal 时,将定义比较规则。 还必须指定 "compareTo属性。

过程

  1. 视图设计器中,单击设计选项卡。
    这将显示选用板。
  2. 选择要向其添加规则的字段。
  3. 在属性面板中,单击 "新建规则"。
  4. 在 "规则类型中,选择 "大于"、"大于或等于"、"小于 "、"小于或等于"或 "平等"。
  5. 在 "比较至"中,字段类型决定了选项。
    • 对于整数、小数和货币字段,可以选择特定值并输入数值。 请勿包含引号、小数分隔符、货币代码或符号。
    • 对于整数字段、小数字段、货币字段、日期字段和文本字段,可以选择 "另一个字段"和 "选择一个字段"。 只列出视图中相同字段类型的字段。
    • 对于货币字段,使用基准金额而不是本地金额来比较数值。 这样就可以比较不同货币代码的数值。
    • 对于日期字段,您可以将数值与今天进行比较,还可以选择添加以天为单位的偏移量。

      由于 "今日 "的值会随着时间的推移而改变,因此只有当用户为字段选择了一个值时,才会评估与"今日 "进行比较的规则。 这样可以防止以前保存的数据因 "今天 "的变化而无法通过验证。

  6. 可选项:"应用严重性。 更多信息,请参阅控制规则的错误严重性
  7. 单击完成

定义最小长度和最大长度规则

最小长度最大长度规则类型可验证文本字段的长度,如果同时使用,则可定义一个范围。

关于本任务

无论何时对字段进行更改,都会对字段进行验证,以确保文本值的长度有效。 如果不满足条件,字段上会显示一条信息,并禁用保存按钮。 信息中说明了允许输入的字符数。

这些规则只能针对文本字段设置。

您可以提供 "最小长度"或 "最大长度"规则类型。 您可以同时使用这两种方法来定义范围。

在 JSON 标签中,当 "type设置为 "minLength或 "maxLength时,将定义最小和最大规则。 将 "compareTo指定为引号内的字符数。

过程

  1. 视图设计器中,单击设计选项卡。
    这将显示选用板。
  2. 选择要向其添加规则的字段。
  3. 在属性面板中,单击 "新建规则"。
  4. 在 "规则类型"中,选择 "最小长度"或 "最大长度"。
  5. 输入字符数。
  6. 应用严重性(可选)。 有关信息,请参阅控制规则的错误严重性
  7. 单击完成

定义模式规则

模式规则类型验证文本字段是否具有指定格式。

关于本任务

该字段的值一经更改,就会进行验证,以确保值的格式正确。 如果格式不正确,字段上会显示一条信息,并禁用保存按钮。

此规则只能针对文本字段设置。 模式规则中不支持大型长字符串字段。

在 JSON 标签中,当 "type设置为 "pattern时,将定义一个模式规则。 指定 "compareTo为有效正则表达式。

过程

  1. 视图设计器中,单击设计选项卡。
    这将显示选用板。
  2. 选择要向其添加规则的字段。
  3. 在属性面板中,单击 "新建规则"。
  4. 规则类型中,选择模式
  5. "模式"中,输入有效的正则表达式,例如 "^[0-9]{3}-[0-9]{2}-[0-9]{4}$
  6. 应用严重性(可选)。 有关信息,请参阅控制规则的错误严重性
  7. 单击完成

控制规则的错误严重性

使用 "严重性"属性可控制当用户输入未通过验证规则的值时,是否会发出错误或警告。

关于本任务

用户在输入不满足字段验证规则的值时,系统会发出错误并且无法保存该对象。 但是,如果应用了严重性属性,那么会发出警告而不是错误。 发出警告时,仍可保存对象。

可以将严重性属性添加到任何验证规则类型(大于大于或等于小于小于或等于等于)。 可以将其指定为错误、警告或参考信息。 如果规则没有“严重性”属性,那么会发出错误。

例如,如果日期字段不在接下来的 90 天范围内,那么会发出警告。 如果省略 severity 属性,那么会发出错误。

消息中的文本由系统设置,无法定制。

对于一个字段,可以显示多条警告消息。 但是,只会显示一条错误消息。

条件(例如,字段依赖关系和字段属性)始终会发出错误,而不是发出警告。

参考消息的行为类似于警告,但会显示有参考符号。 无论是警告还是参考信息,错误消息文本都相同。

在 JSON 选项卡上,将 severity 指定为 errorwarninginfo

过程

  1. 视图设计器中,单击设计选项卡。
    这将显示选用板。
  2. 选择要向其添加规则的字段。
  3. 在属性面板中,单击 "新建规则"。
  4. 规则类型中,选择规则类型。
  5. 在 "严重性"中,选择 "错误"、"警告 "或 "信息"。
  6. 单击完成