Summary
Packages one or more geoprocessing results, including all tools and input and output datasets, into a single compressed file (.gpkx).
Usage
When a tool is executed, a geoprocessing history item is added to the Geoprocessing History section of the Catalog pane. Use this item as input to the Package Result tool.
When a tool is executed from Python, a Result object is returned from tool execution. The Result object's resultID property can be used as input to this tool. In the Code sample section, the second example demonstrates how to use a Result object's resultID property.
When Support ArcGIS Runtime is checked (arcgisruntime="RUNTIME" in Python), the geoprocessing package created can be used in the ArcGIS Runtime SDK environment. To support the runtime environment, the following occur:
- All nongeodatabase data sources will be converted to a file geodatabase.
- A copy of the tool being package is created in a new toolbox configured for publishing.
Note:
Starting at ArcGIS Pro 2.1, geoprocessing packages that support ArcGIS Runtime can be created.
When Convert data to file geodatabase is checked (convert_data = 'CONVERT' in Python), the following occurs:
- Each unique data source will have a file geodatabase created in the consolidated folder or package.
- Compressed raster and vector formats will be converted to a file geodatabase, and compression will be lost.
- Enterprise geodatabase data will not be consolidated. To convert enterprise geodatabase data to a file geodatabase, check Include Enterprise geodatabase data instead of referencing the data.
When Convert data to file geodatabase is not checked (convert_data = 'PRESERVE' in Python), the following occurs:
- The data source format of the input layers will be preserved when possible.
- ADRG, CADRG/ECRG, CIB, and RPF raster formats will always convert to file geodatabase rasters. ArcGIS cannot natively write out these formats. They will always be converted to file geodatabase rasters for efficiency.
- In the output folder structure, file geodatabases will be consolidated in a version-specific folder, and all other formats will be consolidated in the commonData folder.
- Compressed raster and vector formats will not be clipped even if an extent is specified in the Extent parameter.
For layers that contain a join or participate in a relationship class, all joined or related data sources will be consolidated into the output folder. By default, joined or related data sources will be consolidated in their entirety or, depending on the Select Related Rows parameter, based on the extent specified using the Extent parameter.
For feature layers, the Extent parameter is used to select the features that will be consolidated. For raster layers, the Extent parameter is used to clip the raster datasets.
Some datasets reference other datasets. For example, you may have a topology dataset that references four feature classes. Other examples of datasets that reference other datasets include geometric networks, networks, and locators. When consolidating or packaging a layer based on these types of datasets, the participating datasets will also be consolidated or packaged.
If the Schema only parameter is checked, only the schema of the input and output data sources will be consolidated or packaged. A schema is the structure or design of a feature class or table that consists of field and table definitions, coordinate system properties, symbology, definition queries, and so on. Data or records will not be consolidated or packaged.
Data sources that do not support schema only will not be consolidated or packaged. If the Schema only parameter is checked and the tool encounters a layer that is not supported for schema only, a warning message appears and that layer will be skipped. If the only layer specified is unsupported for schema only, the tool will fail.
To unpack a geoprocessing package, use the Extract Package tool to extract the contents to a folder. You can then navigate to the directory and explore the tool and data. Alternatively, right-click the package from a folder in the Catalog pane and extract it to the current map. The tool will be accessible from the Geoprocessing History section.
By default, when extracting a package from the Catalog pane, the contents will be extracted into your user profile.
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}, {select_related_rows})
Parameter | Explanation | Data Type |
in_result [in_result,...] | The result that will be packaged. The input can be either a result from the history of your current project or a Result object's resultID property when the tool is being used in a Python script. | File; String |
output_file | The name and location of the output package file (.gpkx). | File |
convert_data (Optional) | Specifies whether input layers will be converted to a file geodatabase or preserved in their original format.
| Boolean |
convert_arcsde_data (Optional) | Specifies whether input enterprise geodatabase layers will be converted to a file geodatabase or preserved in their original format.
| Boolean |
extent (Optional) | Specifies the extent that will be used to select or clip features.
| Extent |
apply_extent_to_arcsde (Optional) | Specifies whether the specified extent will be applied to all layers or only to enterprise geodatabase layers.
| Boolean |
schema_only (Optional) | Specifies whether only the schema of input and output datasets will be consolidated or packaged.
| Boolean |
arcgisruntime (Optional) | Specifies whether the package will support ArcGIS Runtime. To support ArcGIS Runtime, all data sources will be converted to a file geodatabase.
| Boolean |
additional_files [additional_files,...] (Optional) | Adds additional files to a package. Additional files, such as .doc, .txt, .pdf, and so on, are used to provide more information about the contents and purpose of the package. | File |
summary (Optional) | Adds summary information to the properties of the package. | String |
tags (Optional) | Adds tag information to the properties of the package. Multiple tags can be added or separated by a comma or semicolon. | String |
version [version,...] (Optional) | Specifies the version of the geodatabases that will be created in the resulting package. Specifying a version allows packages to be shared with previous versions of ArcGIS and supports backward compatibility. Note:A package saved to a previous version may lose properties available only in the newer version.
| String |
select_related_rows (Optional) | Specifies whether the specified extent will be applied to related data sources.
| Boolean |
Code sample
The following Python script demonstrates how to use the PackageResult tool in the Python window.
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")
The following Python script demonstrates how to use the PackageResult tool either from the Python window or from a script with the Result object of a custom tool.
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.resultID, "c:/gpks/parcelgpk.gpkx",
"PRESERVE", "CONVERT_ARCSDE", "#", "ALL",
"ALL", "DESKTOP", "#", "Summary text", "Tag1")
Environments
Licensing information
- Basic: Yes
- Standard: Yes
- Advanced: Yes