打包工程 (数据管理)

摘要

ArcGIS Pro 工程 (.aprx) 及其内容(地图和数据)合并、并打包到已打包的工程文件 (.ppkx) 中。

使用情况

  • 将工程的数据和元素合并到工程包 (.ppkx) 中,这些元素包括地图和 3D 视图、位于地图中的数据和图层、工具箱、地理处理历史项目、样式、布局以及文件夹或连接(服务器、工作流等)(如果适用)。

  • 在组织外共享参数可用于控制是创建供内部使用(组织网络内)的包,还是创建供外部使用的包。 选中在组织外共享后,企业级地理数据库图层、要素服务和跨网络共享(UNC 路径)引用的数据将被复制(或转换)并包含在工程包中。 存储在本地计算机上的数据也将被合并和打包。

    注:

    如果与无法访问网络资源(企业级地理数据库、要素服务和通过磁盘共享 [UNC 路径] 引用的数据)的同事共享包含引用数据的内部包,则创建的链接将断开。

  • 可使用打包为模板参数创建模板。 使用工程模板(.aptx 文件),可通过定义图层、地图和数据以及所需的连接来创建新工程。

    了解有关创建工程模板的详细信息

  • 在执行合并过程之前,使用 Pro 分析工具版本分析工具箱工具来分析工程的工具箱。 识别出的错误会停止合并进程。 修复错误或从工程中删除该工具。 通过取消选中包括工具箱参数可以将工具箱从输出工程包中排除。

  • 与工程工具箱类似,地理处理历史(来自运行地理处理工具的结果信息)将包含在包中。 处理历史项目所需的数据将包括在输出包中,而无论其是否存在于地图或场景中。 任何无效(在处理过程中失败)或者无法找到数据的历史项目都将导致打包过程停止。 您必须移除或修复有问题的历史项目。 通过取消选中包括历史项目参数可以将历史项目从输出工程包中排除。

  • 连接(例如文件夹、服务器、数据库以及工作流)将仅包括在内部包中。 如果创建包时选中了在组织外共享参数,则这些项目将被删除。

  • 对于要素图层,使用范围参数选择将要合并的要素。 对于栅格图层,使用范围参数裁剪栅格数据集。

  • 软件包中将包含的附加文件。 使用附加文件参数,可将图像、PDF、Word 文档和 .zip 文件包括在包中。

  • 警告:

    只能通过 ArcGIS Pro 创建和打开工程包 (.ppkx 文件)。

参数

标注说明数据类型
输入工程

要打包的工程(.aprx 文件)。

File
输出文件

输出工程包(.ppkx 文件)。

File
在组织外共享
(可选)

指定是否将工程和所有数据合并、转换或复制到包中(以便在组织外部共享)或按原样引用而不进行转换或不将其包含在包中(以便在组织内部共享)。

注:

如果工程通过本地路径(例如 c:\gisdata\landrecords.gdb\)引用数据和地图,则将对这些数据和地图进行合并和打包(不考虑该参数设置)。

  • 未选中 - 将按原样引用存储在网络资源(例如企业级地理数据库、要素服务和文件共享(UNC 路径))上的数据,而无需对其进行转换或将其包含在包中。 这是默认设置。
  • 选中 - 存储在网络资源上的数据将被合并、转换或复制到包中。 保留数据格式(如有可能)。
Boolean
打包为模板
(可选)

指定将创建工程模板还是工程包。 工程模板可以包含地图、布局、数据库和服务器的连接等。 使用工程模板,可以标准化不同工程的一系列地图并可确保正确的图层可供所有人直接用于他们的地图中。

  • 未选中 - 将创建工程包。 这是默认设置。
  • 选中 - 将创建工程模板。

Boolean
范围
(可选)

