ArcGIS Pro で実行するツールの分析 (Analyze Tools For Pro) (データ管理)

概要

Python スクリプトとカスタム ジオプロセシング ツールおよびツールボックスを解析して、ArcGIS Pro でサポートされていない機能を特定します。

ArcGIS Pro と ArcGIS 10.x には違いがあります。そのため、一部のカスタム ツールおよびスクリプトでは、ArcGIS Pro で正常に稼働するよう変更されている場合があります。これらの変更には、ArcGIS Pro でサポートされていないジオプロセシング ツールと環境、arcpy.mapping モジュールの arcpy.mp モジュールへの置き換え、サポートされていないデータ形式 (パーソナル ジオデータベースなど)、Python 2 から Python 3 へのアップグレードがあります。

使用法

  • 問題が見つかると、ツールのメッセージに警告として表示されます。

  • ArcGIS Pro では Python 3 を使用します。多くのスクリプトは、そのまま機能し続けますが、機能しないものもあります。

    ArcGIS Pro で機能するよう Python スクリプトを更新するヒントについては、「10.x から ArcGIS Pro への Python の移行」をご参照ください。

  • Python 2 から Python 3 への移行に関する問題については、[ArcGIS Pro で実行するツールの分析 (Analyze Tools For Pro)] で Python 2to3 ユーティリティを使用して Python コードを確認します。Python 2to3 ユーティリティを使用すると、一連のフィクサーを実行して Python 2.x コードを確認できます。これにより、コードを有効な Python 3.x コードに変換する方法がわかります。

  • Python 2to3 ユーティリティは、コマンド プロンプトから直接使用できます。このユーティリティには、[ArcGIS Pro で実行するツールの分析 (Analyze Tools For Pro)] を使用して利用できない Python コードを解析するためのオプション セット (特定のフィクサーのみの適用や適切なコードの更新など) が数多くあります。詳細については、https://docs.python.org/3/library/2to3.html をご参照ください。

構文

AnalyzeToolsForPro(input, {report})
パラメーター説明データ タイプ
input

入力として、ジオプロセシング ツールボックス、Python ファイル、またはツール名を指定できます。

メモ:

ツール名を指定すると、ツールはまず arcpy.ImportToolbox 関数を使用して読み込まれ、認識される必要があります。ツール名にはツールボックスのエイリアスを含めます。

File; String
report
(オプション)

すべての問題を含む出力テキスト ファイルです。

File

コードのサンプル

コードの例 1

ArcGIS Pro 用の Python スクリプトを解析します。

import arcpy
arcpy.AnalyzeToolsForPro_management('c:/tools/scripts/myutils.py', 'c:/temp/analyze_report.txt')
print(arcpy.GetMessages(1))
コードの例 2

ArcGIS Pro 用のジオプロセシング ツールボックスを解析します。

import arcpy
arcpy.AnalyzeToolsForPro_management('c:/tools/scripts/mytools.tbx', 'c:/temp/analyze_report.txt')
print(arcpy.GetMessages(1))
コードの例 3

ArcGIS Pro 用のジオプロセシング ツールを解析します。ツールを解析するには、まず ImportToolbox を使用してツールボックスをインポートし、次に、エイリアスを含むツール名を [ArcGIS Pro で実行するツールの分析 (Analyze Tools For Pro)] に渡します。

import arcpy
arcpy.ImportToolbox('c:/tools/scripts/mytools.tbx')
arcpy.AnalyzeToolsForPro_management('mytool_tools', 'c:/temp/analyze_report.txt')
print(arcpy.GetMessages(1))

ライセンス情報

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

関連トピック