> ## Documentation Index
> Fetch the complete documentation index at: https://docs.alforse.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 需要予測

> 製造部品について今後 52 週分の週次需要の見込みを入力し、受注が届く前に MRP が製造指図と購買を計画できるようにします。実際の受注は予測に加算されるのではなく、予測を消費します。

受注は、製造や購入が間に合わないほど遅れて届くことがよくあります。需要予測を使うと、計画担当者が部品の週ごとの必要量を事前に示せるため、MRPが今から製造指図と購買の計画を始められます。実際の受注が入ると、予測に上乗せされるのではなく、予測を使い切っていきます。

## 概要

| 質問 | 回答 |
| - | - |
| 予測はどこで入力しますか？ | **生産 → 所要量予測** |
| どのアイテムが対象ですか？ | 製造部品のみ |
| どの粒度ですか？ | 部品ごと、ロケーションごと、週ごとに 1 つの数量 |
| どこまで先ですか？ | 入力グリッドで 52 週 |
| 誰が編集できますか？ | `production` 権限を持つユーザー |
| どのプランですか？ | Business と Partner |

Alforse は予測を自動計算しません。履歴、季節性、統計モデルは使用されません。数値は自分で入力し、ネッティングと部品表の展開は MRP が行います。

### 製造部品のみが対象の理由

フォームのアイテムピッカーに表示されるのは、自社で製造する部品だけです（`type="Part"` かつ `replenishmentSystem="Make"` に限定）。購入する構成品にも所要量は生じます。MRP が製造部品の部品表を展開するときにそこへ展開するため、それ自体の予測は不要です。

### 入力と出力

NOTE

**似た名前の 2 つのテーブル**

入力した数値は `demandProjection` に入ります。これが**入力**です。MRP は、展開した構成品ごとの所要量を `planningDemandForecast` に書き込みます。これが**出力**で、実行のたびに再生成され、手動で編集されることはありません。所要量予測画面が読み書きするのは、常に `demandProjection` だけです。

`demandProjection` には、アイテム、ロケーション、週次期間ごとに 1 行があり、`quantity` を保持します。週次期間は、グリッドが今日から先へ進むにつれて作成されます。

## 予測を入力する

1. **生産 → 所要量予測**を開き、予測を追加します。
2. **アイテム**と**ロケーション**を選択します。
3. 週ごとの数量を入力します。52 週のセルは 4 つの四半期タブに分かれています。第 1 週が今週で、すべてのセルに暦日付が付いています。グリッドの隣にある棒グラフと折れ線グラフが、入力中に週ごとと累計の所要量をプロットします。
4. 保存します。次回の MRP 実行で新しい数値が使用されます。

| フィールド | 必須 | 意味 |
| - | - | - |
| **アイテム** | はい | 予測する製造部品。調達方式が**製造**の部品のみが一覧に表示されます。 |
| **ロケーション** | はい | 所要量が発生する在庫ロケーション。ロケーションごとに別の数値を持つため、工場ごとに異なる値を設定できます。 |
| **第 1 週 … 第 52 週** | いいえ | 今週以降の、その週に消費される見込みの数量。空欄またはゼロの場合は何も保存されません。 |

### 保存、編集、削除

* **保存**では、数量のある週だけが保存されます。セルをゼロにすると、ゼロを保存するのではなくその週の行が削除されるため、データは疎なままです。
* 部品を**編集**すると、保存された週がグリッドに読み込まれます。
* 部品の予測を**削除**すると、見ているタブだけでなく、そのアイテムとロケーションの将来の週がすべて消去されます。

### 一覧

一覧画面は今後 48 週をカバーし、保存された行を週の列に戻して読みやすくします。最初の列のラベルは「今週」（Present Week）です。

## MRP が予測を使う仕組み

計画は Alforse のバックエンドで実行され、`demandProjection` を所要量の供給源の 1 つとして直接読み取ります。

### 実際の受注が予測を消費する

予測は、まだ受け取っていない受注の見積りなので、受注が届いたときにそれに加算されてはいけません。MRP は実行のたびに、未完了の受注明細と製造指図の材料明細を、同じ部品とロケーションの予測に対して相殺し、予測の残り、つまり*未消費の残余*だけを引き続き数えます。要するに、**実際の所要量が予測を消費する**のです。

| その週の予測 | 実際の受注 | MRP が計画する所要量 |
| - | - | - |
| 10 | 10 | 10（20 ではない） |
| 10 | 12 | 12 |

受注は、まずその週の予測を消費します。その後、許可した週数だけ、過去方向、次に未来方向へと遡って消費します。

### 消費ウィンドウ

