Zusammenfassung
Konsolidiert ein Projekt (.aprx-Datei) sowie referenzierte Karten und Daten in einen angegebenen Ausgabeordner.
Verwendung
Alle Elemente eines Projekts werden konsolidiert und in der .aprx-Datei aufgeführt, darunter Karten, die von Layern referenzierten Daten, Toolboxes, Styles, Layouts und Verbindungen, sofern zutreffend.
Mit dem Parameter Außerhalb der Organisation freigeben wird gesteuert, ob die Daten in dem Ordner konsolidiert werden.
- Deaktiviert: Bei dieser Einstellung werden Pakete für die interne Umgebung erstellt, die Daten werden also nicht konsolidiert. UNC-Pfade und Enterprise-Geodatabase-Layer, Styles und Verbindungen werden weiterhin in Ihrem konsolidierten Projekt referenziert. (Legen Sie in Python den Parameter sharing_interal auf INTERNAL fest.)
- Aktiviert: Bei dieser Einstellung werden alle erforderlichen Datenquellen für das Paket in den konsolidierten Ordner kopiert. (Legen Sie in Python den Parameter sharing_interal auf EXTERNAL fest.) Elemente, die außerhalb Ihres Netzwerks nicht verfügbar sind, z. B. Enterprise-Geodatabase-Verbindungen und Pfade zu UNC-Ordnern, werden nicht einbezogen. Wenn Daten aus diesen Quellen jedoch in eine Karte oder in ein Layout im Projekt einbezogen werden, werden sie in den Ausgabeordner kopiert.
Hinweis:
Daten und Karten werden konsolidiert, wenn das Projekt diese unabhängig von der Parametereinstellung Außerhalb der Organisation freigeben über einen lokalen Pfad wie c:\gisdata\landrecords.gdb\ referenziert.
Vorlagen können mit dem Parameter Als Vorlage konsolidieren erstellt werden. Eine Projektvorlage unterstützt Sie bei der Erstellung eines neuen Projekts, indem Layer, Karten, Daten und die erforderlichen Verbindungen definiert werden.
Toolboxes, die Teil eines Projekts sind, werden mit dem Werkzeug Analysewerkzeuge für Pro analysiert, bevor die Konsolidierungs-Routinen ausgeführt werden. Identifizierte Fehler beenden den Konsolidierungsprozess. Sie müssen diese Fehler beheben oder das Werkzeug aus dem Projekt entfernen. Für das Werkzeug erforderliche Eingabedaten werden unabhängig davon, ob die Daten Teil einer Karte im Projekt sind, konsolidiert.
Verbindungen wie Ordner, Server, Datenbank, Workflow und Data Reviewer werden lediglich in ein internes Paket eingefügt. Diese Elemente werden entfernt, wenn das Paket erstellt und außerhalb der Organisation freigegeben wird.
Elemente wie Anlagen, Styles und Tasks werden für interne Pakete referenziert, wenn sie Teil des Projekts von einem UNC-Pfad sind. Diese Elemente werden kopiert und in allen anderen Situationen gepackt.
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.
Syntax
arcpy.management.ConsolidateProject(in_project, output_folder, {sharing_internal}, {extent}, {apply_extent_to_enterprise_geo}, {package_as_template}, {preserve_sqlite}, {version}, {select_related_rows})
Parameter | Erklärung | Datentyp |
in_project | Das Projekt (Datei vom Typ .aprx), das konsolidiert werden soll. | File |
output_folder | Der Ausgabeordner, der das konsolidierte Projekt und die konsolidierten Daten enthält. Wenn der angegebene Ordner nicht vorhanden ist, wird ein neuer Ordner erstellt. | Folder |
sharing_internal (optional) | Legt fest, ob das Projekt mit allen Daten im Ausgabeordner konsolidiert wird, damit es extern freigegeben werden kann.
| Boolean |
extent (optional) | Gibt die Ausdehnung an, die zum Auswählen oder Ausschneiden von Features verwendet werden soll.
| Extent |
apply_extent_to_enterprise_geo (optional) | Gibt an, ob der Parameter extent auf alle Layer oder nur auf Enterprise-Geodatabase-Layer angewendet wird.
| Boolean |
package_as_template (optional) | Gibt an, ob das Projekt als Vorlage oder als normales Projekt konsolidiert werden soll. Vorlagen können Karten, Layouts, Verbindungen zu Datenbanken und Servern usw. umfassen. Mit einer Projektvorlage können Sie eine Reihe von Karten zur Verwendung in einem Projekt standardisieren und sicherstellen, dass die richtigen Layer sofort für jeden Benutzer in deren Karten verfügbar sind. Weitere Informationen zu Projektvorlagen
| Boolean |
preserve_sqlite (optional) | Gibt an, ob SQLite-Geodatabases beibehalten oder in File-Geodatabase konvertiert werden. Hinweis:Dieser Parameter findet nur Anwendung auf Dateien vom Typ .geodatabase, die in erster Linie für Offline-Workflows in ArcGIS Runtime-Apps verwendet werden. SQLite-Databases mit der Dateierweiterung .sqlite oder .gpkg werden in File-Geodatabases konvertiert.
| Boolean |
version (optional) | Gibt die ArcGIS Pro-Version an, in der das konsolidierte Projekt gespeichert wird. Durch Speichern in einer früheren Version wird Abwärtskompatibilität des Werkzeugs sichergestellt. Wenn Sie versuchen, eine Toolbox in einer früheren Version zu konsolidieren, und Funktionen aufnehmen, die nur in der neueren Version verfügbar sind, tritt ein Fehler auf. Sie müssen Werkzeuge entfernen, die mit der früheren Version nicht kompatibel sind, oder eine kompatible Version angeben.
| String |
select_related_rows (optional) | Gibt an, ob die angegebene Ausdehnung auf zugehörige Datenquellen angewendet wird.
| Boolean |
Codebeispiel
Das folgende Python-Skript veranschaulicht, wie Sie das Werkzeug "ConsolidateProject" im Python-Fenster verwenden.
import arcpy
arcpy.ConsolidateProject_management('c:\\projects\\SE_Pipelines\\PipeDevelopment.aprx', 'E:\\gisShare\\projects\\Pipelines\\SE_Pipeline', 'INTERNAL')
Das folgende Skript verwendet ein Eingabeverzeichnis, in dem sich Projektdateien (.aprx) auf einer UNC-Freigabe befinden, und konsolidiert das Projekt auf einem lokalen Laufwerk. Das nun lokale Projekt kann weiterhin auf die Daten zugreifen, da das Schlüsselwort "INTERNAL" verwendet wird.
import os
import arcpy
enterpriseProjectDir = "\\\\centralFileServer\\gisData\\ArcGISProProjects"
localProjectDir = "c:\\GISdata\\localProjects"
walk = arcpy.da.Walk(enterpriseProjectDir, datatype="Project")
for dirpath, dirnames, filenames in walk:
for fname in filenames:
project = os.path.join(dirpath, fame)
outputFolder = os.path.join(localProjectDir, os.path.splitext(os.path.basename(project))[0])
print("Consolidating: {0} to {1}".format(project, outputFolder))
arcpy.ConsolidateProject_management(project, outputFolder, "INTERNAL")
Umgebungen
Lizenzinformationen
- Basic: Ja
- Standard: Ja
- Advanced: Ja