评估属性规则

在向数据添加属性规则后,评估过程将对数据规则进行检查以确保会遵守规则。 所使用的评估方法取决于规则类型和属性。 实时评估规则在编辑操作期间立即进行评估,而延迟评估规则在指定时间进行评估,如下所示:

  • 实时评估
    • 实时计算规则
    • 约束规则
  • 延迟评估
    • 批处理计算规则
    • 验证规则
许可:
要评估 web 要素图层的验证和批量计算属性规则,必须为组织成员分配 ArcGIS Advanced Editing 用户类型扩展模块(ArcGIS Enterprise 11.2 或更高版本)的许可。

编辑期间实时评估

实时计算和约束规则将在编辑操作时进行评估。 评估由编辑触发事件的类型(插入、更新或删除)控制。 对于更新事件,您可以选择指定一列触发字段。 编辑触发事件和触发字段在规则属性中进行定义。 要查看规则属性,请参阅创建和管理属性规则

ArcGIS Pro 中或通过要素服务编辑数据时,将对这些规则进行评估。 计算规则将自动填充字段或在计算表达式失败时返回错误消息。 如果违反规则,约束规则将返回错误消息。 进行编辑时,首先会评估实时计算规则,然后再评估约束规则。 在评估这些规则前,会设置各个要素的所有默认值。

以下视频显示了在进行编辑时触发实时计算规则的示例。

Play Video

  • 此视频是使用 ArcGIS Pro 3.2 创建的。

以下视频显示了在进行编辑时触发约束规则的示例。

Play Video

  • 此视频是使用 ArcGIS Pro 3.2 创建的。

从应用程序评估中排除

实时计算和约束规则在规则属性中有一个从应用程序评估中排除选项,用于对编辑期间的评估产生影响。 当从应用程序评估中排除选项被禁用时,该规则会在将应用编辑请求发送到数据源之前进行本地评估,其为 ArcGIS Enterprise(编辑要素服务时)或地理数据库(直接编辑要素类或表时)。 ArcGIS Pro 是能够在本地评估规则的唯一应用程序。

如果您不希望在进行所有编辑之前而不是每次进行编辑时都对规则进行评估,请启用此选项以免 ArcGIS Pro 在本地评估规则。

注:
如果 Arcade 表达式返回特定属性规则字典关键字、使用序列,或在计算中使用字段值,则对于立即计算规则,从应用程序评估中排除选项必须为 true。

延迟评估

在用户指定的时间通过错误检查器视图或评估规则工具对批处理计算和验证规则进行评估。 在评估期间,批处理计算规则将在计算表达式失败时自动填充字段或创建错误要素,并且验证规则将创建突出显示违规要素的错误要素。 如果同时评估这两种规则类型,则先评估批处理计算规则,后评估验证规则。 您可通过错误检查器视图来检查这些规则的错误要素。

以下视频显示了在错误检查器视图中运行评估规则时触发验证规则的示例。

Play Video

  • 此视频是使用 ArcGIS Pro 3.2 创建的。
注:
用于评估批次计算和验证规则的输入工作空间取决于 地理数据库类型,具有属性规则的数据集存储于:
  • 文件或移动地理数据库 - 地理数据库是要评估的输入工作空间。
  • 企业级地理数据库 - 要素服务与验证功能作为要评估的输入工作空间。 如果将相同的数据集发布到多个服务,请注意默认版本可能共享错误的图层和验证状态属性。

验证状态属性

批处理计算规则和验证规则的评估由数据集中的“验证状态”字段进行追踪。 “验证状态”字段将在创建数据集的第一个批处理计算规则或验证规则后添加。

该字段可报告每个要素的如下信息:

  • 该要素是否需要计算?
  • 该要素是否需要验证?
  • 该要素是否存在错误?

要检查有关要素的规则,必须将要素的验证状态设置为评估所需的计算或验证。

编辑要素时以及评估期间,将更新“验证状态”字段。 当为数据集添加或修改批处理计算或验证规则时,将会重置所有行的验证状态属性值。 (这适用于所有版本的企业级地理数据库。)将数据集迁移到其他位置时,将重置所创建的输出数据集的验证状态属性。

