Zusammenfassung
Packt ein oder mehrere Geoverarbeitungsergebnisse, einschließlich aller Werkzeuge sowie Eingabe- und Ausgabe-Datasets, in eine einzelne komprimierte Datei (.gpk).
Verwendung
Wenn ein Werkzeug ausgeführt wird, werden Informationen über die Ausführung als Ergebnis in das Fenster Ergebnisse geschrieben. Ergebnisse können mithilfe von Drag & Drop direkt aus dem Fenster Ergebnisse als Eingabe hinzugefügt werden. Ebenso können Ergebnisse, die als Ergebnisdatei (.rlt) gespeichert wurden, ebenfalls als Eingabe hinzugefügt werden.
Wenn ArcGIS Runtime unterstützen aktiviert ist (arcgisruntime="RUNTIME" in Python), kann das erstellte Geoverarbeitungspaket in der ArcGIS Runtime SDK-Umgebung verwendet werden. Zur Unterstützung der Runtime-Umgebung
- Alle Datenquellen, die keine Geodatabase-Datenquellen darstellen, werden in eine File-Geodatabase konvertiert.
- In einer neuen Toolbox, die für die Veröffentlichung konfiguriert ist, wird eine Kopie des Werkzeugs erstellt, das gepackt wird.
Wenn Daten in File-Geodatabase konvertieren aktiviert ist (convert_data = 'CONVERT' in Python), passiert Folgendes:
- 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. Um Enterprise-Geodatabase-Daten in eine File-Geodatabase zu konvertieren, aktivieren Sie Enterprise-Geodatabase-Daten einbeziehen statt Daten zu referenzieren.
Wenn Daten in File-Geodatabase konvertieren nicht aktiviert ist (convert_data = 'PRESERVE' in Python), passiert Folgendes:
- Das Datenquellenformat der Eingabe-Layer bleibt erhalten. Zu den Ausnahmen zählen Formate wie Personal-Geodatabase-Daten (.mdb), VPF-Daten sowie Tabellen, die auf Excel-Tabellen oder OLEDB-Verbindungen basieren. Diese Formate werden in 64x-Umgebungen nicht unterstützt und stets in eine File-Geodatabase umgewandelt.
- 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, 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. Standardmäßig werden verbundene oder zugehörige Datenquellen vollständig konsolidiert. In Abhängigkeit vom Parameter Zugehörige Zeilen auswählen kann sich die Konsolidierung aber auch nach der im Parameter Ausdehnung angegebenen Ausdehnung richten.
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 Packen eines Layers basierend auf diesen Typen von Datasets werden die beteiligten Datasets ebenfalls konsolidiert oder gepackt.
Wenn der Parameter Nur Schema aktiviert ist, 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 gepackt. 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.
Aus einem fehlerhaften Ergebnis kann kein Paket erstellt werden. Sie können allerdings das Werkzeug Ergebnis konsolidieren verwenden, um einen Ordner mit allen Daten und Werkzeugen zu erstellen, die vom fehlerhaften Ergebnis verwendet werden.
Wenn Sie ein Geoverarbeitungspaket entpacken möchten, ziehen Sie die .gpk-Datei in ArcMap, oder klicken Sie mit der rechten Maustaste auf die .gpk-Datei, und wählen Sie Entpacken aus. Alternativ können Sie das Werkzeug Paket extrahieren verwenden und einen Ausgabeordner angeben.
Standardmäßig werden Pakete in Ihr Benutzerprofil extrahiert.
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
arcpy.management.PackageResult(in_result, output_file, {convert_data}, {convert_arcsde_data}, {extent}, {apply_extent_to_arcsde}, {schema_only}, {arcgisruntime}, {additional_files}, {summary}, {tags}, {version})
Parameter | Erklärung | Datentyp |
in_result [in_result,...] | Das Ergebnis, das gepackt wird. Die Eingabe kann ein Ergebnis sein, das per Drag & Drop direkt aus dem Fenster Ergebnisse oder durch Navigieren zu einer Ergebnisdatei (.rlt) hinzugefügt wird. | File; String |
output_file | Name und Speicherort der Ausgabepaketdatei (.gpk). | File |
convert_data (optional) | Gibt an, ob Eingabe-Layer in eine File-Geodatabase konvertiert oder im ursprünglichen Format beibehalten werden.
| Boolean |
convert_arcsde_data (optional) | Gibt an, ob Eingabe-Geodatabase-Layer in eine File-Geodatabase konvertiert oder im ursprünglichen Format beibehalten werden.
| Boolean |
extent (optional) | Gibt 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) | Gibt an, 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 von Eingabe- und Ausgabe-Datasets konsolidiert oder gepackt wird.
| Boolean |
arcgisruntime (optional) | Gibt an, ob das Paket ArcGIS Runtime unterstützt. Damit ArcGIS Runtime unterstützt wird, werden alle Datenquellen in eine File-Geodatabase konvertiert.
| Boolean |
additional_files [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 |
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 |
Codebeispiel
PackageResult - Beispiel 1 (Python-Fenster)
Das folgende Python-Skript veranschaulicht, wie Sie das Werkzeug PackageResult im Python-Fenster verwenden.
import arcpy
arcpy.env.workspace = "C:/ResultFiles"
arcpy.PackageResult_management('Parcel.rlt', 'Parcel.gpk', "PRESERVE",
"CONVERT_ARCSDE", "#", "ALL", "ALL",
"DESKTOP", r"C:\docs\readme.txt",
"Summary text", "Tag1; tag2; tag3")
PackageResult - Beispiel 2 (eigenständiges Python-Skript)
Anhand des folgenden Python-Skripts wird veranschaulicht, wie die Funktion PackageResult über das Fenster "Python" oder über ein Skript mit dem Result-Objekt eines benutzerdefinierten Werkzeugs verwendet wird.
import arcpy
# Import toolbox with custom model inside
arcpy.ImportToolbox("c:/gisworkflows/ParcelTools.tbx")
# Run the tool and assign to a result variable
parcelUpdate = arcpy.ParcelUpdater_ParcelTools("c:/data/parcels.gdb/ward3", "UPDATE")
arcpy.PackageResult_management(parcelUpdate, "c:/gpks/parcelgpk.gpkx",
"PRESERVE", "CONVERT_ARCSDE", "#", "ALL",
"ALL", "DESKTOP", "#", "Summary text", "Tag1")
PackageResult – Beispiel 3 (eigenständiges Skript)
Sucht und erstellt einzelne Geoverarbeitungspakete für alle Ergebnisdateien, die sich in einem angegebenen Ordner befinden.
# Name: PackageResultEx1.py
# Description: Find all the result files that reside in a specified
# folder and create a geoprocessing package for each
# result file.
# import system modules
import os
import arcpy
# Set environment settings
arcpy.env.overwriteOutput = True
arcpy.env.workspace = "C:/ResultFiles"
# Loop through the workspace, find all the result files (.rlt) and
# create a geoprocessing package using the same name as the original
# result file.
for rlt in arcpy.ListFiles("*.rlt"):
print("Packaging " + rlt)
arcpy.PackageResult_management(rlt, os.path.splitext(lyr)[0] + '.gpk',
"PRESERVE", "CONVERT_ARCSDE", "#", "ALL",
"ALL", "DESKTOP", r"C:\docs\readme.txt",
"Summary text", "Tag1; tag2; tag3")
PackageResult – Beispiel 4 (eigenständiges Skript)
Sucht und erstellt ein einziges Geoverarbeitungspaket für alle Ergebnisdateien, die sich in einem angegebenen Ordner befinden.
# Name: PackageResultEx2.py
# Description: Find all the result files that reside in a specified
# folder and create a single geoprocessing package.
# import system modules
import arcpy
# Set environment settings
arcpy.env.overwriteOutput = True
arcpy.env.workspace = "C:/ResultFiles"
# Find all the result files (.rlt) in a workspace and create a single
# geoprocessing package.
rlts = arcpy.ListFiles("*.rlt")
arcpy.PackageResult_management(rlts, "all_layers.gpk", "PRESERVE",
"CONVERT_ARCSDE", "#", "ALL", "ALL", "DESKTOP",
r"C:\docs\readme.txt", "Summary text",
"Tag1; tag2; tag3")
Umgebungen
Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja