Присоединить события (Location Referencing)

Доступно с лицензией Location Referencing.

Краткая информация

Присоединяет записи событий из таблицы, слоя или класса объектов к имеющемуся классу объектов событий ArcGIS Location Referencing.

Примечание:

Если целевым слоем является слой сервиса объектов, результаты проверки записываются в файл в директории ArcGIS Server. По умолчанию этот файл автоматически очищается через 10 минут, этого может быть недостаточно для обработки всех проверок и их записи в рабочую станцию, запускающую ArcGIS Pro. При больших загрузках данных рекомендуется настроить параметр максимальный возраст файла как минимум на 1 час. Вы можете отредактировать серверную директорию в Manager, чтобы настроить этот параметр.

Использование

  • Для запуска инструмента необходим набор данных LRS.

    Узнайте больше о создании набора данных LRS в ArcGIS Pipeline Referencing или создании набора данных LRS в ArcGIS Roads and Highways.

  • Значение Входное событие может быть таблицей, слоем или классом объектов.

    Более подробно о полях, необходимых для модели данных событий ArcGIS Pipeline Referencing

    Более подробно о полях, необходимых для модели данных событий Roads and Highways

  • Значение Целевое событие должно быть слоем или классом объектов, зарегистрированным с Location Referencing.

  • Этот инструмент поддерживает точечные или полилинейные объекты. Тип объекта в параметрах входных и целевых событий должен совпадать.

  • Если параметр Построить GUID идентификаторов загруженных событий отмечен и вы хотите сгенерировать GUID, либо не сопоставляйте поле EventID в разделе сопоставления полей, либо убедитесь, что в столбце EventID в исходных данных события находятся записи Null. Если поле EventID в исходной записи события заполнено, а параметр Построить GUID идентификаторов загруженных событий включен, значение в поле EventID записи исходного события будет загружено в целевое событие.

  • Этот инструмент поддерживает предотвращение конфликтов и будет пытаться получать и передавать блокировки.

  • Когда включено предотвращение конфликтов, поддерживаются следующие функции:

    • События, которые должны быть присоединены, автоматически получать блокировку, если допустимо. Если блокировку получить нельзя, инструмент возвратит ошибку и создает текстовой файл неудачных блокировок.
    • При работе с версией default, полученные блокировки будут сняты автоматически по завершении работы инструмента.
    • При работе с дочерней версией, полученные блокировки останутся в статусе закрепления по завершении работы инструмента. Необходимо закрепить или удалить версию, чтобы снять блокировки.
    • При работе с дочерней версией, если работа инструмента прервана, происходит получение блокировок, которые остаются в статусе возможности снятия.

  • Калибровка маршрута на маршрутах с реальными промежутками влияет на присоединенные события следующими способами:

    • Если разница в калибровке маршрута через промежуток не нулевая, присоединенные события будут разделены по промежуткам.
    • Если разница в калибровке маршрута через промежуток является нулевой, присоединенные события будут составными.

  • Вы можете использовать файл .csv в формате ASCII для присоединения событий, когда он используется вместе с файлом инициализации (schema.ini), который задает разделенные запятыми поля в файле .csv. Схема файла инициализации должна содержать следующее:

    • Имя файла .csv и формат инициализации
    • Имя и тип данных для каждого столбца CSV
    • Максимальная ширина, использующаяся, если тип данных - текст

    В следующем примере инициализации объявляется имя файла .csv и используемый формат, имя поля и тип данных, используемый для каждого столбца CSV (слева направо), и максимальная ширина текстовых полей.

    schema.ini
    
    [source_events.csv]
    Format=CSVDelimited
    ColNameHeader=True
    Col1=FromDate Date
    Col2=ToDate Date
    Col3=RouteID Text width 255
    Col4=FromMeasure Double
    Col5=ToMeasure Double
    Col6=RdType Long
    Col7=EventID Text width 50

    Дополнительные сведения о добавлении таблицы ASCII или таблицы в текстовом файле

Параметры

ПодписьОписаниеТип данных
Входное событие

Присоединяемые записи исходных событий.

Table View
Целевое событие

Слой событий Location Referencing или класс объектов, к которому будут присоединены исходные записи событий.

Feature Layer
Список полей

Управляет способом перемещения атрибутивной информации из полей значения параметра Входное событие в значение параметра Выходное событие.

