编辑者追踪提供了有关要素类和表的设置,该设置允许您自动记录关于所进行的所有插入和更新的信息。 它保存了创建或修改数据的编辑者的记录以及编辑发生的时间戳。 许多组织发现编辑者追踪有助于维持责任制度和透明度,并强化质量控制标准。
编辑者追踪可帮您回答诸如“负责在地理数据库中进行编辑的用户”等问题。 在要素类或表上启用编辑者追踪后,将自动追踪以下信息:
- 创建要素的用户
- 创建要素的日期和时间
- 上次编辑要素的用户
- 最后编辑要素的日期和时间
您可以为文件、移动或企业级地理数据库中的以下数据集启用编辑者追踪:
- 表
- 要素类
- 注记类
- 尺寸类
- 要素数据集
- 镶嵌数据集
- 属性关系类
注:
- 镶嵌数据集在移动地理数据库中不受支持。
- 并非所有的关系类类型都支持编辑者追踪。 编辑者追踪仅适用于基于表的关系类,例如多对多或属性 1:1 或 1:M 关系类。
编辑者追踪的工作原理
在文件、移动或企业级地理数据库的数据集上的 ArcGIS Pro 中启用编辑者追踪后,属性表将更新以包含指定用于追踪编辑信息的字段。 创建要素时,编辑者追踪会记录创建该要素的用户名称以及创建日期和时间。 更新现有要素后,将记录执行编辑的用户的名称以及执行编辑的日期和时间。
使用默认设置启用编辑者追踪后,将自动添加以下四种字段名称和字段数据类型:
- created_user (文本)
- created_date (日期 - 低精度)
- last_edited_user (文本)
- last_edited_date (日期 - 低精度)
要追踪对发布为要素图层的数据执行的编辑,可以启用要素服务中的一些或所有图层的编辑者追踪。 启用后,如同在 ArcGIS Pro 中直接使用地理数据库中的数据一样,通过要素服务对数据进行的编辑将被追踪。
记录值后
启用编辑者追踪后,无论何时以何种方式插入或修改要素或行,ArcGIS 都会记录新的编辑者追踪值。 这包括对用户定义的属性列、未由用户定义的系统列以及存储要素几何的形状列进行的修改。
注:
启用编辑者追踪时已存在的要素将指定编辑者追踪字段显示为 <NULL> 值。 追踪创建数据的用户和最初创建该要素的日期的字段将保持为 <NULL>。
大多数操作会记录追踪值,包括在后台自动更新据的操作。 例如,删除简单关系中的原点会自动更新相关要素中的外键列,因此会记录相关要素的新追踪值。
编辑者追踪仅适用于对现有数据集的操作,不适用于创建数据集的操作。 此外,涉及方案变更的操作如果也未修改进程中的列值,则不记录新的追踪值。
例如,进行以下任何操作将不会更新编辑者追踪值:
- 更改方案而不修改列值
- 添加或删除字段
- 复制和粘贴要素类
- 使用版本化数据运行协调并提交过程
- 使用数据提取工具复制数据
- 将标注转换为注记
- 导入 XML 工作空间文档
根据组织的需要,也可利用归档功能记录和访问数据集编辑的完整历史。
如何记录用户名
创建或编辑要素的用户的名称将记录在创建者和编辑者字段中。 这取决于用于访问文件、移动或企业级地理数据库的用户和身份验证方法。
查看以下身份验证方法:
- 操作系统身份验证 - 对于使用 ArcGIS Pro 客户端编辑的文件和移动地理数据库,以及通过操作系统身份验证连接的企业级地理数据库,记录的用户名基于用于登录操作系统的登录名。
- 数据库身份验证 - 对于企业级地理数据库,记录的用户名基于存储在数据库中的有效数据库用户名,并且是用于连接到地理数据库的名称。 此方法允许您通过提供不同的凭据以不同的数据库用户身份连接。
使用数据库身份验证,如果用户以 Emily 身份登录,则 Emily 记录为用户名。 如果第二天,用户使用其他有效数据库用户 GIS 登录,则 GIS 记录为用户名。
例如,已经在名为 Schools 的要素类中启用编辑者追踪。 下图中的编辑者追踪字段以黄色高亮显示。
编辑者追踪记录了通过 OS 身份验证的用户 EEVANS 添加名为 Highgrove Ridge High School 的学校时的日期和时间。
当天晚些时候,另一个用户 BHARDIN 更新了当前学年的注册人数。 编辑者追踪将 BHARDIN 记录为最后编辑此数据的用户并记录此编辑的日期和时间。
了解有关在启用编辑者追踪的情况下将数据通过 Web 作为要素服务共享时如何记录用户名的详细信息
域
如果数据位于企业级地理数据库,并且使用数据库身份验证,则可为进行编辑的用户名追加域(例如:@esri.com)。 例如,如果在 John 办事处有一个名为 Denver 的用户,并且在 John 办事处也有一个名为 Seattle 的用户,则可以 John@denver 和 John@seattle 的身份分别追踪他们的编辑,以便您可以确定是哪个 John 进行了各项编辑。
要设置企业级地理数据库的域,必须具有地理数据库管理员权限。 在目录窗格中,右键单击与地理数据库的连接,单击属性,然后单击编辑者追踪域下拉箭头。 然后,便可选择使用默认范围还是应用自己的范围。 您也可以通过要素服务为所进行的编辑追加范围。
注:
域可用于区分通过要素服务进行的编辑,而不是直接对地理数据库中的数据进行的编辑。 有关详细信息,请参阅要素服务的编辑者追踪 。
时间的记录方法
启用编辑者追踪后,如何记录日期和时间具有两个选项:UTC 或数据库时间。
- 数据库时间基于您的数据库所在的本地时区,并仅当您的数据限于同一时区时才应使用该数据库时间。
注:
如果在启用编辑者追踪时选择了预先存在的日期字段,则该字段中已填充的所有日期和时间值都应与您指定的编辑者追踪时间标准相匹配。
协调并提交行为
编辑版本化数据时,记录的日期和时间值是进行编辑的时间,而不是发生协调的时间。 例如,如果编辑者更改了行,但在第二天对其进行协调并提交至默认版本,则默认版本中该行的最后一次编辑日期将是编辑者进行更改的前一天。
冲突解决策略确定在协调具有冲突的版本时对编辑者追踪字段进行的更新。 编辑者追踪字段中的差异不单独触发冲突。 如果没有冲突,编辑者追踪字段中的值用于编辑版本(与任何其他字段的值一样)。
编辑者追踪属性
编辑者追踪属性可以从表或要素类属性上的管理选项卡访问。 如要从目录窗格中查看,右键单击数据集,然后单击管理。 在此,可以查看编辑者追踪属性以及启用或禁用编辑者追踪。
启用编辑者追踪时,您可以使用默认或自定义字段名称值。 启用编辑者追踪时,将自动创建指定的尚不存在的任何字段。 如果存在字段,它们必须是正确的 ArcGIS 字段数据类型。 了解有关编辑者追踪自定义字段设置的详细信息。
可通过编辑者追踪选项设置以下属性:
- 使用编辑者追踪复选框启用或禁用编辑者追踪。
- 选择创建要素或记录时要更新的字段:
- 创建者字段 - 此字段的默认值为 created_user,用于存储创建要素或记录的用户的名称。
创建日期字段 - 此字段的默认值为 created_date,用于存储创建要素或记录的日期和时间。
- 创建者字段 - 此字段的默认值为 created_user,用于存储创建要素或记录的用户的名称。
- 选择编辑要素或记录时要更新的字段:
- 编辑者字段 - 此字段的默认值为 last_edited_user,用于存储上次编辑要素或记录的用户的名称。
编辑日期字段 - 此字段的默认值为 last_edited_date,用于存储上次编辑要素或记录的日期。
- 编辑者字段 - 此字段的默认值为 last_edited_user,用于存储上次编辑要素或记录的用户的名称。
- 选择时间标准:
- UTC(推荐)- 使用预定义设置在数据集上启用编辑者追踪时,默认将创建或更新要素或记录时记录的日期和时间设置为采用 UTC 记录。
数据库时间 - 要启用编辑者追踪以采用数据库时间记录时间,请使用数据集的属性对话框或启用编辑者追踪地理处理工具。 如果用户确定要在同一时区内执行所有编辑,则仅建议在数据库的时区中记录时间。
- UTC(推荐)- 使用预定义设置在数据集上启用编辑者追踪时,默认将创建或更新要素或记录时记录的日期和时间设置为采用 UTC 记录。
有关编辑者追踪的启用或禁用方法的详细信息,请参阅启用编辑者追踪。