Zusammenfassung
Packt mindestens einen Layer und alle referenzierten Datenquellen zur Erstellung einer einzelnen komprimierten .lpk-Datei.
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.
Damit das Werkzeug ausgeführt werden kann, müssen alle Eingabe-Layer eine Beschreibung aufweisen. Um eine Beschreibung hinzuzufügen, klicken Sie mit der rechten Maustaste auf den Layer, dann auf Eigenschaften und geben Sie eine Beschreibung ein.
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.
Layer-Pakete sind mit ArcGIS 10 und ArcGIS 9.3.1 abwärtskompatibel. Wenn Sie ein Layer-Paket erstellen möchten, das mit früheren Versionen kompatibel ist, verwenden Sie den Parameter Paketversion. Beachten Sie, dass aufgrund von Aktualisierungen und der verbesserten Funktionalität einiger Geodatabase-Elemente nicht alle Layer-Pakete abwärtskompatibel sind.
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.
Wenn Sie ein Layer-Paket entpacken möchten, ziehen Sie die .lpk-Datei in ArcMap oder klicken Sie mit der rechten Maustaste auf die .lpk-Datei und danach auf Entpacken. Alternativ können Sie das Werkzeug Paket extrahieren verwenden und einen Ausgabeordner angeben.
Mit Entpacken werden Pakete standardmäßig immer in das Benutzerprofil extrahiert und zwar unter:
- XP – C:\Documents and Settings\<username>\My Documents\ArcGIS\Packages
- Vista and Windows 7 – C:\Users\<username>\Documents\ArcGIS\Packages
Wenn Sie das Standardverzeichnis ändern möchten, in dem die Pakete entpackt werden, öffnen Sie im Menü Anpassen das Dialogfeld ArcMap-Optionen. Suchen Sie auf der Registerkarte Freigabe den Abschnitt Paket erstellen, aktivieren Sie die Option Benutzerdefinierten Speicherort verwenden, und navigieren Sie zum neuen Speicherort.
Syntax
PackageLayer_management (in_layer, output_file, {convert_data}, {convert_arcsde_data}, {extent}, {apply_extent_to_arcsde}, {schema_only}, {version}, {additional_files}, {summary}, {tags})
Parameter | Erläuterung | Datentyp |
in_layer [in_layer,...] | Die zu packenden Layer. | Layer |
output_file | Speicherort und Name der zu erstellenden Ausgabe-Paketdatei (.lpk). | File |
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 |
version [version,...] (optional) | Gibt die Version der Geodatabases an, die im resultierenden Paket erstellt werden. Durch Angabe einer Version können Pakete in früheren Versionen von ArcGIS freigegeben werden. Zudem wird eine Abwärtskompatibilität unterstützt.
| String |
additional_files (optional) | Fügt zusätzliche Dateien zu einem Paket hinzu. Zusätzliche Dateien wie .doc, .txt, .pdf usw. werden verwendet, um mehr Informationen zum Inhalt und Zweck des Pakets anzugeben. | File |
summary (optional) | Fügt den Eigenschaften des Pakets Zusammenfassungsinformationen hinzu. | String |
tags (optional) | Fügt den Eigenschaften des Pakets Tag-Informationen hinzu. Mehrere Tags können hinzugefügt oder durch ein Komma oder ein Semikolon getrennt werden. | String |
Codebeispiel
PackageLayer - Beispiel 1 (Python-Fenster)
Das folgende Python-Skript veranschaulicht, wie Sie das Werkzeug "PackageLayer" im Python-Fenster verwenden.
import arcpy
arcpy.env.workspace = "C:/arcgis/ArcTutor/BuildingaGeodatabase/Layers"
arcpy.PackageLayer_management('Parcels.lyr', 'Parcel.lpk', "PRESERVE", "CONVERT_ARCSDE", "#", "ALL", "AlL", "CURRENT", "C:/readme.docx","Summary of package","parcel,montgomery")
PackageLayer - Beispiel 2 (eigenständiges Python-Skript)
Sucht und erstellt einzelne Layer-Pakete für alle Layer-Dateien, die sich in einem angegebenen Ordner befinden.
# Name: PackageLayerEx1.py
# Description: Find all the layer files that reside in a specified folder and create a layer package 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 layer package using the same name as the original layer file.
for lyr in arcpy.ListFiles("*.lyr"):
print ("Packaging {0}".format(lyr))
arcpy.PackageLayer_management(lyr, os.path.splitext(lyr)[0] + '.lpk', "PRESERVE", "CONVERT_ARCSDE", "#", "ALL", "ALL", "CURRENT", "#","Summary of package","tag1, tag2")
PackageLayer - Beispiel 3 (eigenständiges Python-Skript)
Sucht und erstellt ein einzelnes Layer-Paket für alle Layer-Dateien, die sich in einem angegebenen Ordner befinden.
# Name: PackageLayerEx2.py
# Description: Find all the layer files that reside in a specified folder and create a single layer package that will contain all layers found.
# import system modules
import os
import arcpy
# Set environment settings
arcpy.env.overwriteOutput = True
arcpy.env.workspace = "C:/arcgis/ArcTutor/BuildingaGeodatabase/Layers"
# Find all the layer files (.lyr) in a workspace and create a single layer package.
lyrs = arcpy.ListFiles("*.lyr")
arcpy.PackageLayer_management(lyrs, 'all_layers.lpk', "PRESERVE", "CONVERT_ARCSDE", "#", "ALL", "ALL", "CURRENT", "#","Summary of package","tag1,tag2")
Umgebungen
Lizenzinformationen
- ArcGIS Desktop Basic: Ja
- ArcGIS Desktop Standard: Ja
- ArcGIS Desktop Advanced: Ja