Ajouter des événements (Location Referencing)

Disponible avec la licence Location Referencing.

Synthèse

Ajoute des enregistrements d’événement supplémentaires à partir d’une table, d’une couche ou d’une classe d’entités à une classe d’entités d’événement ArcGIS Location Referencing existante.

Remarque :

Lorsque la couche cible est une couche de service d’entités, les résultats de validation de cet outil sont écrits sur un fichier dans le répertoire ArcGIS Server. Par défaut, ce fichier est nettoyé automatiquement au bout de 10 minutes, ce qui risque de ne pas laisser suffisamment de temps pour le traitement de toutes les validations et leur écriture sur le poste de travail exécutant ArcGIS Pro. Pour des charges de données plus importantes, il est recommandé de régler l’âge maximal du fichier sur une heure, au minimum. Vous pouvez mettre à jour un répertoire de serveur dans Manager pour ajuster ce paramètre.

Utilisation

  • Un jeu de données LRS est requis pour exécuter cet outil. Pour créer un jeu de données LRS, ajoutez les couches de point de calibrage, d’axe médian et Redline dans un jeu de classes d’entités, puis exécutez l’outil Modifier LRS avec la géodatabase en entrée.

  • Le paramètre Événement en entrée peut être une table, une couche ou une classe d’entités.

    En savoir plus sur les champs requis par le modèle de données d’événements ArcGIS Pipeline Referencing

    En savoir plus sur les champs requis par le modèle de données d’événements Roads and Highways

  • Le paramètre Événement cible doit être une couche ou une classe d’entités inscrite auprès de Location Referencing.

  • Cet outil prend en charge les entités points et polylignes en entrée. Les types d’entités dans les paramètres de l’événement en entrée et de l’événement cible doivent concorder.

  • Si le paramètre Générer les GUID d’ID d’événement pour les événements chargés est sélectionné et que vous voulez générer des GUID, n’appariez pas le champ EventID dans la section d’appariement de champ ou vérifiez que des enregistrements nuls sont présents dans la colonne EventID des données relatives à l’événement source. Si le champ EventID dans un enregistrement d’événement source est renseigné et que le paramètre Générer les GUID d’ID d’événement pour les événements chargés est sélectionné, la valeur dans le champ EventID de l’enregistrement d’événement source sera chargée dans l’événement cible.

  • Lorsque la prévention des conflits est activée, les conditions suivantes sont prises en charge :

    • Les événements qui doivent être ajoutés acquièrent automatiquement des verrous d’événement, le cas échéant. Si les verrous ne peuvent pas être acquis, l’outil renvoie une erreur et fournit le fichier texte des verrous fautifs.
    • Si vous utilisez la version par défaut, les verrous acquis sont automatiquement libérés une fois l’outil exécuté.
    • Si vous utilisez une version enfant, les verrous acquis conservent le statut de réinjection une fois l’outil exécuté. Vous devez réinjecter ou supprimer la version pour libérer les verrous.
    • Si vous utilisez une version enfant et que l’exécution de l’outil est annulée par interruption, les verrous sont acquis et conservent le statut libérable.

  • Le calibrage d’itinéraire sur des itinéraires discontinus physiquement affecte les événements ajoutés des façons suivantes :

    • Si la différence de calibrage d’itinéraire sur l’interruption n’est pas égale à zéro, les événements ajoutés sont fractionnés aux interruptions.
    • Si la différence de calibrage d’itinéraire sur l’interruption est égale à zéro, les événements ajoutés sont des événements multi-parties.

  • Vous pouvez utiliser un fichier .csv au format ASCII pour ajouter des événement lorsque vous l’utilisez avec un fichier d’initialisation (schema.ini) qui définit les champs séparés par une virgule dans le fichier .csv. Le fichier d’initialisation de la structure doit inclure les éléments suivants :

    • Nom de fichier .csv et format
    • Nom et type de données pour chaque colonne CSV
    • Largeur maximale à utiliser si les données sont de type Texte

    L’exemple d’initialisation suivante déclare le nom de fichier .csv et le format à utiliser, le nom de champ et le type de données à utiliser pour chaque colonne CSV (de gauche à droite) et une largeur maximale pour les champs de texte.

    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

    En savoir plus sur l’ajout d’une table ASCII ou d’une table de fichier texte

  • Cet outil prend en charge la prévention des conflits et tente d’acquérir des verrous et de les transférer.

    En savoir plus sur la prévention des conflits dans ArcGIS Pipeline Referencing ou sur la prévention des conflits dans ArcGIS Roads and Highways.

