場所のディレクティブ クエリの最適化
手持在庫データ モデルの最近の改善により、場所のディレクティブ クエリが以前よりもはるかに高速に実行できるようになりました。 ただし、Microsoft Dynamics 365 Supply Chain Management をしばらく実行している場合は、古いデータ モデル用に設計されたクエリをまだ使用している古い場所のディレクティブが多数ある可能性があります。 この記事では、場所のディレクティブ クエリの最適化 ツールを使用して、最適ではないクエリ パターンを使用する場所のディレクティブ クエリを特定し、新しいデータ モデルで有効になる最適なクエリ アプローチが使用されるように変換する方法について説明します。
最適化アドバイザー には、クエリを最適化できるかどうかを定期的にチェックするルールが含まれるようになりました。 改善の可能性が特定された場合は、変更点を強調し、この記事で説明されているようにツールを実行することを提案する最適化アドバイザーの機会が生成されます。
重要
- 最初にユーザー受け入れテスト (UAT) 環境でツールを実行することをお勧めします。 すべてのロケーション ディレクティブが UAT 環境で期待どおりに動作し、すべての 場所のディレクティブ受け入れテスト に合格したことを確認した後でのみ、運用環境で実行してください。
- ピーク時間帯にはツールを実行しないでください。 場所のディレクティブをロックし、すべてのアプリケーション オブジェクト サーバーからフラッシュします。 したがって、ジョブの実行中は、ウェーブや作業を作成したりする速度が遅くなります。
前提条件
場所のディレクティブクエリの最適化 ツールを使用するには、Supply Chain Management 10.0.35 以降を実行している必要があります。
ツールを実行
次の手順に従って、場所のディレクティブ クエリの最適化 ツールを実行します。
Warehouse Management > 定期処理のタスク > クリーンアップ > 場所のディレクティブクエリの最適化の順に移動します。
場所のディレクティブ クエリの最適化 ダイアログ ボックスが表示されます。 最適化の範囲を制限したい場合は、含めるレコード クイックタブで フィルター を選択して、選択基準を定義できる標準のクエリ エディター ダイアログ ボックスが開きます。 このフィールドは、Supply Chain Management の他の種類のクエリの実行と同様に機能します。
バックグラウンドで実行 クイックタブで、ツールの実行方法、タイミング、および頻度を指定します。 このフィールドは、Supply Chain Management の他の種類のバックグラウンド ジョブで実行されるのと同様に機能します。
- 定期的なスケジュールを設定するのではなく、必要な場合にのみツールを実行することをお勧めします。
- 前述したように、ツールはオフピーク時間帯にのみ実行することをお勧めします。 したがって、すぐに実行するのではなく、適切な時間 (日曜日の午後8時など) に 1 回だけ実行するようにスケジュールされたバッチ ジョブとして設定することを検討してください。
OK を選択して、選択したオプションを使用してツールを実行します。
この機能の動作
ピッキングの場所のディレクティブは通常、InventSum
テーブルで利用可能な手持在庫情報に基づいて、品目をどこからピッキングするかを決定します。 通常、場所のディレクティブ クエリには、この決定が行われるときに製品バリエーションが確実に考慮されるように在庫分析コードが含まれているため、以前はこれらのクエリでは InventSum
テーブルと InventDim
テーブル間の結合が必要でした。 ただし、この一般的なクエリ パターンを最適化するために、データ モデルが非正規化されました。 必要な情報はすべて InventSum
テーブルで直接利用できるようになりました。 通常、結合操作を削除すると、場所のディレクティブ クエリのパフォーマンスが 30 ~ 50 パーセント向上します。
場所のディレクティブ クエリを最適化する ツールはすべての範囲を InventDim
から InventSum
に転送し、InventDim
への結合を削除します。