レイヤー コンテンツの統合 (Consolidate Layer) (データ管理)

概要

参照されているすべてのデータ ソースをコピーすることにより、1 つまたは複数のレイヤーを 1 つのフォルダーに統合します。

使用法

  • このツールはサポートされていないレイヤー タイプを見つけると警告を出します。サポートされていないレイヤーは出力に書き込まれません。

  • [データをファイル ジオデータベースへ変換] をオン (Python では convert_data = 'CONVERT') にしたとき、以下が発生します。

    • 一意のデータ ソースごとに、ファイル ジオデータベースが統合フォルダーまたはパッケージに作成されます。
    • 圧縮されたラスター形式およびベクター形式は、ファイル ジオデータベースに変換され、圧縮は解除されます。
    • エンタープライズ ジオデータベースのデータは統合されません。エンタープライズ ジオデータベースのデータをファイル ジオデータベースに変換するには、[データを参照せずにエンタープライズ ジオデータベースのデータを含める] をオンにします。

  • [データをファイル ジオデータベースへ変換] をオフ (Python では convert_data = 'PRESERVE') にしたとき、以下が発生します。

    • 可能な場合、入力レイヤーのデータ ソース形式が維持されます。
    • ADRG、CADRG/ECRG、CIB、および RPF ラスター形式は、常にファイル ジオデータベース ラスターに変換されます。ArcGIS は、ネイティブにこれらの形式を書き出すことはできません。効率のために、それらは常にファイル ジオデータベース ラスターに変換されます。
    • 出力フォルダー構造の中で、ファイル ジオデータベースはバージョン固有のフォルダーに統合され、それ以外の形式はすべて commonData フォルダーに統合されます。
    • 圧縮されたラスターおよびベクター形式は、[範囲] パラメーターに範囲が指定されていても、クリップされません。

  • 結合を含むか、リレーションシップ クラスに属するレイヤーの場合、結合したデータ ソースまたは関連付けられたデータ ソースはすべて出力フォルダーに統合されます。デフォルトでは、結合したデータ ソースまたは関連付けられたデータ ソースは、[範囲] パラメーターを使用して指定された範囲に基づいて、全体が統合されるか、[関連行の選択] パラメーターに応じて統合されます。

  • フィーチャ レイヤーの場合は、[範囲] パラメーターを使用して、統合するフィーチャを選択します。ラスター レイヤーの場合は、[範囲] パラメーターを使用して、ラスター データセットをクリップします。

  • 一部のデータセットは、他のデータセットを参照しています。たとえば、4 つのフィーチャクラスを参照するトポロジ データセットなどがあります。他のデータセットを参照するそれ以外のデータセットの例として、ジオメトリック ネットワーク、ネットワーク、およびロケーターを挙げることができます。これらのタイプのデータセットを基にしてレイヤーを統合またはパッケージ化するときは、それに属しているデータセットも統合またはパッケージ化されます。

  • [スキーマのみ] パラメーターをオン (Python では schema_only = 'SCHEMA_ONLY') にすると、入力データ ソースのスキーマだけを統合またはパッケージ化できます。スキーマは、フィーチャクラスまたはテーブルの構造または設計であり、フィールドおよびテーブル定義、座標系プロパティ、シンボル、フィルター設定などで構成されます。データまたはレコードは統合またはパッケージ化されません。

  • スキーマのみをサポートしないデータ ソースは、統合またはパッケージ化されません。[スキーマのみ] パラメーターをオンにしているときに、スキーマのみではサポートされないレイヤーが検出されると、警告メッセージが表示され、そのレイヤーはスキップされます。指定した唯一のレイヤーがスキーマのみではサポートされない場合、ツールは失敗します。

構文

arcpy.management.ConsolidateLayer(in_layer, output_folder, {convert_data}, {convert_arcsde_data}, {extent}, {apply_extent_to_arcsde}, {schema_only}, {select_related_rows})
パラメーター説明データ タイプ
in_layer
[in_layer,...]

統合する入力レイヤー。

Layer
output_folder

レイヤー ファイルおよび統合したデータを格納する出力フォルダー。

指定されたフォルダーが存在しない場合、新しいフォルダーが作成されます。

Folder
convert_data
(オプション)

