导入属性规则 (数据管理)

摘要

用于将属性规则从逗号分隔值文件 (.csv) 导入到数据集中。

使用情况

    注:

    将属性规则导入到数据集后,用于该数据集的最低客户端版本为 ArcGIS Pro 2.1。 这意味着该数据集将不再可用于 ArcGIS Desktop

  • 该工具只会导入数据集中尚不存在的规则,而不会更新现有规则。 应用至数据集的规则唯一性取决于规则名称,而不是规则定义。 例如,要素类有两个分别名为规则 A 和规则 B 的规则。如果输入 .csv 文件尝试导入名为规则 B 和规则 C 的规则,则规则 C 将被导入,但规则 B 将不会被导入,因为名为规则 B 的规则已经存在于数据集中。

    如果导入期间出现故障,则出现故障的特定列和行将显示在错误消息中。 系统将导入 .csv 文件中其余的有效属性规则。

  • 此工具可以与导出属性规则工具一起使用。

  • 使用 ArcGIS Data Reviewer 工具创建的规则需要导入 Data Reviewer 扩展模块许可。 如果导入的 .csv 文件中包含基于 Data Reviewer 的规则,且 Data Reviewer 扩展模块许可不可用,则会返回警告。

    如果导入期间出现警告,则警告消息中将指示出现问题的特定行。 系统将导入 .csv 文件中其余的有效属性规则。

  • 注:

    从 ArcGIS Pro 3.4 或更高版本的客户端导出属性规则将在 .csv 中包含 TRIGGERINGFIELDS 列。 要使用早期版本的 ArcGIS Pro 导入属性规则,请确保在导入之前从 .csv 中删除此列。

    导入的 .csv 必须包含以下列:

    描述示例

    NAME

    规则的名称。

    constraintRuleOP

    DESCRIPTION

    规则描述。

    操作压力必须小于 300。

    TYPE

    属性规则的类型。

    CONSTRAINT、CALCULATION

    SUBTYPE

    如果数据集包含子类型,并且规则定义中使用了子类型,则这是应用于该规则的子类型名称(也称为描述)。

    全部

    FIELD

    应用规则的字段的名称(如果适用)。

    CONDITION

    ISEDITABLE

    此布尔值用于定义属性字段是否可编辑。

    True 或 False

    TRIGGERINSERT

    此布尔值用于定义是否设置了规则的触发事件以插入编辑内容。

    True 或 False

    TRIGGERDELETE

    此布尔值用于定义是否设置了规则的触发事件以删除编辑内容。

    True 或 False

    TRIGGERUPDATE

    此布尔值用于定义是否设置了规则的触发事件以更新编辑内容。

    True 或 False

    SCRIPTEXPRESSION

    用于定义规则的 ArcGIS Arcade 脚本表达式。

    $feature.OPERATINGPRESSURE < 300

    ERRORNUMBER

    规则的错误编号(如果适用)。

    99

    ERRORMESSAGE

    规则的错误消息(如果适用)。

    操作压力无效。 该值必须小于 300。

    EXCLUDECLIENTEVALUATION

    此布尔值用于定义规则是支持所有客户端还是支持简单的客户端。

    True 或 False

    ISENABLED

    此布尔值用于定义是否启用属性规则。

    True 或 False

    BATCH

    此布尔值用于定义规则是否支持批处理验证。

    True 或 False

    SEVERITY

    此整数值 (1-5) 用于定义错误的严重性。

    2

    TAGS

    用于标识规则的一组字符串值。

    操作压力

    CATEGORY

    系统生成的用于定义规则类别的整数值(如果适用)。

    此值由系统生成,不应修改。

    6

    CHECKPARAMETERS

    系统生成的用于定义基于 Data Reviewer 的规则配置的 JSON 值。

    此值由系统生成,不应修改。

    {"ReviewerRuleType": "0", "minimumangle": "60"}

    TRIGGERINGFIELDS

    字段值列表,表示发生编辑的字段,这些编辑将触发属性规则。

    注:
    定义为 [] 的空数组,表示所有字段均是触发字段。 当未指定触发字段时,所有字段均被列为触发字段。

    ["RoadCondition", "NumberOfLanes", "RoadType"]

参数

标注说明数据类型
目标表

将应用属性规则的表或要素类。 数据集必须具有规则定义中指定的所有要素。

Table View
输入文件

包含待导入规则的 .csv 文件。

File

派生输出

标注说明数据类型
导入的属性规则

已更新的输入数据集。

Table View; Raster Layer; Mosaic Layer

arcpy.management.ImportAttributeRules(target_table, csv_file)
名称说明数据类型
target_table

将应用属性规则的表或要素类。 数据集必须具有规则定义中指定的所有要素。

Table View
csv_file

包含待导入规则的 .csv 文件。

File

派生输出

名称说明数据类型
out_table

已更新的输入数据集。

Table View; Raster Layer; Mosaic Layer

代码示例

ImportAttributeRules 示例(Python 窗口)

将属性规则从 .csv 文件导入到名为 Building 的要素类。

import arcpy
arcpy.management.ImportAttributeRules("C:\\MyProject\\MyDatabase.sde\\pro.USER1.Building",
                                      "C:\\MyProject\\expAttrRules.csv")

许可信息

  • Basic: 否
  • Standard: 是
  • Advanced: 是

相关主题