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

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

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

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

Примечание:

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

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

  • Для запуска инструмента необходим набор данных LRS. Чтобы создать набор данных LRS, добавьте точку калибровки, центральную линию и слой красных линий к набору классов объектов; затем запустите инструмент Изменить LRS, указав входную базу геоданных.

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

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

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

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

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

  • Если параметр Построить 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 или таблицы в текстовом файле

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

    Более подробно о предотвращении конфликтов в ArcGIS Pipeline Referencing или о предотвращении конфликтов в ArcGIS Roads and Highways.

Параметры

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

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

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

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

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

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

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

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

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

  • ДобавитьЗаписи Входных событий будут присоединены к значению параметра Целевые события. Изменения в записи Целевых событий не вносятся.
  • Исключить перекрытияЗаписи Входных событий будут присоединены к значению параметра Целевые события, а любые записи в Целевых событиях с перекрытиями измерений или временности как присоединенных событий станут устаревшими. Если присоединенное событие закрывает значение параметра Целевое событие, значение Целевого события удаляется. Опция должна применяться только к линейным событиям.
  • Исключить по 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 будут присоединены к значению параметра in_target_event. Изменения в записи in_target_event не вносятся.
  • RETIRE_OVERLAPSЗаписи in_dataset будут присоединены к значению параметра in_target_event, а любые записи в in_target_event с перекрытиями измерений или временности как присоединенных событий станут устаревшими. Если присоединенное событие закрывает значение параметра in_target_event, значение in_target_event удаляется. Опция должна применяться только к линейным событиям.
  • RETIRE_BY_EVENT_IDЗаписи in_dataset будут присоединены к значению параметра in_target_event, а любые записи в in_target_event с одинаковыми Event ID и перекрытиями временности как присоединенные события станут устаревшими. Если присоединенное событие закрывает значение параметра in_target_event с таким же Event ID, значение in_target_event удаляется.
  • REPLACE_BY_EVENT_IDЗаписи in_dataset будут присоединены к значению параметра in_target_event, а любые записи в in_target_event с одинаковыми 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

# Import arcpy module
import arcpy

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

# 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)

# Check in license
arcpy.CheckInExtension('LocationReferencing')
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
  • Standard: Обязательно ArcGIS Location Referencing
  • Advanced: Обязательно ArcGIS Location Referencing

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