标注 | 说明 | 数据类型 |
目标表 | 将应用属性规则的表或要素类。 数据集必须具有规则定义中指定的所有要素。 | Table View |
输入文件 | 包含待导入规则的 .csv 文件。 | File |
派生输出
标注 | 说明 | 数据类型 |
导入的属性规则 | 已更新的输入数据集。 | Table View; Raster Layer; Mosaic Layer |
用于将属性规则从逗号分隔值文件 (.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 |
将属性规则从 .csv 文件导入到名为 Building 的要素类。
import arcpy
arcpy.management.ImportAttributeRules("C:\\MyProject\\MyDatabase.sde\\pro.USER1.Building",
"C:\\MyProject\\expAttrRules.csv")