Paramètres

ÉtiquetteExplicationType de données
Événement en entrée

Enregistrements d’événement source à ajouter.

Table View
Événement cible

Classe d’entités ou couche d’événements Location Referencing à laquelle ajouter les enregistrements d’événement source.

Feature Layer
Appariement des champs

Contrôle le mode de transfert des informations attributaires des champs de la valeur du paramètre Événement en entrée vers la valeur du paramètre Événement cible.

Comme la valeur du paramètre Événement en entrée est ajoutée à un événement existant qui a une structure (définitions de champ) prédéfinie, les champs ne peuvent pas être ajoutés ou supprimés dans le jeu de données cible. Même si vous pouvez définir des règles de combinaison pour chaque champ en sortie, l’outil ignore ces règles.

Field Mappings
Type de charge
(Facultatif)

Indique la manière dont les événements ajoutés avec une superposition de mesure ou de temporalité et possédant des ID d’événement identiques aux enregistrements Événement cible sont chargés dans la classe d’entités d’événement.

  • AjouterLes enregistrements Événement en entrée sont ajoutés à la valeur du paramètre Événement cible. Les enregistrements Événement cible ne sont pas modifiés.
  • Retirer les superpositionsLes enregistrements Événement en entrée sont ajoutés à la valeur du paramètre Événement cible et les enregistrements dans la valeur du paramètre Événement cible avec les mêmes superpositions de mesure ou de temporalité que les événements ajoutés sont retirés. Si l’événement ajouté éclipse la valeur du paramètre Événement cible, la valeur du paramètre Événement cible est supprimée. Cette option doit uniquement être utilisée pour les événements linéaires.
  • Retirer par ID d’événementLes enregistrements Événement en entrée sont ajoutés à la valeur du paramètre Événement cible et les enregistrements dans la valeur du paramètre Événement cible avec les mêmes superpositions de temporalité et d’ID d’événement que les événements ajoutés sont retirés. Si l’événement ajouté éclipse une valeur de paramètre Événement cible avec le même ID d’événement, la valeur du paramètre Événement cible est supprimée.
  • Remplacer par ID d’événementLes enregistrements Événement en entrée sont ajoutés à la valeur du paramètre Événement cible et les enregistrements dans la valeur du paramètre Événement cible avec le même ID d’événement que les événements ajoutés sont supprimés.
String
Générer les GUID d’ID d’événement pour les événements chargés
(Facultatif)

Indique si des ID d’événement seront générés pour les enregistrements Événement en entrée en cours d’ajout. La génération d’ID d’événement sera uniquement appliquée aux enregistrements Événement en entrée avec une valeur nulle pour le champ Event ID.

  • Activé : les ID d’événement pour les enregistrements Événement en entrée en cours d’ajout seront générés.
  • Désactivé : les ID d’événement pour les enregistrements Événement en entrée en cours d’ajout ne seront pas générés. Il s’agit de l’option par défaut.
Boolean
Générer des formes
(Facultatif)

Indique si les formes des enregistrements en cours d’ajout seront régénérées. Ce paramètre est actif uniquement lorsque Événement en entrée est une couche d’entités ou une classe d’entités.

  • Activé : les formes des entités d’événement en entrée seront régénérées. Il s’agit de l’option par défaut.
  • Désactivé : les formes des entités d’événement en entrée ne seront pas régénérées.
Boolean

Sortie obtenue

ÉtiquetteExplicationType de données
Événement cible en sortie

Classe d’entités ou couche d’événements à laquelle les enregistrements d’événement source ont été ajoutés.

Feature Layer
Fichier de résultats en sortie

Fichier texte qui détaille les modifications apportées par l’outil.

Text File

arcpy.locref.AppendEvents(in_dataset, in_target_event, field_mapping, {load_type}, {generate_event_ids}, {generate_shapes})
NomExplicationType de données
in_dataset

Enregistrements d’événement source à ajouter.

Table View
in_target_event

Classe d’entités ou couche d’événements Location Referencing à laquelle ajouter les enregistrements d’événement source.

Feature Layer
field_mapping

