Сводка
Включает отслеживание редактирования для класса пространственных объектов, таблицы, набора классов объектов или класса отношений в базе геоданных.
Использование
Если входной набор данных берется из подключения к многопользовательской базе геоданных, он должен браться из подключения к базе данных, установленного от имени владельца этих данных.
Этот инструмент добавляет поля, если они еще не существуют. Если поля существуют, они должны иметь корректный тип данных. Поле создателя и Поле последнего редактора должны быть строчными, а Поле даты создания и Поле даты последнего изменения – полями дат.
Отслеживание изменений применяется к операциям только с существующими наборами данных. Оно не применяется к операциям, которые создают новые наборы данных. Например, если набор данных копируется и вставляется для создания нового набора данных, значения отслеживания в новом наборе данных не обновляются.
Даты редактирования можно записывать в часовых поясах базы данных или в формате UTC.
Если вы планируете копировать или реплицировать данные между разными часовым поясами, или редактировать при помощи сервиса объектов, используйте UTC. Поскольку редакторы могут использовать изменения, осуществленные в любой точке мира, формат UTC обеспечивает запись времени универсально принятым и последовательным методом.
Настройка отслеживания изменений для использования часового пояса базы данных рекомендуется только в том случае, если редактирование происходит в одном часовом поясе.
Можно использовать этот инструмент для набора данных, для которого уже включено отслеживание изменений, но только для включения отслеживания дополнительной информации. Например, если набор данных отслеживает только автора и дату создания, можно запустить этот инструмент для добавления функции отслеживания изменений редактора и даты последних изменений. Этот инструмент не используется для отключения отслеживания поля, переход к отслеживанию другого поля или переключение времени в формате UTC на время базы данных. Для выполнения вышеуказанных операций необходимо отключить отслеживание изменений для набора входных данных до запуска этого инструмента.
Не для всех типов классов отношений можно включить отслеживание изменений. Отслеживание изменений можно активировать только для классов отношений с таблицами (то есть много-ко-многим).
В ArcGIS Pro 2.4 инструмент поддерживает в качестве входных данных наборы классов объектов. Если вы добавляете новые поля для каждого элемента в набор классов объектов, то эти поля будут по умолчанию иметь имена created_user, created_date, last_edited_user и last_edited_date. Если вы используете имеющиеся поля, они должны существовать во всех элементах набора.
Синтаксис
arcpy.management.EnableEditorTracking(in_dataset, {creator_field}, {creation_date_field}, {last_editor_field}, {last_edit_date_field}, {add_fields}, {record_dates_in})
Parameter | Объяснение | Тип данных |
in_dataset | Класс пространственных объектов, таблица, набор классов объектов или класс отношений, для которых необходимо включить отслеживание изменений. | Dataset; Topology; Network Dataset |
creator_field (Дополнительный) | Имя поля, в котором будут храниться имена пользователей, создавших объекты или записи. Если это поле уже существует, оно должно быть строковым полем. | String |
creation_date_field (Дополнительный) | Имя поля, в котором будут храниться даты создания объектов или записей. Если это поле уже существует, оно должно быть полем даты. | String |
last_editor_field (Дополнительный) | Имя поля, в котором хранятся имена последних пользователей, которые редактировали объекты или записи. Если это поле уже существует, оно должно быть строковым полем. | String |
last_edit_date_field (Дополнительный) | Имя поля, в котором хранятся даты последнего редактирования объектов или записей. Если это поле уже существует, оно должно быть полем даты. | String |
add_fields (Дополнительный) | Указывает, следует ли добавить поля, если они еще не существуют.
| Boolean |
record_dates_in (Дополнительный) | Формат времени, и дата последнего по времени изменения. По умолчанию – UTC.
| String |
Производные выходные данные
Name | Объяснение | Тип данных |
out_dataset | Измененный входной набор данных. | Набор данных |
Пример кода
Пример скрипта Python для использования инструмента EnableEditorTracking в режиме прямого запуска.
import arcpy
arcpy.EnableEditorTracking_management("d:/RC.gdb/Buildings","Creator","Created","Editor","Edited","ADD_FIELDS","UTC")
Следующий автономный скрипт демонстрирует как включить отслеживание изменений для всех классов пространственных объектов и таблиц в базе геоданных.
# 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
Информация о лицензиях
- Basic: Да
- Standard: Да
- Advanced: Да