指定用于选择或裁剪要素的范围。

  • 当前显示范围 地图视图 - 范围基于活动地图或场景。
  • 绘制范围 构造直角并完成草图 - 范围将基于在地图或场景上绘制的矩形。
  • 图层范围 图层 - 范围基于活动地图图层。 选择可用图层或者使用所有图层中的数据范围选项。 每个地图图层具有以下选项:

    • 所有要素 全选 - 所有要素的范围。
    • 选定要素 基于选定要素的区域 - 选定要素的范围。
    • 可见要素 Extent Indicator - 可见要素的范围。

  • 浏览 浏览 - 范围将基于数据集。
  • 输入的交集 相交 - 范围将为所有输入的相交范围。
  • 输入的并集 联合 - 范围将为所有输入的合并范围。
  • 剪贴板 粘贴 - 可在剪贴板中复制和粘贴范围。
    • 复制范围 复制 - 将范围和坐标系复制到剪贴板。
    • 粘贴范围 粘贴 - 从剪贴板粘贴范围和坐标系。 如果剪贴板不包含坐标系,则范围将使用地图的坐标系。
  • 重置范围 重置 - 将范围重置为默认值。

当手动提供坐标时,坐标必须为数值,并且位于活动地图的坐标系中。 地图可能使用与提供的坐标不同的显示单位。 在南纬和西经坐标中使用负号。

Extent
仅将范围应用于企业级地理数据库图层
(可选)

指定是将指定范围应用到所有图层,还是仅应用到企业级地理数据库图层。

  • 未选中 - 范围将应用到所有图层。 这是默认设置。
  • 选中 - 范围将仅应用到企业级地理数据库图层。

Boolean
附加文件
(可选)

软件包中将包含的附加文件。

File
摘要
(可选)

将添加到包属性中的摘要信息。

String
标签
(可选)

将添加到包属性中的标签。 使用逗号或分号分隔多个标签。

String
包版本
(可选)

指定与某些对象(例如工程、地图和图层)兼容并将保留到的 ArcGIS Pro 版本。 如果工程将与旧版软件一起使用,则保存为早期版本会很有帮助。

警告:

保存为早期版本的包可能会丢失早期版本不支持的功能或属性。

  • 所有版本该包的内容将与所有版本(ArcGIS Pro 2.1 及更高版本)兼容。
  • 当前版本该包的内容将与当前发布的 ArcGIS Pro 版本兼容。
  • ArcGIS Pro 2.2该包的内容将与 ArcGIS Pro 2.2 版本兼容。
  • ArcGIS Pro 2.3该包的内容将与 ArcGIS Pro 2.3 版本兼容。
  • ArcGIS Pro 2.4该包的内容将与 ArcGIS Pro 2.4 版本兼容。
  • ArcGIS Pro 2.5该包的内容将与 ArcGIS Pro 2.5 版本兼容。
  • ArcGIS Pro 2.6该包的内容将与 ArcGIS Pro 2.6 版本兼容。
  • ArcGIS Pro 2.7该包的内容将与 ArcGIS Pro 2.7 版本兼容。
  • ArcGIS Pro 2.8该包的内容将与 ArcGIS Pro 2.8 版本兼容。
  • ArcGIS Pro 2.9该包的内容将与 ArcGIS Pro 2.9 版本兼容。
  • ArcGIS Pro 3.0该包的内容将与 ArcGIS Pro 3.0 版本兼容。
  • ArcGIS Pro 3.1该包的内容将与 ArcGIS Pro 3.1 版本兼容。
  • ArcGIS Pro 3.2该包的内容将与 ArcGIS Pro 3.2 版本兼容。
  • ArcGIS Pro 3.3该包的内容将与 ArcGIS Pro 3.3 版本兼容。
  • ArcGIS Pro 3.4该包的内容将与 ArcGIS Pro 3.4 版本兼容。
String
包括工具箱
(可选)

指定是否对工程工具箱以及这些工具箱中工具所引用的数据、进行合并并将其包括在输出包中。 所有工程都需要一个默认工具箱,因此无论如何设置,该工具箱都将包含在输出包中。 连接文件夹中的工具箱不会被视为工程工具箱,且不受此设置的影响。

  • 已选中 - 工程工具箱将包括在输出包中。 这是默认设置。
  • 未选中 - 工程工具箱不会包括在输出包中。
Boolean
包括历史项目
(可选)

指定是否合并地理处理历史项目并将其包括在输出包中。 包括的历史项目将合并重新处理历史项目所需的数据。

  • 将包括历史项目历史项目将包括在输出包中。 这是默认设置。
  • 不会包括历史项目历史项目不会包括在输出包中。
  • 将仅包括有效的历史项目输出包中将仅包括有效的历史项目。 如果找不到任何原始输入图层或工具,则历史项目无效。
