Récapitulatif
Compare deux tables ou vues tabulaires et renvoie les résultats de la comparaison. Cet outil peut signaler les différences et similitudes présentes sur le plan des valeurs tabulaires et des définitions de champs.
Utilisation
Cet outil renvoie des messages affichant le résultat de la comparaison. Par défaut, il s'arrête dès qu'il rencontre une première erreur de comparaison. Pour signaler toutes les différences, activez le paramètre Continuer la comparaison.
Vous pouvez spécifier plusieurs champs de tri. La Table de base en entrée et la Table test en entrée sont triées toutes les deux selon les champs que vous spécifiez. Le premier champ est trié, puis le second, et ainsi de suite, dans l'ordre croissant. Le fait de spécifier un champ de tri commun à la table de base et à la table test vous garantit de comparer la même ligne de chaque jeu de données en entrée.
Par défaut, le type de comparaison est défini sur ALL. Cela signifie toutes les propriétés des tables qui sont comparées seront activées, y compris les propriétés du champ et les attributs. Toutefois, vous pouvez choisir un type de comparaison différent pour activer uniquement des propriétés spécifiques des tables comparées.
L'option Ignorer les options permet d'omettre certaines propriétés dans la comparaison. Ces propriétés comprennent les propriétés d'extension, les sous-types et les classes de relations.
Lorsque vous omettez des champs qui ne sont pas inclus dans le compte des champs de la comparaison, les définitions de champ et les valeurs tabulaires pour ces champs sont ignorées.
Les tolérances d'attribut peuvent uniquement être spécifiées pour les champs de type numérique.
Le Fichier de comparaison en sortie contiendra toutes les similitudes et toutes les différences trouvées entre la Table de base en entrée et la Table test en entrée. Il s'agit d'un fichier texte délimité par des virgules qui peut être visualisé et utilisé comme table dans ArcGIS. Par exemple, cette table peut être interrogée pour obtenir toutes les valeurs ObjectID de toutes les lignes qui sont différentes.
Dans Python, vous pouvez obtenir le statut de cet outil à l'aide de la commande result.getOutput(1). La valeur est 'true' si aucune différence n'est trouvée et 'false' dans le cas contraire.
Pour en savoir plus sur l'utilisation des outils dans Python
Syntaxe
TableCompare_management (in_base_table, in_test_table, sort_field, {compare_type}, {ignore_options}, {attribute_tolerances}, {omit_field}, {continue_compare}, {out_compare_file})
Paramètre | Explication | Type de données |
in_base_table | La Table de base en entrée est comparée à la Table test en entrée. La Table de base en entrée est celle qui contient vos données tabulaires déclarées valides. Les définitions de champs et les valeurs d'attributs de cette table de base sont correctes. | Table View; Raster Layer |
in_test_table | La Table test en entrée est comparée à la Table de base en entrée. La Table test en entrée contient vos données modifiées par l'ajout de nouveaux champs, de nouveaux enregistrements ou de nouvelles valeurs attributaires. | Table View ; Raster Layer |
sort_field [sort_field,...] | Le ou les champs utilisés pour trier les enregistrements de la Table de base en entrée et de la Table test en entrée. Les enregistrements sont triés dans l'ordre croissant. Le fait de spécifier un champ de tri commun à la Table de base en entrée et à la Table test en entrée vous garantit de comparer la même ligne de chaque jeu de données en entrée. | Value Table |
compare_type (Facultatif) | Le type de comparaison. ALL est le format par défaut. Cette option par défaut compare toutes les propriétés des tables concernées.
| String |
ignore_options (Facultatif) | Ces propriétés ne seront pas comparées lors du processus de comparaison.
| String |
attribute_tolerances [[Field, {Tolerance}],...] (Facultatif) | Valeur numérique déterminant la plage dans laquelle les valeurs attributaires sont considérées comme égales. Ce paramètre s'applique uniquement aux champs numériques. | Value Table |
omit_field [omit_field,...] (Facultatif) | Le ou les champs à omettre lors de la comparaison. Les définitions et valeurs tabulaires de ces champs seront ignorées. | String |
continue_compare (Facultatif) | Indique s'il faut comparer toutes les propriétés dès lors qu'une première erreur de correspondance est rencontrée.
| Boolean |
out_compare_file (Facultatif) | Ce fichier contiendra toutes les similitudes et différences entre la table de base en entrée et la table test en entrée. Il s'agit d'un fichier texte délimité par des virgules qui peut être visualisé et utilisé comme table dans ArcGIS. | File |
Exemple de code
Exemple d'utilisation de l'outil TableCompare (fenêtre Python)
Le script de fenêtre Python ci-dessous illustre l'utilisation de la fonction TableCompare dans une table en mode immédiat.
import arcpy
arcpy.TableCompare_management(r'c:\Workspace\wells.dbf', r'c:\Workspace\wells_new.dbf', 'WELL_ID', 'ALL', 'IGNORE_EXTENSION_PROPERTIES', 'WELL_DEPTH 0.001', '#', 'CONTINUE_COMPARE', r'C:\Workspace\well_compare.txt' )
Exemple d'utilisation de la fonction TableCompare (script autonome)
Exemple d'utilisation de la fonction TableCompare dans un script autonome.
# Name: TableCompare.py
# Description: Compare two dBASE tables and return comparison result.
# import system modules
import arcpy
# Set local variables
base_table= "C:/Workspace/wells.dbf"
test_table = "C:/Workspace/wells_new.dbf"
sort_field = "WELL_ID"
compare_type = "ALL"
ignore_option = "IGNORE_EXTENSION_PROPERTIES"
attribute_tolerance = "WELL_DEPTH 0.001"
omit_field = "#"
continue_compare = "CONTINUE_COMPARE"
compare_file = "C:/Workspace/well_compare.txt"
# Process: FeatureCompare
compare_result = arcpy.TableCompare_management(base_table, test_table, sort_field, compare_type, ignore_option, attribute_tolerance, omit_field, continue_compare, compare_file)
Environnements
Informations de licence
- ArcGIS for Desktop Basic: Oui
- ArcGIS for Desktop Standard: Oui
- ArcGIS for Desktop Advanced: Oui