範囲は、**設定 → 計画**の**予測消費**カードで、**遡る（週）**と**先を見る（週）**を使って全社で設定します。新しい会社では、どちらも 0 で始まり、ネッティングは同じ週の中に限定されます。

予測にばらつきがある場合は、ウィンドウを広げると役立ちます。たとえば、ある週に 10、次の週に 0 を予測したとします。この場合、予測のない週に日付がある受注は、二重に数えられるのではなく、隣の週の 10 を消費できます。予測が週単位で正確な場合は、両方を 0 のままにしてください。

実行のたびに、消費された量が `demandProjection.consumedQuantity` に保存されます。計画画面、アイテムの計画チャート、在庫はすべてこの同じ値を読み取り、実際の所要量が使われた週ごとに、編集フォームに「N 消費済み」と表示されます。

### 予測を消費する受注

| 受注 | 予測を消費するか |
| - | - |
| 未完了の受注 | する。未完了の全数量で消費します。リンクされた製造指図がすでに賄っている受注生産の明細でも同様で、予測がその明細を見込んでいたためです。 |
| 今週より前の日付の受注 | しない。ただし所要量としては数えられます。 |
| 日付のない受注 | する。今が納期として扱われます。 |

過ぎた週の予測は、単に計画期間から外れます。幻の所要量として残ることはありません。

NOTE

**すでに進行中の作業は供給側で計上されます**

消費は、予測と実際の*受注*のバランスを取るだけです。すでに開いている製造指図と発注書は、*供給*として別に扱われます。部品表の展開中に、確定した製造指図と発注書の供給が、運用中の手持と供給の残高に対して一度だけ計上されます。そのため、進行中の製造指図で一部が賄われている予測が二重に計画されることはなく、2 つの仕組みが重複することはありません。

### 予測から構成品の所要量へ

予測の残りは、実際の所要量（未完了の受注明細と未完了の製造指図の材料）に加算されて、総所要量になります。MRP は、各製造部品の製法を展開して所要量を構成品に伝え、その結果を `planningDemandForecast` に書き込みます。並行して、`planningDemandContribution` テーブルが、すべての単位に `"Sales Order"`、`"Job Material"`、`"Demand Projection"` のいずれかの発生元のタグを付けます。そのため、部品の計画ページで任意の週を開くと、どの予測、受注、親の製造指図がその所要量を構成しているかを正確に確認できます。

HEADS UP

**MRP は提案し、発注するのはあなたです**

予測された所要量は、*提案*された製造指図と発注書になり、あなたが対応するまで何も作成されません。提案がどのように表示され、どのように変換するかは[計画（MRP）](https://docs.alforse.com/ja/docs/reference/planning.md)で説明しています。予測が何になるかを決める、部品ごとの設定（リードタイム、ロットサイズ、安全在庫）は[発注方針](https://docs.alforse.com/ja/docs/reference/reordering.md)で説明しています。

## 技術リファレンス

| トピック | 詳細 |
| - | - |
| アイテムピッカーのフィルター | `apps/erp/app/modules/production/ui/DemandProjection/DemandProjectionForm.tsx` の `type="Part"`、`replenishmentSystem="Make"`（四半期タブとチャートを持つドロワーも同様） |
| 保存 | 各 `week{i}` が `period` ID と組み合わされ、`apps/erp/app/routes/x+/production+/demand-forecasts.$itemId.$locationId.tsx` で upsert されます。ゼロのセルは `products/supply-and-production-planning/src/forecast/native-forecast.server.ts` の `upsertDemandProjections` によって削除されます |
| 削除 | `apps/erp/app/routes/x+/production+/demand-forecasts.delete.$itemId.$locationId.tsx` |
| 入力グリッドの長さ | `demand-forecasts.new.tsx` と `demand-forecasts.$itemId.$locationId.tsx` の両方の `WEEKS_TO_PROJECT = 52` |
| 一覧の長さ | `apps/erp/app/routes/x+/production+/demand-forecasts.tsx` の `WEEKS_TO_PROJECT = 12 * 4`。ピボットと「今週」ラベルは `apps/erp/app/modules/production/ui/DemandProjection/DemandProjectionTable.tsx` にあります |
| 計画のエントリポイント | `runMrp`、`products/supply-and-production-planning/src/planning-seam/index.ts` |
| 予測の再構築 | `products/supply-and-production-planning/src/modules/planning-and-mrp/planning-run.ts` |
| 所要量の系統 | `products/supply-and-production-planning/src/modules/planning-and-mrp/mrp-engine.ts` |
| プラン機能 | `FORECAST`、`kernel/entitlements/src/plan.ts` |
| 未使用の列 | スキーマは `forecastMethod` と `confidence` を予約していますが、所要量予測フォームはそれらを書き込みません。 |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.