# バッチスキャンの仕組み

QV2QSは、ディレクトリを再帰的にスキャンしてQlikViewプロジェクトを自動的に検出します。

## 再帰的なディレクトリスキャン

QV2QS はバッチ ディレクトリを再帰的にスキャンし、すべてのサブフォルダーをトラバースして QlikView プロジェクト ファイルを検出します。スキャナーは、`.qvw` ファイルと `.qvf` ファイルの両方を検索します。QlikView 12.70 以降ではデフォルトでドキュメントを `.qvf` として保存できるため、形式が変更された環境でファイルの見落としを防ぐために、スキャナーは両方の拡張子をチェックします。QVW および QVF 形式の詳細については、[システム要件](https://help.qlik.com/ja-JP/migration/Content/Qv2qsMigration/getting-started/system-requirements.htm)を参照してください。

見つかった各 QVW または QVF ファイルについて、QV2QS は同じディレクトリ内で一致する PRJ アーティファクトを検索します:

* PRJフォルダー (`<Name>-prj/`)
* PRJ zipファイル（`<Name>-prj.zip`）

名前が一致している必要があります（大文字と小文字は区別されません）。同じソースファイルに対してPRJフォルダーとPRJ zipの両方が存在する場合、フォルダーが優先されます。対応するPRJアーティファクトがないソースファイルは、スキャン結果で欠落として報告されます。

QV2QS はスキャン時に一般的な非プロジェクトディレクトリをスキップします: `.git`、`.svn`、`.hg`、`node_modules`、`build`、`dist`、`venv`、`__pycache__`、およびピリオドで始まるディレクトリ。出力パスがスキャンルート内にある場合、出力ディレクトリも除外されます。

結果は、並び順を予測可能にするため、相対ディレクトリパスとファイル名でソートされます。

## 複数のディレクトリのスキャン

複数のディレクトリをスキャンするには、パスをセミコロンで区切ります。QV2QSはネストされたパスの重複を自動的に排除します。あるパスが別のパスのサブディレクトリである場合、親パスのみがスキャンされます。

```
QV2QS.exe --batchDir "C:\Projects\Region1;C:\Projects\Region2" --outputDir C:\Output --unbuildOnly
```

## Web UI でのスキャン

Web UIでは、プロジェクトステップで視覚的なバッチスキャンワークフローを提供します。バッチ ディレクトリ フィールドに 1 つ以上のフォルダー パスを入力し、フォルダーのスキャンをクリックします。スキャン結果は、2つのビューを持つモーダルに表示されます:

* ツリービュー — 展開/折りたたみが可能な階層型フォルダーツリー。各フォルダーには、QVW の総数、ペアリングされたプロジェクト、および不足している PRJ フォルダーの数が表示されます。大きなツリー内を移動するには、すべて展開とすべて折りたたむを使用します。
* リストビュー — フォルダーパス順に並べ替えられた、同じ列を持つフラットなテーブル。最下部の集計行に合計が表示されます。

モーダルヘッダーにはKPIカウントが表示されます: 合計ペア数、欠落しているPRJ、合計QVW数。PRJの自動生成が有効になっている場合、不足しているPRJエントリには自動生成インジケーターが表示されます。

検索フィールドを使用して、名前またはパスで結果を絞り込みます。チェックボックスを使用して特定のサブフォルダーを選択し、それらのフォルダーのみをバッチに含めます。何も選択されていない場合、すべてのフォルダーが含まれます。選択内容を適用するには、承認をクリックします（選択内容が元のスキャンと異なる場合、ボタンは変更を承認に変わります）。大規模なディレクトリツリーでは、モーダルを最大化して全画面表示にすることができます。

## 詳細を見る

* [PRJの自動生成](https://help.qlik.com/ja-JP/migration/Content/Qv2qsMigration/batch-conversion/automatic-prj-generation.htm)
* [並列実行](https://help.qlik.com/ja-JP/migration/Content/Qv2qsMigration/batch-conversion/parallel-execution.htm)
* [出力構造とアプリの命名](https://help.qlik.com/ja-JP/migration/Content/Qv2qsMigration/batch-conversion/output-structure-and-app-naming.htm)