标注 | 说明 | 数据类型 |
输入工程 | 要合并的工程(.aprx 文件)。 | File |
输出文件夹 | 此输出文件夹将包含合并的工程和数据。 如果指定的文件夹不存在,将创建一个文件夹。 | Folder |
在组织外共享 (可选) | 指定是将工程和所有数据合并到单个文件夹(在组织外共享)还是引用网络数据(在组织内共享)。 注:如果工程通过本地路径(例如 c:\gisdata\landrecords.gdb\)引用数据和地图,则将对这些数据和地图进行合并和打包(不考虑此参数值)。
| Boolean |
范围 (可选) | 指定用于选择或裁剪要素的范围。
当手动提供坐标时,坐标必须为数值,并且位于活动地图的坐标系中。 地图可能使用与提供的坐标不同的显示单位。 在南纬和西经坐标中使用负号。 | Extent |
仅将范围应用于企业级地理数据库图层 (可选) | 指定是将范围应用到所有图层,还是仅应用到企业级地理数据库图层。
| Boolean |
合并为模板 (可选) | 指定将工程作为模板工程还是规则工程进行合并。 模板可以包含地图、布局、数据库和服务器的连接等。 通过工程模板,您可以标准化一系列地图以在工程中使用,并确保人们可立即使用正确的图层。
| Boolean |
保留移动地理数据库 (可选) | 用于指定是保留移动地理数据库还是将其转换为文件地理数据库。 注:该参数仅适用于移动地理数据库 (.geodatabase),主要用于 ArcGIS Runtime 应用程序中的离线工作流。 文件扩展名为 .sqlite 或 .gpkg 的 SQLite 数据库将转换为文件地理数据库。
| Boolean |
版本 (可选) | 指定工程、地图和图层等对象将保留到的 ArcGIS Pro 版本。 如果工程将与早期版本的 ArcGIS Pro 一起使用,则保存为早期版本很有用。 注:保存为早期版本的工程可能会丢失仅在更高版本中可用的功能或属性。
| String |
仅保留与范围内要素相关的行 (可选) | 指定是否将指定的范围应用至相关数据源。
| Boolean |
摘要
将 ArcGIS Pro 工程(.aprx 文件)与引用的地图和数据合并到文件夹。
使用情况
工程的数据和元素都将合并,并包括在 .aprx 文件中,这些元素中包括地图、图层引用的数据、工具箱、样式、布局和连接(如果适用)。
组织外共享参数控制是否将从网络资源引用的数据合并到文件夹中。
- 未选中 - 将为内部环境创建包,表示将不合并数据。 在 UNC 路径上存储的数据、企业级地理数据库图层、要素服务、样式和连接仍将在合并工程中引用。
- 选中 - 将包的所有所需数据源复制到合并文件夹。 网络外部不可用的项目(例如企业级地理数据库连接、要素服务和存储在共享文件夹中的数据)将被转换或复制到输出文件夹。
注:
如果工程通过本地路径(例如 c:\gisdata\landrecords.gdb\)引用数据和地图,则将合并这些数据和地图(不考虑在组织外共享参数值)。
可使用合并为模板参数创建模板。 使用工程模板,可以定义图层、地图和数据以及创建工程时所需的连接。
使用 Pro 分析工具和版本分析工具箱工具来分析合并之前属于工程的工具箱。 发现的错误可能会停止合并过程。 您必须修复这些错误,或从工程中移除工具。
连接 - 例如文件夹、服务器、数据库、工作流以及 data reviewer - 将仅包括在内部包中。 如果创建包的目的是要在组织外共享,则将移除这些项目。
如果项目(例如附件、样式和任务)为 UNC 路径中的工程的一部分,则将对内部包引用项目。 在所有其他情况下,都将对这些项目进行复制和打包。
对于要素图层,使用范围参数选择将要合并的要素。 对于栅格图层,使用范围参数裁剪栅格数据集。
参数
arcpy.management.ConsolidateProject(in_project, output_folder, {sharing_internal}, {extent}, {apply_extent_to_enterprise_geo}, {package_as_template}, {preserve_sqlite}, {version}, {select_related_rows})
名称 | 说明 | 数据类型 |
in_project | 要合并的工程(.aprx 文件)。 | File |
output_folder | 此输出文件夹将包含合并的工程和数据。 如果指定的文件夹不存在,将创建一个文件夹。 | Folder |
sharing_internal (可选) | 指定是将工程和所有数据合并到单个文件夹(在组织外共享)还是引用网络数据(在组织内共享)。
| Boolean |
extent (可选) | 指定用于选择或裁剪要素的范围。
| Extent |
apply_extent_to_enterprise_geo (可选) | 指定是将范围应用到所有图层,还是仅应用到企业级地理数据库图层。
| Boolean |
package_as_template (可选) | 指定将工程作为模板工程还是规则工程进行合并。 模板可以包含地图、布局、数据库和服务器的连接等。 通过工程模板,您可以标准化一系列地图以在工程中使用,并确保人们可立即使用正确的图层。
| Boolean |
preserve_sqlite (可选) | 用于指定是保留移动地理数据库还是将其转换为文件地理数据库。 注:该参数仅适用于移动地理数据库 (.geodatabase),主要用于 ArcGIS Runtime 应用程序中的离线工作流。 文件扩展名为 .sqlite 或 .gpkg 的 SQLite 数据库将转换为文件地理数据库。
| Boolean |
version (可选) | 指定工程、地图和图层等对象将保留到的 ArcGIS Pro 版本。 如果工程将与早期版本的 ArcGIS Pro 一起使用,则保存为早期版本很有用。 注:保存为早期版本的工程可能会丢失仅在更高版本中可用的功能或属性。
| String |
select_related_rows (可选) | 指定是否将指定的范围应用至相关数据源。
| Boolean |
代码示例
以下 Python 脚本演示了如何在 Python 窗口中使用 ConsolidateProject 函数。
import arcpy
arcpy.management.ConsolidateProject(r'c:\projects\SE_Pipelines\PipeDevelopment.aprx',
r'E:\gisShare\projects\Pipelines\SE_Pipeline',
'INTERNAL')
以下脚本采用输入目录(其中工程文件 (.aprx) 位于 UNC 共享中)并将工程合并到本地驱动器。 由于使用了 INTERNAL 关键字,该数据现在仍可供本地工程访问。
import os
import arcpy
enterpriseProjectDir = r"\\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.management.ConsolidateProject(project, outputFolder, "INTERNAL")
许可信息
- Basic: 是
- Standard: 是
- Advanced: 是