概要
すべてのツールや入力および出力データセットなど、1 つ以上のジオプロセシング結果を 1 つの圧縮ファイル (*.gpk) にパッケージ化します。
使用法
ツールを実行すると、実行に関する情報が結果として [結果] ウィンドウに書き込まれます。結果は、ドラッグ アンド ドロップで [結果] ウィンドウから入力として直接追加したり、結果ファイル (*.rlt) として保存した結果を入力として追加したりできます。
[ArcGIS Runtime のサポート] がオン (Python では arcgisruntime="RUNTIME") の場合、作成されたジオプロセシング パッケージを ArcGIS Runtime SDK 環境で使用できます。ランタイム環境をサポートすると
- ジオデータベース以外のすべてのデータ ソースは、ファイル ジオデータベースに変換されます。
- パッケージ化されるツールのコピーが公開用に構成された新しいツールボックス内に作成されます。
[データをファイル ジオデータベースへ変換] をオン (Python では convert_data = 'CONVERT') にしたとき、以下が発生します。
- 一意のデータ ソースごとに、ファイル ジオデータベースが統合フォルダーまたはパッケージに作成されます。
- 圧縮されたラスター形式およびベクター形式は、ファイル ジオデータベースに変換され、圧縮は解除されます。
- エンタープライズ ジオデータベースのデータは統合されません。エンタープライズ ジオデータベースのデータをファイル ジオデータベースに変換するには、[データを参照せずにエンタープライズ ジオデータベースのデータを含める] をオンにします。
[データをファイル ジオデータベースへ変換] をオフ (Python では convert_data = 'PRESERVE') にしたとき、以下が発生します。
- 入力レイヤーのデータ ソース形式が維持されます。例外は、パーソナル ジオデータベース データ (*.mdb)、VPF データ、Excel スプレッドシートまたは OLEDB 接続に基づくテーブルなどの形式です。これらの形式は、64x 環境ではサポートされないため、常にファイル ジオデータベースに変換されます。
- ADRG、CADRG/ECRG、CIB、および RPF ラスター形式は、常にファイル ジオデータベース ラスターに変換されます。ArcGIS は、ネイティブにこれらの形式を書き出すことはできません。効率のために、それらは常にファイル ジオデータベース ラスターに変換されます。
- 出力フォルダー構造の中で、ファイル ジオデータベースはバージョン固有のフォルダーに統合され、それ以外の形式はすべて commonData フォルダーに統合されます。
- 圧縮されたラスターおよびベクター形式は、[範囲] パラメーターに範囲が指定されていても、クリップされません。
結合を含むか、リレーションシップ クラスに属するレイヤーの場合、結合したデータ ソースまたは関連付けられたデータ ソースはすべて出力フォルダーに統合されます。デフォルトでは、結合したデータ ソースまたは関連付けられたデータ ソースは、[範囲] パラメーターを使用して指定された範囲に基づいて、全体が統合されるか、[関連行の選択] パラメーターに応じて統合されます。
フィーチャ レイヤーの場合は、[範囲] パラメーターを使用して、統合するフィーチャを選択します。ラスター レイヤーの場合は、[範囲] パラメーターを使用して、ラスター データセットをクリップします。
一部のデータセットは、他のデータセットを参照しています。たとえば、4 つのフィーチャクラスを参照するトポロジ データセットなどがあります。他のデータセットを参照するそれ以外のデータセットの例として、ジオメトリック ネットワーク、ネットワーク、およびロケーターを挙げることができます。これらのタイプのデータセットを基にしてレイヤーを統合またはパッケージ化するときは、それに属しているデータセットも統合またはパッケージ化されます。
[スキーマのみ] パラメーターをオンにすると、入力および出力データ ソースのスキーマだけを統合またはパッケージ化できます。スキーマは、フィーチャクラスまたはテーブルの構造または設計であり、フィールドおよびテーブル定義、座標系プロパティ、シンボル、フィルター設定などで構成されます。データまたはレコードは統合またはパッケージ化されません。
スキーマのみをサポートしないデータ ソースは、統合またはパッケージ化されません。[スキーマのみ] パラメーターをオンにしているときに、スキーマのみではサポートされないレイヤーが検出されると、警告メッセージが表示され、そのレイヤーはスキップされます。指定した唯一のレイヤーがスキーマのみではサポートされない場合、ツールは失敗します。
失敗した結果からパッケージを作成することはできません。ただし、[結果の統合 (Consolidate Result)] ツールを使用して、失敗した結果が使用していたすべてのデータとツールを含むフォルダーを作成することはできます。
ジオプロセシング パッケージを展開するには、*.gpk ファイルを ArcMap にドラッグするか、*.gpk ファイルを右クリックして [展開] をクリックします。代わりに、[パッケージの抽出 (Extract Package)] ツールを使用して、出力フォルダーを指定しても解凍できます。
デフォルトでは、パッケージは次の格納場所にあるユーザー プロファイルに抽出されます。
パッケージを展開するデフォルトの場所を変更するには、[カスタマイズ] メニューから [ArcMap オプション] を開きます。[共有] タブの [パッケージ] セクションで、[ユーザーが指定した場所を使用する] をオンにして、新しいフォルダーの場所を選択します。
構文
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})
パラメーター | 説明 | データ タイプ |
in_result [in_result,...] | パッケージ化する結果。 入力は、ドラッグ アンド ドロップで [結果] ウィンドウから直接追加された結果か、結果ファイル (*.rlt) を選択します。 | File; String |
output_file | 出力パッケージ ファイル (*.gpk) の名前と場所。 | File |
convert_data (オプション) | 入力レイヤーをファイル ジオデータベースに変換するか、その元の形式で維持するかを指定します。
| Boolean |
convert_arcsde_data (オプション) | 入力エンタープライズ ジオデータベース レイヤーをファイル ジオデータベースに変換するか、その元の形式で維持するかを指定します。
| Boolean |
extent (オプション) | 範囲パラメーターに X-Min Y-Min X-Max Y-Max 形式で座標を入力して範囲を指定します。特定レイヤーの範囲を使用するには、レイヤー名を指定します。
| Extent |
apply_extent_to_arcsde (オプション) | 指定した範囲をすべてのレイヤーに適用するか、エンタープライズ ジオデータベースのレイヤーだけに適用するかを指定します。
| Boolean |
schema_only (オプション) | 入力および出力データセットのスキーマだけを統合またはパッケージ化するかどうかを指定します。
| Boolean |
arcgisruntime (オプション) | パッケージが ArcGIS Runtime をサポートするかどうかを指定します。ArcGIS Runtime をサポートすると、すべてのデータ ソースがファイル ジオデータベースに変換されます。
| Boolean |
additional_files [additional_files,...] (オプション) | ファイルをパッケージに追加します。*.doc、*.txt、*.pdf などの追加ファイルは、パッケージのコンテンツや目的に関する詳細を提供します。 | File |
summary (オプション) | 概要情報をパッケージのプロパティに追加します。 | String |
tags (オプション) | タグ情報をパッケージのプロパティに追加します。カンマやセミコロンで区切ることで、複数のタグを追加できます。 | String |
version [version,...] (オプション) | 出力パッケージ内に作成される、ジオデータベースのバージョンを指定します。バージョンを指定すると、パッケージを ArcGIS の以前のバージョンと共有できるようになり、後方互換性がサポートされます。 | String |
コードのサンプル
PackageResult (結果のパッケージ化) の例 1 (Python ウィンドウ)
次の Python スクリプトで、PackageResult ツールを Python ウィンドウ内から使用する方法を示します。
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 (結果のパッケージ化) の例 2 (スタンドアロン Python スクリプト)
次の Python スクリプトで、Python ウィンドウまたはカスタム ツールの PackageResult オブジェクトを持つスクリプトから、Result ツールを使用する方法を示します。
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 (結果のパッケージ化) の例 3 (スタンドアロン スクリプト)
指定したフォルダー内に存在するすべての結果ファイルを検索し、結果ファイルごとに個別のジオプロセシング パッケージを作成します。
# 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 (結果のパッケージ化) の例 4 (スタンドアロン スクリプト)
指定したフォルダー内に存在するすべての結果ファイルを検索し、すべての結果ファイルに対して 1 つのジオプロセシング パッケージを作成します。
# 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")
環境
このツールは、ジオプロセシング環境を使用しません。
ライセンス情報
- Basic: はい
- Standard: はい
- Advanced: はい