Поскольку значение параметра Входное событие присоединяется к существующему событию, которое имеет определенную схему (определение полей), поля не могут быть добавлены или удалены из целевого набора данных. Хотя вы можете задать правила слияния для каждого выходного поля, инструмент игнорирует эти правила.

Field Mappings
Тип загрузки
(Дополнительный)

Указывает, как присоединенные события будут загружаться в целевой класс пространственных объектов событий.

  • ДобавитьЗаписи Входных событий будут присоединены к указанному целевому классу пространственных объектов событий.
  • Исключить перекрытияЗаписи Входных событий будут присоединены к указанному целевому классу пространственных объектов событий, а любые записи, которые имеют то же измерение или временные перекрытия, что и присоединенные события, станут устаревшими. Если присоединенное событие закрывает указанный целевой объект события, целевая запись события будет удалена. Используйте эту опцию только для линейных событий.
  • Исключить по ID события.Записи Входных событий будут присоединены к указанному целевому классу пространственных объектов событий, а любые записи, которые имеют тот же Event ID и временные перекрытия, что и присоединенные события, станут устаревшими. Если присоединенное событие закрывает целевую запись события с таким же Event ID, целевая запись события будет удалена.
  • Заменить по ID событияЗаписи Входных событий будут присоединены к указанному целевому классу пространственных объектов событий, а любые записи, которые имеют тот же Event ID, что и присоединенные события, будут заменены.
String
Построить GUID идентификаторов загруженных событий
(Дополнительный)

Определяет, будут ли генерироваться Event ID для присоединяемых записей Входные события. Генерация Event ID будет применяться только к записям Входных событий со значением Null в поле Event ID.

  • Отмечено - Event ID для присоединяемых записей Входных событий будут генерироваться.
  • Не отмечено - Event ID для присоединяемых записей Входных событий не будут генерироваться. Это значение по умолчанию
Boolean
Создать формы
(Дополнительный)

Указывает, будет ли повторно создаваться геометрия добавляемых записей. Параметр доступен только когда значение Входное событие является векторным слоем или классом пространственных объектов.

  • Отмечено - геометрия объектов входных событий будет повторно создаваться. Это значение по умолчанию
  • Не отмечено - геометрия объектов входных событий не будет повторно создаваться.
Boolean

Производные выходные данные

ПодписьОписаниеТип данных
Выходное целевое событие

Слой событий или класс объектов, к которому были присоединены исходные записи событий.

Feature Layer
Выходной файл результатов

Текстовый файл, в котором подробно описаны изменения, внесенные инструментом.

Text File

arcpy.locref.AppendEvents(in_dataset, in_target_event, field_mapping, {load_type}, {generate_event_ids}, {generate_shapes})
ИмяОписаниеТип данных
in_dataset

Присоединяемые записи исходных событий.

Table View
in_target_event

Слой событий Location Referencing или класс объектов, к которому будут присоединены исходные записи событий.

Feature Layer
field_mapping

Управляет способом перемещения атрибутивной информации из полей in_dataset в in_target_event.

Поскольку значение параметра in_dataset присоединяется к существующему событию, которое имеет определенную схему (определение полей), поля не могут быть добавлены или удалены из целевого набора данных. Хотя вы можете задать правила слияния для каждого выходного поля, инструмент игнорирует эти правила.

Для задания этого параметра можно использовать класс FieldMappings.

Field Mappings
load_type
(Дополнительный)

Задает способ загрузки присоединенных событий с измерениями или временностью с идентичными Event ID как записей in_target_event в класс объектов событий.

  • ADDЗаписи in_dataset будут присоединены к указанному целевому классу пространственных объектов событий. В целевые записи событий не вносятся изменения.
  • RETIRE_OVERLAPSЗаписи in_dataset будут присоединены к указанному целевому классу пространственных объектов событий, а любые записи, которые имеют то же измерение или временные перекрытия, что и присоединенные события, станут устаревшими. Если присоединенное событие закрывает указанный целевой объект события, целевая запись события будет удалена. Используйте эту опцию только для линейных событий.
  • RETIRE_BY_EVENT_IDЗаписи in_dataset будут присоединены к указанному целевому классу пространственных объектов событий, а любые записи, которые имеют тот же Event ID и временные перекрытия, что и присоединенные события, станут устаревшими. Если присоединенное событие закрывает целевую запись события с таким же Event ID, целевая запись события будет удалена.
  • REPLACE_BY_EVENT_IDЗаписи in_dataset будут присоединены к указанному целевому классу пространственных объектов событий, а любые записи, которые имеют тот же Event ID, что и присоединенные события, будут заменены.
