Résumé
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 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 de données.
Cet outil peut ajouter des champs s’ils n'existent pas déjà. S’il existe des champs, ils doivent être du type de données approprié. Creator Field (Champ d’auteur) et Last Editor Field (Champ de dernier éditeur) doivent être des champs de type chaîne, et 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 modifications dans le fuseau horaire 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 de votre suivi d’éditeur pour utiliser le fuseau horaire de la base de données est recommandée uniquement si vous êtes certain que toutes les modifications 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 d’é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 à celle 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).
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.
Syntaxe
arcpy.management.EnableEditorTracking(in_dataset, {creator_field}, {creation_date_field}, {last_editor_field}, {last_edit_date_field}, {add_fields}, {record_dates_in})
Paramètre | Explication | Type de données |
in_dataset | Classe d’entités, table, jeu de classes d’entités ou classe de relations dans lesquels le suivi d’é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 stockera 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 stockera 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.
| Boolean |
record_dates_in (Facultatif) | Format temporel dans lequel la date de création et la date de dernière modification vont être enregistrées. Le format par défaut est UTC.
| String |
Sortie dérivée
Nom | Explication | Type de données |
out_dataset | Jeu de données en entrée modifié. | Jeu de données |
Exemple de code
Le script de fenêtre Python suivant montre comment utiliser l'outil EnableEditorTracking en mode immédiat.
import arcpy
arcpy.EnableEditorTracking_management("d:/RC.gdb/Buildings","Creator","Created","Editor","Edited","ADD_FIELDS","UTC")
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
Informations de licence
- Basic: Oui
- Standard: Oui
- Advanced: Oui
Rubriques connexes
Vous avez un commentaire à formuler concernant cette rubrique ?