Contrôle le mode de transfert des informations attributaires des champs du paramètre in_dataset vers le paramètre in_target_event.

Comme la valeur du paramètre in_dataset est ajoutée à un événement existant qui a une structure (définitions de champ) prédéfinie, les champs ne peuvent pas être ajoutés ou supprimés dans le jeu de données cible. Même si vous pouvez définir des règles de combinaison pour chaque champ en sortie, l’outil ignore ces règles.

La classe FieldMappings peut permettre de définir ce paramètre.

Field Mappings
load_type
(Facultatif)

Indique la manière dont les événements ajoutés avec une superposition de mesure ou de temporalité et possédant des ID d’événement identiques aux enregistrements in_target_event sont chargés dans la classe d’entités d’événement.

  • ADDLes enregistrements in_dataset sont ajoutés à la valeur du paramètre in_target_event. Les enregistrements in_target_event ne sont pas modifiés.
  • RETIRE_OVERLAPSLes enregistrements in_dataset sont ajoutés à la valeur du paramètre in_target_event et les enregistrements dans la valeur du paramètre in_target_event dont la mesure ou la temporalité est superposée comme les événements ajoutés sont retirés. Si l’événement ajouté éclipse la valeur du paramètre in_target_event, la valeur du paramètre in_target_event est supprimée. Cette option doit uniquement être utilisée pour les événements linéaires.
  • RETIRE_BY_EVENT_IDLes enregistrements in_dataset sont ajoutés à la valeur du paramètre in_target_event et les enregistrements dans la valeur du paramètre in_target_event avec les mêmes superpositions d’ID d’événement et de temporalité que les événements ajoutés sont retirés. Si l’événement ajouté éclipse une valeur de paramètre in_target_event avec le même ID d’événement, la valeur du paramètre in_target_event est supprimée.
  • REPLACE_BY_EVENT_IDLes enregistrements in_dataset sont ajoutés à la valeur du paramètre in_target_event et les enregistrements dans la valeur du paramètre in_target_event avec le même ID d’événement que les événements ajoutés sont supprimés.
String
generate_event_ids
(Facultatif)

Indique si des ID d’événement seront générés pour les enregistrements in_dataset en cours d’ajout. La génération d’ID d’événement sera uniquement appliquée aux enregistrements in_dataset avec une valeur nulle pour le champ Event ID.

  • GENERATE_EVENT_IDSLes ID d’événement pour les enregistrements in_dataset en cours d’ajout seront générés.
  • NO_GENERATE_EVENT_IDSLes ID d’événement pour les enregistrements in_dataset en cours d’ajout ne seront pas générés. Il s’agit de l’option par défaut.
Boolean
generate_shapes
(Facultatif)

Indique si les formes des enregistrements en cours d’ajout seront régénérées. Ce paramètre est activé uniquement lorsque in_dataset est une couche d’entités ou une classe d’entités.

  • GENERATE_SHAPESLes formes des entités d’événement en entrée seront régénérées. Il s’agit de l’option par défaut.
  • NO_SHAPESLes formes des entités d’événement en entrée ne seront pas régénérées.
Boolean

Sortie obtenue

NomExplicationType de données
out_target_event

Classe d’entités ou couche d’événements à laquelle les enregistrements d’événement source ont été ajoutés.

Feature Layer
out_details_file

Fichier texte qui détaille les modifications apportées par l’outil.

Text File

Exemple de code

Exemple 1 d’utilisation de la fonction AppendEvents (fenêtre Python)

Illustre l’utilisation de la fonction AppendEvents dans la fenêtre Python pour ajouter des enregistrements d’événement dans une classe d’entités d’événement existante. .

# 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')
Exemple 2 d’utilisation de la fonction AppendEvents (script autonome)

Illustre l’utilisation de la fonction AppendEvents dans un script Python autonome pour ajouter des enregistrements d’événement dans une classe d’entités d’événement existante.

# 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')
Exemple 3 d’utilisation de la fonction AppendEvents (script autonome)

Illustre l’utilisation de la fonction AppendEvents dans un script Python autonome pour ajouter des enregistrements d’événement dans un service d’entités.

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

Informations de licence

  • Basic: Nécessite ArcGIS Location Referencing
  • Standard: Nécessite ArcGIS Location Referencing
  • Advanced: Nécessite ArcGIS Location Referencing

Rubriques connexes