String
generate_event_ids
(Дополнительный)

Определяет, будут ли генерироваться Event ID для присоединяемых записей in_dataset. Генерация Event ID будет применяться только к записям in_dataset со значением Null в поле Event ID.

  • GENERATE_EVENT_IDSОтмечено - Event ID для присоединяемых записей in_dataset будут генерироваться.
  • NO_GENERATE_EVENT_IDSОтмечено - Event ID для присоединяемых записей in_dataset не будут генерироваться. Это значение по умолчанию
Boolean
generate_shapes
(Дополнительный)

Указывает, будет ли повторно создаваться геометрия добавляемых записей. Параметр доступен только когда значение in_dataset является векторным слоем или классом пространственных объектов.

  • GENERATE_SHAPESГеометрия объектов входных событий будет повторно создаваться. Это значение по умолчанию
  • NO_SHAPESГеометрия объектов входных событий не будет повторно создаваться.
Boolean

Производные выходные данные

ИмяОписаниеТип данных
out_target_event

Слой событий или класс объектов, к которому были присоединены исходные записи событий.

Feature Layer
out_details_file

Текстовый файл, в котором подробно описаны изменения, внесенные инструментом.

Text File

Пример кода

AppendEvents, пример 1 (окно Python)

Демонстрирует использование функции AppendEvents в окне Python для присоединения записей событий в существующий класс объектов событий.

# Name: AppendEvents_ex1_pro.py
# Description: Append event records into an existing Location Referencing event feature class.
# Requires: ArcGIS Location Referencing

# Set current workspace
arcpy.env.workspace= r"C:\Pipeline.gdb"

# Set tool variables
# Source Event Table in fgdb
in_dataset = "PTMS_Add"

# Target Event Feature Class in fgdb
in_target_event = "LRSE_PTMS"

#Map fields between target and source
field_mapping = r'AADT "AADT" true true false 4 Long 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,AADT,-1,-1;YEAR_ "YEAR_" true true false 2 Short 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,YEAR_,-1,-1;Cosite "Cosite" true true false 6 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,Cosite,0,6;Classd "Classd" true true false 3 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,Classd,0,3;SECTION_ "SECTION_" true true false 8 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,SECTION_,0,8;COMM "COMM" true true false 254 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,COMM,0,254;Active "Active" true true false 1 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,Active,0,1;Sitetype "Sitetype" true true false 11 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,Sitetype,0,11;KFCTR "KFCTR" true true false 8 Double 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,KFCTR,-1,-1;DFCTR "DFCTR" true true false 8 Double 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,DFCTR,-1,-1;TFCTR "TFCTR" true true false 8 Double 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,TFCTR,-1,-1;LOCATION "LOCATION" true true false 8 Double 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,LOCATION,-1,-1;FromDate "FromDate" true true false 8 Date 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,FromDate,-1,-1;ToDate "ToDate" true true false 8 Date 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,ToDate,-1,-1;EventID "EventID" true true false 50 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,EventID,0,50'

load_type = "Add"

generate_event_ids = "NO_GENERATE_EVENT_IDS"

generate_shapes = "GENERATE_SHAPES"

# Execute the tool
arcpy.locref.AppendEvents(in_dataset, in_target_event, field_mapping, load_type, generate_event_ids, generate_shapes)
AppendEvents, пример 2 (автономный скрипт)

Демонстрирует использование функции AppendEvents в отдельном скрипте Python для присоединения записей событий в существующий класс объектов событий.

# Name: AppendEvents_StandAlonePython_Example.py
# Description: Append event records into an existing event feature class.
# Requires: ArcGIS Location Referencing

# Import arcpy module
import arcpy

# Check out license
arcpy.CheckOutExtension("LocationReferencing")

# Set tool variables
# Source Event Table in fgdb
in_dataset = r"C:\Pipeline.gdb\LRS\PTMS_Add"

# Target Event Feature Class in fgdb
in_target_event = r"C:\Pipeline.gdb\LRS\LRSE_PTMS"

