Ajouter (Gestion des données)
Récapitulatif
Ajoute plusieurs jeux de données en entrée à un jeu de données cible existant. Les jeux de données en entrée peuvent être des classes d'entités de type point, ligne ou surfaciques, des tables, des rasters, des catalogues d'images, des classes d'entités annotations ou des classes d'entités de dimensions.
Pour combiner des jeux de données en entrée dans un nouveau jeu de données en sortie, utilisez l'outil Combiner.
Illustration
Utilisation
-
Utilisez cet outil pour ajouter de nouvelles entités ou d'autres données de plusieurs jeux de données dans un jeu de données existant. Cet outil permet d'ajouter des classes d'entités de type point, ligne ou surfaciques, des tables, des rasters, des catalogues d'images, des classes d'entités annotations ou des classes d'entités de dimensions dans un jeu de données existant du même type. Par exemple, plusieurs tables peuvent être ajoutées à une table existante, ou plusieurs rasters peuvent être ajoutés à un jeu de données raster existant, mais une classe d'entités lignes ne peut pas être ajoutée à une classe d'entités points.
-
L'utilitaire Appariement des champs de l'outil Ajouter permet de contrôler comment les informations attributaires des champs du jeu de données en entrée sont transférées dans le jeu de données cible. La zone Appariement des champs peut être utilisée uniquement si le Type de structure NO_TEST est spécifié.
-
Cet outil ne planarise pas les entités lorsqu'elles sont ajoutées au jeu de données cible. Toutes les entités de la classe d'entités en entrée et de la classe d'entités cible restent intactes après l'ajout, même en cas de superposition des entités. Pour combiner, ou planariser les géométries d'entité, utilisez l'outil Agréger.
-
Si le Type de structure TEST est spécifié, la structure (définitions de champ) des jeux de données en entrée doit correspondre à celle du jeu de données cible pour que les entités soient ajoutées. Si le Type de structure NO_TEST est spécifié, il n'est pas nécessaire que la structure de jeu de données en entrée (définitions de champ) corresponde au jeu de données cible. Toutefois, les champs des jeux de données en entrée qui ne correspondent pas aux champs du jeu de données cible ne seront pas appariés au jeu de données cible à moins que l'appariement soit explicitement défini dans la zone Appariement des champs.
-
Comme les données des jeux de données en entrée sont écrites dans un jeu de données cible existant qui a une structure (définitions de champ) prédéfinie, la zone Appariement des champs ne permet pas l'ajout ou la suppression de champs dans le jeu de données cible.
-
Si les références spatiales d'une classe d'entités en entrée et cible ne correspondent pas, l'outil Ajouter projettera les entités dans la classe d'entités en entrée dans le système de coordonnées utilisé par la classe d'entités cible.
-
Cet outil n'effectue pas d'ajustement des tronçons - aucun ajustement n'est effectué sur la géométrie des entités.
-
Des couches peuvent être utilisées en tant que Jeux de données en entrée. Si une couche a une sélection, seuls les enregistrements sélectionnés (entités ou lignes de table) sont utilisés par l'outil Ajouter.
-
Cet outil ne peut pas utiliser plusieurs couches en entrée portant le même nom. Bien qu'ArcMap autorise l'affichage de couches portant le même nom, ces couches ne peuvent pas être utilisées. Pour contourner ce problème, utilisez le bouton de navigation de la boîte de dialogue de l'outil pour rechercher les chemins complets de chacun des Jeux de données en entrée.
-
Pour utiliser le paramètre Sous-type, un champ de sous-type doit être défini et des codes de sous-type doivent être affectés pour le jeu de données cible. Dans le paramètre Sous-type, indiquez une description de sous-type pour affecter ce sous-type à toutes les nouvelles données ajoutées au jeu de données cible.
Syntaxe
Paramètre | Explication | Type de données |
inputs [inputs,...] |
Jeux de données en entrée dont les données seront ajoutées dans le jeu de données cible. Les jeux de données en entrée peuvent être des classes d'entités de type point, ligne ou surfaciques, des tables, des rasters, des catalogues d'images, des classes d'entités annotations ou des classes d'entités de dimensions. Chaque jeu de données en entrée doit correspondre au type de données du jeu de données cible. | Table View; Raster Layer |
target |
Jeu de données existant auquel les données des jeux de données en entrée seront ajoutées. Chaque jeu de données en entrée doit correspondre au type de données du jeu de données cible. | Table View; Raster Layer |
schema_type (Facultatif) |
Spécifie si la structure (définitions de champ) des jeux de données en entrée doit correspondre à la structure du jeu de données cible pour que des données soient ajoutées.
| String |
field_mapping (Facultatif) |
Contrôle comment les informations attributaires dans les champs du jeu de données en entrée sont transférées au jeu de données cible. Ce paramètre peut être utilisé uniquement si le Type de structure NO_TEST est spécifié. Comme les données des jeux de données en entrée sont ajoutés dans un jeu de données cible existant qui a une structure (définitions de champ) prédéfinie, les champs ne peuvent pas être ajoutés ou supprimés depuis le jeu de données cible. Les règles de combinaison permettent de spécifier la manière dont les valeurs de plusieurs champs en entrée sont combinées en une seule valeur en sortie. Vous pouvez utiliser plusieurs règles de combinaison :
| Field Mapping |
subtype (Facultatif) |
Description de sous-type pour affecter ce sous-type à toutes les nouvelles données ajoutées au jeu de données cible. | String |
Exemple de code
Le script de fenêtre Python suivant montre comment utiliser l'outil Append en mode immédiat.
import arcpy
arcpy.env.workspace = "C:/data/"
arcpy.Append_management(["north.shp", "south.shp", "east.shp", "west.shp"], "wholecity.shp", "TEST","","")
Le script de fenêtre Python ci-dessous illustre l'utilisation de l'outil Append.
# Name: Append.py
# Description: Use the Append tool to combine several shapefiles
# import system modules
import arcpy, os
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
outLocation = "C:/Output"
emptyFC = "MA_towns.shp"
schemaType = "NO_TEST"
fieldMappings = ""
subtype = ""
try:
# Process: Create a new empty feature class to append shapefiles into
arcpy.CreateFeatureclass_management(outLocation, emptyFC, "POLYGON", "amherst.shp")
# All polygon FCs in the workspace are MA town shapefiles, we want to append these to the empty FC
fcList = arcpy.ListFeatureClasses("","POLYGON")
# list will resemble ["amherst.shp", "hadley.shp", "pelham.shp", "coldspring.shp"]
# Process: Append the feature classes into the empty feature class
arcpy.Append_management(fcList, outLocation + os.sep + emptyFC, schemaType, fieldMappings, subtype)
except:
# If an error occurred while running a tool print the messages
print arcpy.GetMessages()