入力レイヤーをファイル ジオデータベースに変換するか、その元の形式で維持するかを指定します。

  • CONVERT データはファイル ジオデータベースに変換されます。このオプションは、エンタープライズ ジオデータベースのデータ ソースには適用されません。エンタープライズ ジオデータベースのデータに変換するには、convert_arcsde_data = 'CONVERT_ARCSDE' を設定します。
  • PRESERVE可能な限り、データ形式が維持されます。これがデフォルトです。
Boolean
convert_arcsde_data
(オプション)

入力エンタープライズ ジオデータベース レイヤーをファイル ジオデータベースに変換するか、その元の形式で維持するかを指定します。

  • CONVERT_ARCSDE エンタープライズ ジオデータベースのデータはファイル ジオデータベースに変換され、統合フォルダーまたはパッケージに加えられます。これがデフォルトです。
  • PRESERVE_ARCSDE エンタープライズ ジオデータベースのデータは維持され、統合フォルダーまたはパッケージ内で参照されます。
Boolean
extent
(オプション)

フィーチャを選択またはクリップするために使用される範囲を指定します。

  • MAXOF - すべての入力の最大範囲が使用されます。
  • MINOF - すべての入力に共通する最小領域が使用されます。
  • DISPLAY - 範囲は、表示範囲と同じになります。
  • [レイヤー名] - 指定したレイヤーの範囲が使用されます。
  • Extent オブジェクト - 指定したオブジェクトの範囲が使用されます。
  • [座標のスペース区切りの文字列] - 指定した文字列の範囲が使用されます。座標は、x-min、y-min、x-max、y-max の順序で表されます。
Extent
apply_extent_to_arcsde
(オプション)

指定した範囲をすべてのレイヤーに適用するか、エンタープライズ ジオデータベースのレイヤーだけに適用するかを指定します。

  • ALL 指定した範囲がすべてのレイヤーに適用されます。これがデフォルトです。
  • ARCSDE_ONLY指定した範囲がエンタープライズ ジオデータベースのレイヤーのみに適用されます。
Boolean
schema_only
(オプション)

入力レイヤーのスキーマだけを統合またはパッケージ化するかどうかを指定します。

  • ALL すべてのフィーチャおよびレコードが統合またはパッケージ化されます。これがデフォルトです。
  • SCHEMA_ONLY 入力レイヤーのスキーマだけが統合またはパッケージ化されます。
Boolean
select_related_rows
(オプション)

指定した範囲を関連するデータ ソースに適用するかどうかを指定します。

  • KEEP_ONLY_RELATED_ROWS指定した範囲内のレコードに対応する関連するデータのみが統合されます。
  • KEEP_ALL_RELATED_ROWS関連するデータ ソースが全体的に統合されます。これがデフォルトです。
Boolean

コードのサンプル

ConsolidateLayer (レイヤー コンテンツの統合) の例 1 (Python ウィンドウ)

次の Python ウィンドウ スクリプトは、イミディエイト モードで ConsolidateLayer ツールを使用する方法を示しています。

import arcpy
arcpy.env.workspace = 'C:/arcgis/ArcTutor/BuildingaGeodatabase/Layers' 
arcpy.ConsolidateLayer_management('Parcels.lyr', 'Consolidated_folder', 'PRESERVE', 'CONVERT_ARCSDE')
ConsolidateLayer (統合レイヤー) の例 2 (スタンドアロン スクリプト)

指定したフォルダー内に存在するすべてのレイヤー ファイルを検索し、レイヤー ファイルごとに個別の統合フォルダーを作成します。

# import system modules
import os 
import arcpy
# Set environment settings
arcpy.env.workspace = 'C:/arcgis/ArcTutor/BuildingaGeodatabase/Layers' 
# Loop through the workspace, find all the layer files (.lyr) and create a consolidated folder for each 
# layer file found using the same name as the original layer file.
for lyr in arcpy.ListFiles('*.lyr'):
    print('Consolidating {}'.format(lyr))
    arcpy.ConsolidateLayer_management(lyr, os.path.splitext(lyr)[0], 'PRESERVE', 'CONVERT_ARCSDE')

ライセンス情報

  • Basic: はい
  • Standard: はい
  • Advanced: はい

関連トピック