#Map fields b/w target and source
field_mapping = r"AADT \"AADT\" true true false 4 Long 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,AADT,-1,-1;YEAR_ \"YEAR_\" true true false 2 Short 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,YEAR_,-1,-1;Cosite \"Cosite\" true true false 6 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,Cosite,0,6;Classd \"Classd\" true true false 3 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,Classd,0,3;SECTION_ \"SECTION_\" true true false 8 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,SECTION_,0,8;COMM \"COMM\" true true false 254 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,COMM,0,254;Active \"Active\" true true false 1 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,Active,0,1;Sitetype \"Sitetype\" true true false 11 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,Sitetype,0,11;KFCTR \"KFCTR\" true true false 8 Double 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,KFCTR,-1,-1;DFCTR \"DFCTR\" true true false 8 Double 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,DFCTR,-1,-1;TFCTR \"TFCTR\" true true false 8 Double 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,TFCTR,-1,-1;LOCATION \"LOCATION\" true true false 8 Double 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,LOCATION,-1,-1;FromDate \"FromDate\" true true false 8 Date 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,FromDate,-1,-1;ToDate \"ToDate\" true true false 8 Date 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,ToDate,-1,-1;EventID \"EventID\" true true false 50 Text 0 0,First,#,C:\Pipeline.gdb\LRS\PTMS_Add,EventID,0,50"

load_type = "REPLACE_BY_EVENT_ID"

generate_event_ids = "NO_GENERATE_EVENT_IDS"

generate_shapes = "GENERATE_SHAPES"

# Execute the tool
arcpy.locref.AppendEvents(in_dataset, in_target_event, field_mapping, load_type, generate_event_ids, generate_shapes)

# Check in license
arcpy.CheckInExtension('LocationReferencing')
AppendEvents, пример 3 (автономный скрипт)

Демонстрирует использование функции AppendEvents в отдельном скрипте Python для присоединения записей событий к сервису объектов.

# Name: AppendEvents_Pro_Ex3.py
# Description: Append events using a feature service. It is recommended to work in a version and post to the default version.
# Requires: ArcGIS Location Referencing

# Import arcpy module
import arcpy

# Check out license
arcpy.CheckOutExtension("LocationReferencing")

# Set tool variables
sourceevent = r"C:\LocationReferencing\LR.gdb\LRS\LineEvent"
field_mapping = r'FROMDATE "From Date" true true false 8 Date 0 0,First,#,C:\LocationReferencing\LR.gdb\LRS\LineEvent,FROMDATE,-1,-1;TODATE "To Date" true true false 8 Date 0 0,First,#,C:\LocationReferencing\LR.gdb\LRS\LineEvent,TODATE,-1,-1;EVENTID "Event ID" true true false 50 Text 0 0,First,#,C:\LocationReferencing\LR.gdb\LRS\LineEvent,EVENTID,0,50;ROUTEID "Route ID" true true false 255 Text 0 0,First,#,C:\LocationReferencing\LR.gdb\LRS\LineEvent,ROUTEID,0,255;FROMMEASURE "From Measure" true true false 0 Double 0 0,First,#,C:\LocationReferencing\LR.gdb\LRS\LineEvent,FROMMEASURE,-1,-1;TOMEASURE "To Measure" true true false 0 Double 0 0,First,#,C:\LocationReferencing\LR.gdb\LRS\LineEvent,TOMEASURE,-1,-1'
load_type = "ADD"
generate_event_ids = "NO_GENERATE_EVENT_IDS"
generate_shapes = "GENERATE_SHAPES"

# Target event is in a feature service. Sign in to portal is required to access the feature service. 
arcpy.SignInToPortal('https://yourdomain.com/portal', 'username', 'password')

# Map the target event from the feature service. In the feature service, 34 corresponds to the target event.
targetevent = r"https://yourdomain.com/server/rest/services/FeatureServiceName/FeatureServer/34"

# Execute the tool
arcpy.locref.AppendEvents(sourceevent, targetevent, field_mapping, load_type, generate_event_ids, generate_shapes)

# Check in license
arcpy.CheckInExtension('LocationReferencing')

Информация о лицензиях

  • Basic: Обязательно ArcGIS Location Referencing (ArcGIS Pipeline Referencing или ArcGIS Roads and Highways)
  • Standard: Обязательно ArcGIS Location Referencing (ArcGIS Pipeline Referencing или ArcGIS Roads and Highways)
  • Advanced: Обязательно ArcGIS Location Referencing (ArcGIS Pipeline Referencing или ArcGIS Roads and Highways)

Связанные разделы