String
只读包
(可选)

指定工程是否为只读状态。 无法修改或保存只读工程。

  • 选中 - 工程将为只读状态。
  • 未选中 - 工程将为可写状态。 这是默认设置。
Boolean
仅保留与范围内要素相关的行
(可选)

指定是否将指定的范围应用至相关数据源。

  • 未选中 - 相关的数据源将全部合并。 这是默认设置。
  • 选中 - 仅合并指定范围内与记录对应的相关数据。
Boolean
保留移动地理数据库
(可选)

指定输入移动地理数据库数据是保留在输出中还是写入文件地理数据库格式。 如果输入数据是移动地理数据库网络数据集,则输出将为移动地理数据库。

  • 未选中 - 移动地理数据库数据将被转换为文件地理数据库格式。 这是默认设置。
  • 选中 - 移动地理数据库数据将作为移动地理数据库保留在输出中。 将包含整个地理数据库。
Boolean

arcpy.management.PackageProject(in_project, output_file, {sharing_internal}, {package_as_template}, {extent}, {apply_extent_to_arcsde}, {additional_files}, {summary}, {tags}, {version}, {include_toolboxes}, {include_history_items}, {read_only}, {select_related_rows}, {preserve_sqlite})
名称说明数据类型
in_project

要打包的工程(.aprx 文件)。

File
output_file

输出工程包(.ppkx 文件)。

File
sharing_internal
(可选)

指定是否将工程和所有数据合并、转换或复制到包中(以便在组织外部共享)或按原样引用而不进行转换或不将其包含在包中(以便在组织内部共享)。

  • INTERNAL将按原样引用存储在网络资源(例如企业级地理数据库、要素服务和文件共享(UNC 路径))上的数据,而无需对其进行转换或将其包含在包中。 这是默认设置。
  • EXTERNAL存储在网络资源上的数据将被合并、转换或复制到包中。 保留数据格式(如有可能)。
Boolean
package_as_template
(可选)

指定将创建工程模板还是工程包。 工程模板可以包含地图、布局、数据库和服务器的连接等。 使用工程模板,可以标准化不同工程的一系列地图并可确保正确的图层可供所有人直接用于他们的地图中。

了解有关创建工程模板的详细信息

  • PROJECT_PACKAGE将创建工程包。 这是默认设置。
  • PROJECT_TEMPLATE将创建工程模板。
Boolean
extent
(可选)

指定用于选择或裁剪要素的范围。

  • MAXOF - 将使用的所有输入的最大范围。
  • MINOF - 将使用的所有输入共用的最小范围。
  • DISPLAY - 范围与可见显示范围相等。
  • 图层名称 - 将使用指定图层的范围。
  • Extent 对象 - 将使用指定对象的范围。
  • 以空格分隔的坐标字符串 - 将使用指定字符串的范围。 坐标以 x-min,y-min,x-max,y-max 的顺序表示。
Extent
apply_extent_to_arcsde
(可选)

指定是将指定范围应用到所有图层,还是仅应用到企业级地理数据库图层。

  • ALL指定范围将应用到所有图层。 这是默认设置。
  • ENTERPRISE_ONLY指定范围将仅应用到企业级地理数据库图层。
Boolean
additional_files
[additional_files,...]
(可选)

软件包中将包含的附加文件。

File
summary
(可选)

将添加到包属性中的摘要信息。

String
tags
(可选)

将添加到包属性中的标签。 使用逗号或分号分隔多个标签。

String
version
[version,...]
(可选)

指定与某些对象(例如工程、地图和图层)兼容并将保留到的 ArcGIS Pro 版本。 如果工程将与旧版软件一起使用,则保存为早期版本会很有帮助。

警告:

