Activer le suivi de l’éditeur (Gestion des données)

Synthèse

Active le suivi d’éditeur pour une classe d’entités, une table, un jeu de classes d’entités ou une classe de relations d’une géodatabase.

Utilisation

  • Si le jeu de données en entrée est issu d’une géodatabase d’entreprise, il doit provenir d’une connexion à une base de données établie en tant que propriétaire des données.

  • Cet outil peut ajouter des champs s’ils n’existent pas. S’il existe des champs, ils doivent être du type de données approprié. Les valeurs spécifiées pour les paramètres Creator Field (Champ d’auteur) et Last Editor Field (Champ de dernier éditeur) doivent être des champs de type chaîne ; les valeurs indiquées pour les paramètres Creation Date Field (Champ de date de création) et Last Edit Date Field (Champ de date de dernière modification) doivent être des champs de type date.

  • Le suivi d'éditeur s'applique uniquement aux opérations sur les jeux de données existants. Il ne s’applique pas aux opérations qui créent des jeux de données. Par exemple, si vous copiez un jeu de données pour en créer un nouveau, les valeurs de suivi ne seront pas mises à jour dans le nouveau jeu de données.

  • Vous pouvez enregistrer les dates des mises à jour dans le fuseau horaire de l’emplacement de la base de données ou en temps universel coordonné (UTC).

    Si vous projetez de copier ou de répliquer des données sur plusieurs fuseaux horaires, ou d’effectuer une mise à jour à l’aide d’un service d’entités, utilisez UTC. Puisque les éditeurs peuvent appliquer potentiellement n’importe où des modifications dans le monde, UTC fonctionne bien car il garantit que le temps est enregistré dans un format universellement accepté et cohérent.

    La configuration du suivi de l’éditeur pour utiliser le fuseau horaire de la base de données est recommandée uniquement si vous êtes certain que toutes les mises à jour seront effectuées dans le même fuseau horaire.

  • Vous pouvez exécuter cet outil sur un jeu de données sur lequel le suivi de l’éditeur est activé, mais uniquement pour activer le suivi d’informations supplémentaires. Par exemple, si un jeu de données n’assure que le suivi du créateur et de la date de création, vous pouvez exécuter cet outil pour ajouter le suivi d’éditeur et de la dernière date de mise à jour. Cet outil ne peut ni désactiver le suivi sur un champ, ni transférer le suivi d’un champ à un autre, ni faire passer le suivi de l’heure UTC au fuseau horaire de la base de données. Si vous devez effectuer une de ces opérations, désactivez le suivi d'éditeur sur le jeu de données en entrée avant d'exécuter cet outil.

  • Le suivi d’éditeur ne peut pas être activé sur tous les types de classes de relations. Le suivi d’éditeur peut uniquement être activé sur des classes de relations basées sur des tables (c’est-à-dire, des classes de relations plusieurs vers plusieurs ou attributaires).

  • Si le suivi de l’éditeur est activé sur une classe d’entités comportant des pièces jointes, le suivi de l’éditeur est également activé sur la table de pièces jointes. Si vous ajoutez de nouveaux champs, ces derniers sont également ajoutés à la table de pièces jointes. Si vous réutilisez des champs existants et que ces champs n’existent pas dans la table de pièces jointes, ils sont ajoutés.

  • Dans ArcGIS Pro 2.4, les jeux de classes d’entités sont pris en charge en tant qu’entrée pour cet outil. Si vous ajoutez de nouveaux champs à chaque élément du jeu de classes d’entités, les champs sont nommés par défaut created_user, created_date, last_edited_user et last_edited_date. Si vous utilisez des champs existants, ceux-ci doivent déjà exister pour tous les éléments dans le jeu de classes d’entités.

Paramètres

ÉtiquetteExplicationType de données
Jeu de données en entrée

Classe d’entités, table, jeu de classes d’entités ou classe de relations dans lequel le suivi de l’éditeur est activé.

Dataset; Topology; Network Dataset
Champ d’auteur
(Facultatif)

Nom du champ qui stocke les noms des utilisateurs ayant créé des entités ou des enregistrements. Si ce champ existe, il doit être de type Chaîne.

String
Creation Date Field (Champ de date de création)
(Facultatif)

Nom du champ qui stocke la date de création des entités ou des enregistrements. Si ce champ existe, il doit être de type Date.

String
Last Editor Field (Champ de dernier éditeur)
(Facultatif)

