MXD Doctor ユーティリティの使用
MXD Doctor は、ArcGIS for Desktop インストール ディレクトリの Tools フォルダにあるスタンドアロン アプリケーションです。これは、破損した *.mxd ファイルを解析する機能を提供します。解析に応じて、破損した *.mxd ファイルに含まれているエンティティを、新しいまたは既存の *.mxd ファイルにコピーできます。
MXD Doctor ユーティリティは、[すべてのプログラム] → [ArcGIS] → [Desktop Tools] から開くこともできます。
MXD Doctor ユーティリティを実行すると、次のエンティティを解析します。
- マップとデータ フレーム
- ページ レイアウト
- VBA(Visual Basic for Applications)プロジェクト
- スタイル ギャラリー
- サムネイルのプレビュー
解析が終了すると、これらのエンティティごとのチェックボックスに次のシンボルを使用して結果が表示されます。
リカバリが可能である | |
部分的にリカバリが可能である | |
ステータスを特定できない | |
リカバリができない | |
存在しない |
たとえば、次のドキュメントのステータスは、ページ レイアウトがリカバリ可能で、レイアウト内のマップは部分的にリカバリが可能であるこをと示しています。スタイル ギャラリーはリカバリできません(一般的に、ドキュメントがコンピュータ上にないスタイル ギャラリーを参照していることに起因します)。サムネイルのプレビューは存在せず、VBA(Visual Basic for Applications)プロジェクトのステータスは特定できません。VBA コードがプロジェクトにない場合、VBA プロジェクト エンティティはドキュメントに含まれません。これはエラーではありません。次の図をご参照ください。
MXD Doctor ユーティリティは、問題のある *.mxd を修復できるように無償で提供されています。このユーティリティを使用する前に、破損した *.mxd ファイルのバックアップ コピーを作成してください。既存の *.mxd ファイルをリカバリ先のファイルとして使用する場合は、そのファイルのコピーも作成してください。
MXD Doctor は、破損した *.mxd ファイルから有効なエンティティを抽出することを目的としています。ただし、これは、1 つの *.mxd ファイルから別の *.mxd ファイルに内容をコピーする方法として、有効な *.mxd ファイルからエンティティを取得するために使用することもできます。また、破損した ArcScene(*.sxd)ドキュメントまたは ArcGlobe(*.3dd)ドキュメントから VBA プロジェクトを抽出するためにも使用できます。この機能は、リカバリ先のドキュメントが既存のドキュメントである場合にのみ利用できます。MXD Doctor ユーティリティを起動する前に、ArcScene または ArcGlobe を使用して空のリカバリ先ドキュメントを作成してください。[MXD Doctor] ダイアログ ボックスでリカバリ元ドキュメントとリカバリ先ドキュメントのファイル名を指定するには、正しいフォルダを参照し、ドキュメントのファイル名を入力します(ブラウザは *.mxd ファイルと *.mxt ファイルを対象にしているため)。
MXD Doctor のインタフェースを使用するには、次の手順に従います。
- 破損したファイルのバックアップを作成します。既存のファイルをリカバリ先のファイルとして使用する場合は、そのファイルのバックアップも作成します。
-
MXDDoctor.exe を実行します。
次の図のように [MXDDoctor 警告(MXDDoctor Warning)] ダイアログ ボックスが開き、ドキュメントのバックアップを作成するように指示します。
- ステップ 1 でドキュメントのバックアップ コピーをすでに作成したので、[はい(Yes)] をクリックして続行します。
[MXD Doctor] ダイアログ ボックスが開きます。
- 参照 ボタンをクリックして、*.mxd ファイルを参照します。
- 修復する破損した *.mxd ファイルまで移動して選択します。
マップ ドキュメントの検証に時間がかかる場合があることを知らせる警告のダイアログ ボックスが表示されます。[OK] をクリックして続行します。
ファイル名がテキスト ボックスに追加され、ドキュメントが解析されます。解析の結果が [ドキュメントのステータス(Document Status)] フレームに表示されます。
- *.mxd ファイルが解析されたら、それを新しい *.mxd ファイルにエクスポートする前に、次の操作のどちらかまたは両方を実行して、取得するエンティティを特定します。
- 破損した *.mxd ファイルの内容をプレビューして、破損したドキュメントから取得するエンティティを特定します。リカバリ可能なエンティティのみがプレビュー可能です。
次の図は、プレビュー中の [MXD Doctor] ダイアログ ボックスを示しています。
ドキュメント内に複数のマップ(データ フレーム)がある場合は、[インデックス] コンボ ボックスでプレビューするマップを選択できます。マップのインデックスおよび名前がコンボ ボックスに表示されます。マップおよびページ レイアウトの画面移動とズームはサポートされています。表示できるのはサムネイル ビューのみです。
- 破損した *.mxd ファイルに含まれているすべてのエンティティの診断レポートを生成します。これを行うには、[生成(Generate)] をクリックします。結果が [ビューア(Viewer)] フレームの [レポート(Report)] タブに表示されます。
このレポートの内容を使用して、破損している可能性のあるエンティティを特定できます。必要に応じて、このレポートは、[保存(Save)] ボタンをクリックしてテキスト ファイルとして保存することも、[印刷(Print)] ボタンをクリックして印刷することもできます。
- 破損した *.mxd ファイルの内容をプレビューして、破損したドキュメントから取得するエンティティを特定します。リカバリ可能なエンティティのみがプレビュー可能です。
- [処理(Treatment)] タブをクリックします。
[処理(Treatment)] タブが開き、デフォルトで新しいドキュメント名が [リカバリ先 MXD ファイル(Target MXD File)] テキスト ボックスに表示されます。これは、新しいマップ ドキュメントが作成されることを示します。デフォルトでは、これは破損したドキュメントと同じフォルダにある同じ名前の末尾に _new が付加されたドキュメントです。
- リカバリ先の *.mxd ファイルの名前と場所を指定します。次のいずれかを実行できます。
- デフォルトの名前と場所を使用する。
- 新しいドキュメントの別の名前および別の場所を指定する。
- 既存のマップ ドキュメントをリカバリ先として選択する。
- 処理オプションを指定する。
- すべてのリカバリ可能なエンティティをリカバリ先のファイルに転送する場合は、[有効なエンティティをすべて転送する(Transfer all non broken)] オプションをオンにし、ステップ 11 に進みます。
- 破損したドキュメントからコピーされるリカバリ可能なエンティティを制御する場合は、[有効なエンティティをすべて転送する(Transfer all non broken)] をオフにする。制御するオプションは、[ページ レイアウトとマップ(PageLayout and Maps)] と [その他(Miscellaneous)] の 2 つの主要なカテゴリに分類されます。[ページ レイアウトとマップ(PageLayout and Maps)] オプションを選択するには、[有効] チェックボックスがオンになっている必要があります。次の例は、[ページ レイアウトと有効なマップ(PageLayout and Valid Maps)] をリカバリするために選択されているオプションを示しています。
- [有効なエンティティをすべて転送する(Transfer all non broken)] をオフにします。[有効(Enable)] チェックボックスをオンにし、リカバリするエンティティを選択します。
ページ レイアウトおよびマップのエンティティはリンクされ、これらには破損したドキュメントの解析によっては 4 つのオプション、および制限があります。次のようなオプションがあります。
- [ページ レイアウトと有効なマップ(PageLayout and Valid Maps)]: 破損したドキュメントからページ レイアウトと有効なマップをリカバリ先の *.mxd ファイルにコピーします。このオプションは、リカバリ先の *.mxd ファイルから既存のページ レイアウトとマップを削除します。
- [ページ レイアウトと新規マップ(PageLayout and New Map)]: 破損したマップ ドキュメントからデータ フレームのないページ レイアウトをコピーします。新しい空白のデータ フレームがページ レイアウトに追加されます。このオプションは、リカバリ先の *.mxd ファイルから既存のページ レイアウトとマップを削除します。
- [ページ レイアウトのみ(Only PageLayout)]: 破損した *.mxd ファイルからページ レイアウトのみをコピーし、リカバリ先の *.mxd ファイルからこのページ レイアウトにデータ フレームを追加します。
- [マップのみ(Only Maps)]: 破損した *.mxd ファイルからマップをコピーし、リカバリ先の *.mxd ファイルのページ レイアウトに追加します。
- [ドキュメントを修復(Fix Document)] をクリックします。
ドキュメントを修復すると、リカバリ可能なエンティティが破損したドキュメントからコピーされ、リカバリ先のドキュメントに配置されます。
処理の進行状況が [処理(Treatment)] タブの右側の領域に表示されます。
これで、エクスポートしたすべてのリカバリ可能なエンティティが、指定した *.mxd ファイルに含められます。