Zusammenfassung
Konsolidiert einen oder mehrere Layer durch Kopieren aller referenzierten Datenquellen in einen einzelnen Ordner.
Verwendung
Eine Warnung wird ausgegeben, wenn dieses Werkzeug auf einen nicht unterstützten Layer-Typ trifft. Der nicht unterstützte Layer wird nicht in die Ausgabe geschrieben.
Beim Konsolidieren oder Packen von Layern werden die erzeugten Layer wie folgt umbenannt: <integer><layername>.lyr (z. B. 0000roads.lyr). Diese Umbenennung ist erforderlich, damit alle Layer, die auf eindeutige Datenquellen verweisen und in ArcMap den gleichen Layer-Name aufweisen, im konsolidierten Ordner eindeutige Layer-Namen aufweisen.
Es gilt Folgendes, wenn Daten in File-Geodatabase konvertieren aktiviert ist (convert_data = 'CONVERT' in Python):
- Für jede eindeutige Datenquelle wird im konsolidierten Ordner oder Paket eine File-Geodatabase erstellt.
- Komprimierte Raster- und Vektorformate werden in eine File-Geodatabase konvertiert, und die Komprimierung geht verloren.
- Enterprise-Geodatabase-Daten werden nicht konsolidiert. Wenn Enterprise-Geodatabase-Daten in eine File-Geodatabase konvertiert werden sollen, aktivieren Sie Enterprise-Geodatabase-Daten einbeziehen statt Daten zu referenzieren.
Es gilt Folgendes, wenn Daten in File-Geodatabase konvertieren convert_data = 'PRESERVE' in Python deaktiviert ist:
- Das Datenquellenformat der Eingabe-Layer bleibt erhalten. Die Ausnahme sind Formate wie Personal-Geodatabase-Daten (.mdb), VPF-Daten und Tabellen, die auf Excel-Tabellenkalkulationen oder OLE-DB-Verbindungen basieren. Diese Formate werden in 64x-Umgebungen nicht unterstützt und werden daher immer in eine File-Geodatabase konvertiert.
- Raster im Format ADRG, CADRG/ECRG, CIB und RPF werden immer in File-Geodatabase-Raster konvertiert. ArcGIS kann diese Formate nicht intern schreiben. Sie werden aus Effizienzgründen immer in File-Geodatabase-Raster konvertiert.
- File-Geodatabases werden in der Ausgabeordnerstruktur in einen versionsspezifischen Ordner konsolidiert, und alle anderen Formate werden in den Ordner commonData konsolidiert.
- Komprimierte Raster- und Vektorformate werden nicht ausgeschnitten. Dies gilt auch, wenn im Parameter Ausdehnung eine Ausdehnung angegeben ist.
Für Layer, die eine Verbindung enthalten oder an einer Beziehungsklasse beteiligt sind, werden alle verbundenen oder verwandten Datenquellen im Ausgabeordner konsolidiert.
Für Feature-Layer wird der Parameter Ausdehnung verwendet, um die Features auszuwählen, die konsolidiert werden sollen. Für Raster-Layer wird der Parameter Ausdehnung verwendet, um die Raster-Datasets auszuschneiden.
Einige Datasets verweisen auf andere Datasets. Sie können z. B. ein Topologie-Dataset verwenden, das auf vier Feature-Classes verweist. Weitere Beispiele für Datasets, die auf andere Datasets verweisen, sind geometrische Netzwerke, Netzwerke und Locators. Beim Konsolidieren oder Verpacken eines Layers basierend auf diesen Typen von Datasets werden die beteiligten Datasets ebenfalls konsolidiert oder verpackt.
Wenn der Parameter Nur Schema aktiviert ist (schema_only = 'SCHEMA_ONLY'), wird nur das Schema der Eingabe- und Ausgabedatenquellen konsolidiert oder gepackt. Ein Schema ist die Struktur oder der Entwurf einer Feature-Class oder -Tabelle, die aus Feld- und Tabellendefinitionen, Eigenschaften des Koordinatensystems, Symbolisierung, Definitionsabfragen usw. besteht. Daten oder Datensätze werden nicht konsolidiert oder gepackt.
Datenquellen, die "Nur Schema" nicht unterstützen, werden nicht konsolidiert oder verpackt. Wenn der Parameter Nur Schema aktiviert ist und das Werkzeug auf einen dafür nicht unterstützten Layer stößt, wird eine Warnmeldung angezeigt. Der Layer wird übersprungen. Falls der einzige angegebene Layer "Nur Schema" nicht unterstützt, tritt beim Ausführen des Werkzeugs ein Fehler auf.
Beim Konsolidieren oder Verpacken von Coverage- oder VPF-Layern wird das gesamte Coverage- oder VPF-Dataset in den konsolidierten Ordner oder das Paket kopiert.
Syntax
ConsolidateLayer_management (in_layer, output_folder, {convert_data}, {convert_arcsde_data}, {extent}, {apply_extent_to_arcsde}, {schema_only})
Parameter | Erläuterung | Datentyp |
in_layer [in_layer,...] | Die Eingabe-Layer, die konsolidiert werden. | Layer |
output_folder | Der Ausgabeordner, der die Layer-Dateien und die konsolidierten Daten enthält. | Folder |
convert_data (optional) | Gibt an, ob Eingabe-Layer in eine File-Geodatabase konvertiert werden oder ihr ursprüngliches Format beibehalten.
| Boolean |
convert_arcsde_data (optional) | Gibt an, ob Eingabe-Geodatabase-Layer in eine File-Geodatabase konvertiert werden oder ihr ursprüngliches Format beibehalten.
| Boolean |
extent (optional) | Geben Sie die Ausdehnung an, indem Sie die Koordinaten im Format X-Min Y-Min X-Max Y-Max manuell im Parameter "Ausdehnung" eingeben. Wenn Sie die Ausdehnung eines bestimmten Layers verwenden möchten, geben Sie den Layer-Namen an.
| Extent |
apply_extent_to_arcsde (optional) | Bestimmt, ob die angegebene Ausdehnung auf alle Layer oder nur auf Enterprise-Geodatabase-Layer angewendet wird.
| Boolean |
schema_only (optional) | Gibt an, ob nur das Schema der Eingabe-Layer konsolidiert oder verpackt wird.
| Boolean |
Codebeispiel
ConsolidateLayer – Beispiel 1 (Python-Fenster)
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie das Werkzeug "ConsolidateLayer" im unmittelbaren Modus verwenden.
import arcpy
arcpy.env.workspace = "C:/arcgis/ArcTutor/BuildingaGeodatabase/Layers"
arcpy.ConsolidateLayer_management('Parcels.lyr', 'Consolidated_folder', "PRESERVE", "CONVERT_ARCSDE", "#", "ALL","ALL")
ConsolidateLayer – Beispiel 2 (eigenständiges Python-Skript)
Sucht und erstellt einzelne konsolidierte Ordner für alle Layer-Dateien eines bestimmten Ordners.
# Name: ConsolidateLayerEx1.py
# Description: Find all the layer files that reside in a specified folder and create a consolidated folder for each layer file.
# import system modules
import os
import arcpy
# Set environment settings
arcpy.env.overwriteOutput = True
arcpy.env.workspace = "C:/arcgis/ArcTutor/BuildingaGeodatabase/Layers"
# Loop through the workspace, find all the layer files (.lyr) and create a consolidated folder for each
# layer file found using the same name as the original layer file.
for lyr in arcpy.ListFiles("*.lyr"):
print("Consolidating " + lyr)
arcpy.ConsolidateLayer_management(lyr, os.path.splitext(lyr)[0], "PRESERVE", "CONVERT_ARCSDE", "#", "ALL", "ALL")
Umgebungen
Lizenzinformationen
- ArcGIS Desktop Basic: Ja
- ArcGIS Desktop Standard: Ja
- ArcGIS Desktop Advanced: Ja