Summary
Enables editor tracking for a feature class, table, feature dataset, or relationship class in a geodatabase.
Usage
If the input dataset is from an enterprise geodatabase, it must be from a database connection established as the data owner.
This tool can add fields if they do not already exist. If fields do exist, they must be of the correct data type. Creator Field and Last Editor Field must be string fields, and Creation Date Field and Last Edit Date Field must be date fields.
Editor tracking applies to operations on existing datasets only. It does not apply to operations that create datasets. For example, if you copy a dataset to create a new one, tracking values will not update in the new dataset.
You can record the dates of edits in either the database's time zone or in coordinated universal time (UTC).
If you plan to copy or replicate data across time zones or edit through a feature service, use UTC. Since editors can apply edits from potentially anywhere in the world, UTC works well because it ensures that times are recorded in a universally accepted and consistent way.
Configuring your editor tracking to use the database's time zone is only recommended if you are certain that all edits will be performed in the same time zone.
You can run this tool on a dataset that already has editor tracking enabled but only to enable tracking of additional information. For example, if a dataset is only tracking the creator and creation date, you can run this tool to add tracking of the editor and last edited date. This tool cannot disable tracking on a field, switch tracking from one field to another, or switch between UTC and database time. If you need to perform any of these operations, disable editor tracking on the input dataset before you run this tool.
Not all relationship class types can have editor tracking enabled. Editor tracking can only be enabled on table-based relationship classes (that is, many-to-many or attributed relationship classes).
At ArcGIS Pro 2.4, feature datasets are supported as input for this tool. If you add new fields to each item in the feature dataset, the fields will, by default, be named created_user, created_date, last_edited_user, and last_edited_date. If you use existing fields, the fields must already exist for all items in the feature dataset.
Syntax
arcpy.management.EnableEditorTracking(in_dataset, {creator_field}, {creation_date_field}, {last_editor_field}, {last_edit_date_field}, {add_fields}, {record_dates_in})
Parameter | Explanation | Data Type |
in_dataset | The feature class, table, feature dataset, or relationship class in which editor tracking will be enabled. | Dataset; Topology; Network Dataset |
creator_field (Optional) | The name of the field that will store the names of users who create features or records. If this field already exists, it must be a string field. | String |
creation_date_field (Optional) | The name of the field that will store the date features or records are created. If this field already exists, it must be a date field. | String |
last_editor_field (Optional) | The name of the field that will store the names of users who last edited features or records. If this field already exists, it must be a string field. | String |
last_edit_date_field (Optional) | The name of the field that will store the date features or records were last edited. If this field already exists, it must be a date field. | String |
add_fields (Optional) | Specifies whether to add fields if they don't exist.
| Boolean |
record_dates_in (Optional) | The time format in which created date and last edited date will be recorded. The default is UTC.
| String |
Derived Output
Name | Explanation | Data Type |
out_dataset | The modified input dataset. | Dataset |
Code sample
The following Python window script demonstrates how to use the EnableEditorTracking tool in immediate mode.
import arcpy
arcpy.EnableEditorTracking_management("d:/RC.gdb/Buildings","Creator","Created","Editor","Edited","ADD_FIELDS","UTC")
The following stand-alone script demonstrates how to enable editor tracking on all the feature classes and tables in a geodatabase.
# Name: EnableEditorTracking_Ex02.py
# Description: Enables editor tracking for all datasets in a geodatabase
# Import system modules
import arcpy
import os
# Set the workspace
workspace = arcpy.GetParameterAsText(0)
# Set the workspace environment
arcpy.env.workspace = "d:/test/data.gdb"
# Get all the stand alone tables and feature classes
dataList = arcpy.ListTables() + arcpy.ListFeatureClasses()
# For feature datasets get all of the featureclasses
# from the list and add them to the master list
for dataset in arcpy.ListDatasets("", "Feature"):
arcpy.env.workspace = os.path.join(workspace,dataset)
dataList += arcpy.ListFeatureClasses()
# Execute enable editor tracking
for dataset in dataList:
print('Enabling tracking on ' + dataset)
arcpy.EnableEditorTracking_management(dataset, "ET_CREATOR",
"ET_CREATED", "ET_EDITOR", "ET_EDITED", "ADD_FIELDS", "UTC")
print('Enabling complete')
Environments
Licensing information
- Basic: Yes
- Standard: Yes
- Advanced: Yes