保存为早期版本的包可能会丢失早期版本不支持的功能或属性。

  • ALL该包的内容将与所有版本(ArcGIS Pro 2.1 及更高版本)兼容。
  • CURRENT该包的内容将与当前发布的 ArcGIS Pro 版本兼容。
  • 2.2该包的内容将与 ArcGIS Pro 2.2 版本兼容。
  • 2.3该包的内容将与 ArcGIS Pro 2.3 版本兼容。
  • 2.4该包的内容将与 ArcGIS Pro 2.4 版本兼容。
  • 2.5该包的内容将与 ArcGIS Pro 2.5 版本兼容。
  • 2.6该包的内容将与 ArcGIS Pro 2.6 版本兼容。
  • 2.7该包的内容将与 ArcGIS Pro 2.7 版本兼容。
  • 2.8该包的内容将与 ArcGIS Pro 2.8 版本兼容。
  • 2.9该包的内容将与 ArcGIS Pro 2.9 版本兼容。
  • 3.0该包的内容将与 ArcGIS Pro 3.0 版本兼容。
  • 3.1该包的内容将与 ArcGIS Pro 3.1 版本兼容。
  • 3.2该包的内容将与 ArcGIS Pro 3.2 版本兼容。
  • 3.3该包的内容将与 ArcGIS Pro 3.3 版本兼容。
  • 3.4该包的内容将与 ArcGIS Pro 3.4 版本兼容。
String
include_toolboxes
(可选)

指定是否合并工程工具箱并将其包括在输出包中。 所有工程都需要一个默认工具箱,因此无论如何设置,该工具箱都将包含在输出包中。

  • TOOLBOXES工程工具箱将包括在输出包中。 这是默认设置。
  • NO_TOOLBOXES工程工具箱不会包括在输出包中。
Boolean
include_history_items
(可选)

指定是否合并地理处理历史项目并将其包括在输出包中。 包括的历史项目将合并重新处理历史项目所需的数据。

  • HISTORY_ITEMS历史项目将包括在输出包中。 这是默认设置。
  • NO_HISTORY_ITEMS历史项目不会包括在输出包中。
  • VALID_HISTORY_ITEMS_ONLY输出包中将仅包括有效的历史项目。 如果找不到任何原始输入图层或工具,则历史项目无效。
String
read_only
(可选)

指定工程是否为只读状态。 无法修改或保存只读工程。

  • READ_ONLY工程将为只读状态。
  • READ_WRITE工程将为可写状态。 这是默认设置。
Boolean
select_related_rows
(可选)

指定是否将指定的范围应用至相关数据源。

  • KEEP_ONLY_RELATED_ROWS仅合并指定范围内与记录对应的相关数据。
  • KEEP_ALL_RELATED_ROWS相关的数据源将全部合并。 这是默认设置。
Boolean
preserve_sqlite
(可选)

指定移动地理数据库数据是保留在输出中还是写入文件地理数据库格式。 如果输入数据是移动地理数据库网络数据集,则输出将为移动地理数据库。

  • CONVERT_SQLITE移动地理数据库数据将被转换为文件地理数据库格式。 这是默认设置。
  • PRESERVE_SQLITE移动地理数据库数据将作为移动地理数据库数据保留在输出中。 将包含整个地理数据库。
Boolean

代码示例

PackageProject 示例 1(Python 窗口)

以下 Python 脚本演示了如何在 Python 窗口中使用 PackageProject 函数。

import arcpy
p = arcpy.mp.ArcGISProject("CURRENT")
arcpy.management.PackageProject(p.filePath, f'E:\gisShare\projects\Pipelines\SE_Pipeline.ppkx', 'INTERNAL')
PackageProject 示例 2(独立脚本)

以下 Python 脚本将目录中文件名带有单词 oil 的所有工程转到工程包 (.ppkx) 中。

import os
import arcpy

enterpriseProjectDir = r"\\centralFileServer\gisData\ArcGISProProjects"
sharedProjectDir = r"c:\publicFiles\sharedProjects"

walk = arcpy.da.Walk(enterpriseProjectDir, datatype="Project")

for dirpath, dirnames, filenames in walk:
    for filename in filenames:
        if "oil" in filename.lower():
            project = os.path.join(dirpath, filename)
            out_ppkx = os.path.join(sharedProjectDir, os.path.splitext(os.path.basename(project))[0] + ".ppkx")
            print(f"Packaging: {project} to {out_ppkx}")
            arcpy.management.PackageProject(project, out_ppkx, "EXTERNAL")

环境

特殊情况

并行处理因子

如果未指定环境,该工具将使用可用内核的二分之一。

许可信息

  • Basic: 是
  • Standard: 是
  • Advanced: 是

相关主题