ラベル | 説明 | データ タイプ |
入力 | 入力として、ジオプロセシング ツールボックスか Python ファイルを指定できます。 | Toolbox; String; File |
出力ファイル (オプション) | すべての問題を含む出力テキスト ファイルです。 | File |
サマリー
Python スクリプトとカスタム ジオプロセシング ツールおよびツールボックスを解析して、ArcGIS AllSource でサポートされていない機能を特定します。
ArcGIS AllSource と ArcGIS 10.x には違いがあります。そのため、一部のカスタム ツールおよびスクリプトでは、ArcGIS AllSource で正常に稼働するよう変更されている場合があります。 これらの変更には、ArcGIS AllSource でサポートされていないジオプロセシング ツールと環境、arcpy.mapping モジュールの arcpy.mp モジュールへの置き換え、サポートされていないデータ形式 (パーソナル ジオデータベースなど)、Python 2 から Python 3 へのアップグレードがあります。
使用法
問題が見つかると、ツールのメッセージに警告として表示されます。
ArcGIS AllSource では Python 3 を使用します。 多くのスクリプトは、そのまま機能し続けますが、機能しないものもあります。
ArcGIS AllSource で機能するよう 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 コードを解析するためのオプション セット (特定のフィクサーのみの適用や適切なコードの更新など) があります。 詳細については、「2to3 — Automated Python 2 to 3 code translation」をご参照ください。
パラメーター
arcpy.management.AnalyzeToolsForPro(input, {report})
名前 | 説明 | データ タイプ |
input | 入力として、ジオプロセシング ツールボックス、Python ファイル、またはツール名を指定できます。 注意:ツール名を指定すると、ツールはまず arcpy.ImportToolbox 関数を使用して読み込まれ、認識される必要があります。 ツール名にはツールボックスのエイリアスを含めます。 | Toolbox; String; File |
report (オプション) | すべての問題を含む出力テキスト ファイルです。 | File |
コードのサンプル
ArcGIS AllSource の Python スクリプトを解析します。
import arcpy
arcpy.management.AnalyzeToolsForPro('c:/tools/scripts/myutils.py', 'c:/temp/analyze_report.txt')
print(arcpy.GetMessages(1))
ArcGIS AllSource のジオプロセシング ツールボックスを解析します。
import arcpy
arcpy.management.AnalyzeToolsForPro('c:/tools/scripts/mytools.tbx', 'c:/temp/analyze_report.txt')
print(arcpy.GetMessages(1))
ArcGIS AllSource のジオプロセシング ツールを解析します。 ツールを解析するには、まず ImportToolbox を使用してツールボックスをインポートし、次に、エイリアスを含むツール名を AnalyzeToolsForPro 関数に渡します。
import arcpy
arcpy.ImportToolbox('c:/tools/scripts/mytools.tbx')
arcpy.management.AnalyzeToolsForPro('mytool_tools', 'c:/temp/analyze_report.txt')
print(arcpy.GetMessages(1))