请参阅以下示例:

  • 当仅向数据集添加验证规则时,验证状态将更新为 2: No calculation required, validation required, no error
  • 当仅向数据集添加批处理计算规则时,验证状态将更新为 4: Calculation required, no validation required, no error
  • 当向数据集添加批处理计算和验证规则时,验证状态将更新为 6: Calculation required, validation required, no error

编码描述

0

无需计算,无需验证,无错误

1

无需计算,无需验证,存在错误

2

无需计算,需要验证,无错误

3

无需计算,需要验证,存在错误

4

需要计算,无需验证,无错误

5

需要计算,无需验证,存在错误

6

需要计算,需要验证,无错误

7

需要计算,需要验证,存在错误

“验证状态”编码值属性域

错误图层

要使用错误检查器评估批处理计算规则和验证规则,必须将属性规则错误图层添加至地图。 使用图层的上下文菜单添加错误图层选项,以从地理数据库或要素服务添加错误数据集的图层组。

“错误图层”图层组由以下数据集组成:

  • GDB_ValidationPointErrors
  • GDB_ValidationLineErrors
  • GDB_ValidationPolygonErrors
  • GDB_ValidationObjectErrors

在地理数据库中创建这些规则或将四个错误数据集作为 Web 要素图层的一部分共享且该图层已启用验证功能后,添加错误图层选项可用。 将错误图层组图层用作错误检查器中的源来评估规则及检查错误要素。

在地理数据库中创建首个批处理计算规则或验证规则的同时将创建错误数据集。 这些错误数据集将用于存储规则评估期间创建的所有错误。

注:
使用 WGS84 空间参考创建存储空间错误的错误数据集。

使用错误检查器评估规则

可以使用 ArcGIS Pro 中的错误检查器来评估批处理计算规则和验证规则。 错误检查器的源必须是来自地理数据库或具有验证功能的要素服务的错误图层。

    要使用错误检查器评估规则,请完成以下步骤:
  1. 插入选项卡的工程组中,单击新建地图 新建地图
  2. 地图选项卡的图层组中,单击添加数据。 浏览到数据源,然后选择要评估的要素类或表。 单击确定
    • 对于共享为具有验证功能的要素服务的数据,数据源位于门户 门户 之下。
    • 对于地理数据库中的数据,数据源位于工程计算机下。
  3. 内容窗格中右键单击图层,然后单击添加错误图层 图层组

    关联错误图层将作为单个组图层添加,用于通过错误检查器来评估规则。

  4. 编辑选项卡的管理编辑内容组中,单击错误检查器 错误检查器

    错误检查器工具条中的选项将引用地图视图中的错误图层。

    “源”选项将引用地图视图中的错误图层。
  5. 您也可以单击下拉按钮并选择错误图层以更改值。
  6. 单击评估规则按钮 验证范围 上的下拉箭头 下拉按钮 以展开评估规则选项。
    1. 对于规则类型,至少选择一个要评估的规则类型。

      • 批处理计算规则
      • 验证规则

    2. 对于范围,选择下列选项之一:

      • 可见范围 - 评估地图的可见范围。
      • 全图范围 - 如果源是要素服务,请评估要素服务的全图范围。 如果源是地理数据库,请使用工作空间中的属性规则评估数据的全图范围。

    3. 对于选项,选择以下任意选项:
      • 在此版本中修改 - 评估在当前分支版本中所作的编辑。 仅当源是具有版本管理功能的要素服务并连接到分支版本时,此选项才可用。 使用默认版本评估规则时,此选项不可用。
      • 异步执行 - 基于服务异步运行规则评估。 此选项将使用系统 ValidationTools 地理处理服务,该服务允许运行时间较长的进程。 仅当源是具有验证功能的要素服务时,此选项才可用。
  7. 操作完成后,单击下拉按钮 下拉按钮 折叠选项。
  8. 单击评估规则按钮 验证范围
  9. 随即将使用错误检查器创建和显示错误要素。 要查看和管理错误,请参阅管理属性规则错误