Nom du champ qui stockera les noms des utilisateurs qui ont modifié pour la dernière fois des entités ou des enregistrements. Si ce champ existe, il doit être de type Chaîne.

String
Last Edit Date Field (Champ de date de dernière modification)
(Facultatif)

Nom du champ qui stocke la date de la dernière modification des entités ou des enregistrements. Si ce champ existe, il doit être de type Date.

String
Ajouter des champs
(Facultatif)

Indique s’il faut ajouter des champs s’ils n’existent pas.

  • Désactivé : aucun champ n'est ajouté. Les champs spécifiés doivent exister dans la valeur du paramètre Input Dataset (Jeu de données en entrée). Il s’agit de l’option par défaut.
  • Activé - des champs sont ajoutés s’ils n’existent pas. Vous devez spécifier les noms des champs à ajouter dans les paramètres Creator Field (Champ d’auteur), Creation Date Field (Champ de date de création), Last Editor Field (Champ de dernier éditeur) et Last Edit Date Field (Champ de date de dernière modification).
Boolean
Enregistrer les dates en
(Facultatif)

Spécifie le format temporel dans lequel la date de création et la date de dernière modification sont enregistrées.

  • UTC (Temps universel coordonné)Les dates sont enregistrées en UTC. Il s’agit de l’option par défaut.
  • Fuseau horaire de la base de donnéesLes dates sont enregistrées dans le fuseau horaire dans lequel la base de données se trouve.
String

Sortie obtenue

ÉtiquetteExplicationType de données
Jeu de données en entrée modifié

Jeu de données en entrée modifié.

Dataset

arcpy.management.EnableEditorTracking(in_dataset, {creator_field}, {creation_date_field}, {last_editor_field}, {last_edit_date_field}, {add_fields}, {record_dates_in})
NomExplicationType de données
in_dataset

Classe d’entités, table, jeu de classes d’entités ou classe de relations dans lequel le suivi de l’éditeur est activé.

Dataset; Topology; Network Dataset
creator_field
(Facultatif)

Nom du champ qui stocke les noms des utilisateurs ayant créé des entités ou des enregistrements. Si ce champ existe, il doit être de type Chaîne.

String
creation_date_field
(Facultatif)

Nom du champ qui stocke la date de création des entités ou des enregistrements. Si ce champ existe, il doit être de type Date.

String
last_editor_field
(Facultatif)

Nom du champ qui stockera les noms des utilisateurs qui ont modifié pour la dernière fois des entités ou des enregistrements. Si ce champ existe, il doit être de type Chaîne.

String
last_edit_date_field
(Facultatif)

Nom du champ qui stocke la date de la dernière modification des entités ou des enregistrements. Si ce champ existe, il doit être de type Date.

String
add_fields
(Facultatif)

Indique s’il faut ajouter des champs s’ils n’existent pas.

  • NO_ADD_FIELDSAucun champ n'est ajouté. Les champs spécifiés doivent exister dans la valeur du paramètre in_dataset. Il s’agit de l’option par défaut.
  • ADD_FIELDSDes champs sont ajoutés s’ils n’existent pas. Vous devez spécifier les noms des champs à ajouter dans les paramètres creator_field, creation_date_field, last_editor_field et last_edit_date_field.
Boolean
record_dates_in
(Facultatif)

Spécifie le format temporel dans lequel la date de création et la date de dernière modification sont enregistrées.

  • UTCLes dates sont enregistrées en UTC. Il s’agit de l’option par défaut.
  • DATABASE_TIMELes dates sont enregistrées dans le fuseau horaire dans lequel la base de données se trouve.
String

Sortie obtenue

NomExplicationType de données
out_dataset

Jeu de données en entrée modifié.

Dataset

Exemple de code

Exemple d'utilisation de l'outil EnableEditorTracking (fenêtre Python)

Le script ci-dessous pour la fenêtre Python illustre l’utilisation de la fonction EnableEditorTracking en mode immédiat.

import arcpy
arcpy.EnableEditorTracking_management("d:/RC.gdb/Buildings","Creator","Created","Editor","Edited","ADD_FIELDS","UTC")
Exemple 2 d'utilisation de l'outil EnableEditorTracking (script autonome)

Le script autonome suivant explique comment activer le suivi d'éditeur sur toutes les classes d'entités et tables d'une géodatabase.

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

Environnements

Cet outil n’utilise pas d’environnement de géotraitement.