# Injection Plan (I/J Plan) — one Detail Plan per Work Order, grouped by the system into a Big Plan by Style + Model + Base Color + Plan Month (not by Area); the Planner plans injection on the Big Plan (Order & Overrun) and releases it — the system creates one raw-material SO PR for Purchase; Mold Calculate by month + Model + Base Color; the Warehouse Staff calculates compound from the Part BOM

> Fine Chemical (FC) · MES module · v1.3 · 09/10/2026 · Standard flow — for implementation, testing and development
>
> Generated from the diagram by `sync.js` — do not edit by hand. The diagram is authoritative: report any mismatch with the diagram page.
>
> Diagram page: /en/mes/injection-plan

## How to read

- Every box on the diagram has a code `Bxx`, numbered in flow order (from the start event, following the arrows).
- "Goes to" lists every arrow leaving the box; text in square brackets is that arrow's condition label.
- "Optional branch" = a dashed arrow on the diagram: may be done or skipped.
- "Data" boxes in the Input lane are incoming data; in the Output lane they are results / end points of the flow.

## Process Flow (swimlane)

### Roles (lanes)

- Input
- Planner
- Warehouse Staff
- Output

### Steps

| Code | Role | Type | Content | Platform · Screen | Goes to |
| --- | --- | --- | --- | --- | --- |
| B01 | Input | Data | Work Order RELEASED (from Master Plan) |  | B09 |
| B02 | Input | Data | Grouping key on WO: Style · Model · Base Color · P.O Month |  | B11 |
| B03 | Input | Data | WO Q'ty per size (SO allocation + Common Stock) |  | B15 |
| B04 | Input | Data | Confirmed A-grade output (POP) |  | B27 |
| B05 | Input | Data | P.O of the Model · Base Color in the month |  | B37 |
| B06 | Input | Data | INV Mold Q'ty from Mold Management |  | B39 |
| B07 | Input | Data | Master data: Part BOM (Part + Gate Weight) | Master data | B50 |
| B08 | Input | Data | Master data: Item RAWMATERIAL | Master data | B51 |
| B09 | Planner | Start | Start |  | B10 |
| B10 | Planner | Task | Create a Detail Plan for each WO | System (auto) · I/J Plan | B11 |
| B11 | Planner | Decision | Big Plan with the same key NEW / DRAFT? |  | B12 [No]; B13 [Yes] |
| B12 | Planner | Task | Create Big Plan NEW per grouping key | System (auto) · I/J Plan | B13 |
| B13 | Planner | Task | Attach Detail Plan to the Big Plan | System (auto) · I/J Plan | B14 |
| B14 | Planner | Task | Open Big Plan (Detail on Big Plan row) | Web · I/J Plan | B15 |
| B15 | Planner | Task | Sum Order Q'ty per size over WOs | System (auto) · I/J Plan | B16 |
| B16 | Planner | Task | Enter Overrun % per size for Big Plan | Web · I/J Plan | B17 |
| B17 | Planner | Task | Calculate Planning Q'ty Big Plan · each WO | System (auto) · I/J Plan | B18 |
| B18 | Planner | Task | Save Plan | Web · I/J Plan | B19 |
| B19 | Planner | Decision | Each WO: Σ Order Q'ty = WO Q'ty? |  | B20 [No]; B21 [Yes] |
| B20 | Output | Data | Save blocked — total Order Q'ty differs from WO Q'ty |  | (end) |
| B21 | Planner | Task | Save plan · Big Plan → DRAFT | System (auto) · I/J Plan | B22 |
| B22 | Planner | Task | Release Big Plan | Web · I/J Plan | B23 |
| B23 | Planner | Task | Big Plan RELEASED · lock plan | System (auto) · I/J Plan | B24; B25 |
| B24 | Output | Data | Big Plan RELEASED → Injection Schedule (injection plan) |  | (end) |
| B25 | Planner | Decision | Big Plan already has an SO PR? |  | B26 [No]; B27 [Yes] |
| B26 | Planner | Task | Create SO PR from Final Need | System (auto) · I/J Plan | B28; B27 |
| B27 | Planner | Task | Update Produced · Remaining | System (auto) · I/J Plan | B29 |
| B28 | Output | Data | SO PR (Requested) → Purchase makes the PO → warehouse receives raw materials (WMS Inbound) |  | (end) |
| B29 | Planner | Decision | Every Detail Plan reached Order Q'ty? |  | B30 [No]; B31 [Yes] |
| B30 | Planner | Task | View report I/J Production Plan | Web · I/J Plan | B32 |
| B31 | Planner | Task | Move Big Plan to COMPLETED | System (auto) · I/J Plan | B33; B34 |
| B32 | Output | Data | Report I/J Production Plan (Remaining) → schedule more shifts |  | (end) |
| B33 | Output | Data | Big Plan COMPLETED (Order Q'ty reached) |  | (end) |
| B34 | Planner | End | End |  |  |
| B35 | Planner | Start | Monthly mold calc |  | B36 |
| B36 | Planner | Task | Select P.O (Month) · Model · Base Color | Web · I/J Plan | B37 |
| B37 | Planner | Task | Sum Total Monthly Order Q'ty theo size | System (auto) · I/J Plan | B38 |
| B38 | Planner | Task | Enter Cycle · Need Mold Q'ty theo size | Web · I/J Plan | B39 |
| B39 | Planner | Task | Calculate Shortage Mold = INV − Need | System (auto) · I/J Plan | B40 |
| B40 | Planner | Decision | Any size with Shortage Mold < 0? |  | B41 [Yes]; B42 [No] |
| B41 | Planner | Task | Mark Shortage Mold red | System (auto) · I/J Plan | B43; B42 |
| B42 | Planner | Task | Save Calculation | Web · I/J Plan | B44 |
| B43 | Output | Data | Shortage Mold theo size — warning only |  | (end) |
| B44 | Planner | Decision | Cycle > 0 and source P.O exists? |  | B45 [No]; B46 [Yes] |
| B45 | Output | Data | Save Calculation blocked |  | (end) |
| B46 | Planner | Task | Save per month · Model · Base Color | System (auto) · I/J Plan | B47 |
| B47 | Planner | End | End |  |  |
| B48 | Warehouse Staff | Start | Calculate compound |  | B49 |
| B49 | Warehouse Staff | Task | Open Compound Calculate of Big Plan | Web · I/J Plan | B50 |
| B50 | Warehouse Staff | Task | Compute Need Compound by size | System (auto) · I/J Plan | B51 |
| B51 | Warehouse Staff | Task | Pick Item Code · mix ratio | Web · I/J Plan | B52 |
| B52 | Warehouse Staff | Task | Enter Material Overrun % | Web · I/J Plan | B53 |
| B53 | Warehouse Staff | Task | Compute Final Need · Need (kg) | System (auto) · I/J Plan | B54 |
| B54 | Warehouse Staff | Task | Save Plan | Web · I/J Plan | B55 |
| B55 | Warehouse Staff | Decision | Any raw material with ratio > 0? |  | B56 [No]; B57 [Yes] |
| B56 | Output | Data | Compound not saved — no raw material |  | (end) |
| B57 | Warehouse Staff | Task | Save Compound of Big Plan | System (auto) · I/J Plan | B58 |
| B58 | Warehouse Staff | End | End |  |  |
| B59 | Planner | Start | Revision needed |  | B60 |
| B60 | Planner | Task | Click Revision | Web · I/J Plan | B61 |
| B61 | Planner | Decision | Every WO of Big Plan Produced = 0? |  | B62 [No]; B63 [Yes] |
| B62 | Output | Data | Revision blocked — a WO already has output |  | (end) |
| B63 | Planner | Task | Open Revision draft | System (auto) · I/J Plan | B64 |
| B64 | Planner | Task | Edit Overrun · Save Plan | Web · I/J Plan | B65 |
| B65 | Planner | Task | Archive the old version · Big Plan → DRAFT | System (auto) · I/J Plan | B66; B67 |
| B66 | Output | Data | Big Plan DRAFT — Injection Schedule keeps booked shifts, blocks new shifts |  | (end) |
| B67 | Planner | Task | Re-release Big Plan | Web · I/J Plan | B68 |
| B68 | Planner | Task | Big Plan RELEASED · re-lock plan | System (auto) · I/J Plan | B69; B70 |
| B69 | Output | Data | New injection plan → Injection Schedule |  | (end) |
| B70 | Planner | End | End |  |  |

### Step details (hover content on the diagram)

#### B10 · Create a Detail Plan for each WO

- Planner · System (auto) · I/J Plan
- Comes from: B09
- Goes to: B11 · Big Plan with the same key NEW / DRAFT?

> The system creates one Detail Plan for each Work Order just released in Master Plan.  
> When: the Planner clicks "Release Work Order" in Master Plan.  
> System: copies the WO number, "Q'ty", "P.O (Month)" (= the Master Plan's Plan Month), "Style", "Model", "Base Color", "Area", "Destination", "SPRAY / Logo", "Start I/J Date", "I/J ETC", "Priority" into the Detail Plan; "Area" is for display only and is not part of the grouping key; the Planner cannot add or delete Detail Plans.  
> Result: the Detail Plan has no status of its own, the "Status" column shows "—".  
> Blocked when: the Master Plan is still DRAFT — its WOs do not appear in I/J Plan.  
> Test:  
> - Master Plan with 4 WOs, click "Release Work Order" → I/J Plan gets 4 new Detail Plans  
> Source: BRD IJ v0.3 §6.1 step 1, FR-IJ-01, BR-IJ-01 · Q-20260928-01 (item 1) · Q-20261001-03 · Q-20261002-01 · prototype v0.68  

#### B11 · Big Plan with the same key NEW / DRAFT?

- Planner
- Comes from: B02, B10
- Goes to [No]: B12 · Create Big Plan NEW per grouping key
- Goes to [Yes]: B13 · Attach Detail Plan to the Big Plan

> Does the WO already have an open Big Plan with the same grouping key?  
> Yes: a NEW or DRAFT Big Plan has the same Style + Model + Base Color + P.O Month (= Plan Month) as the WO → the Detail Plan joins that Big Plan.  
> No: no NEW / DRAFT Big Plan with that key → the system creates a new Big Plan.  
> System: the key excludes Area, SPRAY/Logo, Destination and Part BOM — a SPRAY WO and a Logo WO with the same key share one Big Plan; WOs from two Master Plans of different Areas with the same key also share one Big Plan; a different month means two Big Plans.  
> Test:  
> - 4 WOs OOriginal Black 2026.Aug: 2 WOs from Master Plan Europe (SPRAY, Logo), 2 WOs from Master Plan Asia (SPRAY, Logo) → one Big Plan "4 WO"  
> - 2 WOs with the same Style, Model, Base Color; one 2026.Aug, one 2026.Sep → 2 Big Plans  
> Open: where a new WO goes when its key only has a RELEASED or COMPLETED Big Plan (OQ-IJ-13); prototype v0.68 still splits Big Plans by Area (one "Area" value per Big Plan).  
> Source: Q-20261002-01 · Q-20261001-02 (D1) · Q-20261001-03 · prototype v0.68  

#### B12 · Create Big Plan NEW per grouping key

- Planner · System (auto) · I/J Plan
- Comes from: B11
- Goes to: B13 · Attach Detail Plan to the Big Plan

> The system creates a new Big Plan for a grouping key that has no NEW / DRAFT Big Plan.  
> Result: Big Plan status NEW; the Big Plan row shows "n (Big Plan)", the key's "P.O (Month)", "Style", "Model", "Base Color", and leaves "Destination", "SPRAY / Logo", dates and "Priority" blank.  
> Open: what the Big Plan row's "Area" column shows when the Big Plan groups WOs of several Areas — prototype v0.68 shows one Area per Big Plan; proposal: leave it blank like "Destination", not confirmed.  
> Source: BRD IJ v0.3 MH-01, FR-IJ-01 · Q-20261002-01 · Q-20261001-02 (D1) · prototype v0.68  

#### B13 · Attach Detail Plan to the Big Plan

- Planner · System (auto) · I/J Plan
- Comes from: B11, B12
- Goes to: B14 · Open Big Plan (Detail on Big Plan row)

> The system places the Detail Plan under the Big Plan with the same grouping key on the "I/J Plan List".  
> Result: the Detail Plan row shows "n-m" (n = parent Big Plan number); the Big Plan's "WO" column shows the number of WOs grouped (e.g. "4 WO"); the Big Plan "Q'ty" = sum of the Detail Plans' "Q'ty".  
> Result: "Detail" on a Detail Plan row opens a read-only page of the WO's Order Q'ty and Planning Q'ty per size, banner "Read-only · Detail Plan 1-1 is planned on Big Plan 1. Open the Big Plan to change Overrun or Compound."; no input cells, no "Save Plan", "Revision" or "Request MOR".  
> Test:  
> - 4 WOs 300 + 400 + 200 + 600 with one grouping key → Big Plan "4 WO", Q'ty 1,500  
> - Open "Detail" of Detail Plan 1-2 → every cell is read-only  
> Source: BRD IJ v0.3 MH-01 (11, 12), FR-IJ-01 · Q-20260930-08 (item 2) · Q-20261001-04 · prototype v0.54  

#### B14 · Open Big Plan (Detail on Big Plan row)

- Planner · Web · I/J Plan
- Comes from: B13
- Goes to: B15 · Sum Order Q'ty per size over WOs

> The Planner opens the Big Plan page to plan injection once for every WO of the Big Plan.  
> When: editable while the Big Plan is NEW or DRAFT; read-only when RELEASED or COMPLETED.  
> Action: I/J Plan › tab "I/J Plan" › filter "SEARCH BY MONTH", "MODEL", status buttons › "Detail" on the Big Plan row.  
> Result: the page has two steps "Step 1 · Order & Overrun" → "Step 2 · Compound Calculate" and opens on step 1 (footer "Step 1 of 2"); top right shows "Big Plan n · <status>".  
> Test:  
> - Big Plan 1 DRAFT with 4 WOs → Big Plan 1 page, Step 1 editable  
> Source: BRD IJ v0.3 §6.1 step 2, MH-02 · Q-20260930-07 (item 3) · Q-20260930-08 (item 1) · prototype v0.54  

#### B15 · Sum Order Q'ty per size over WOs

- Planner · System (auto) · I/J Plan
- Comes from: B03, B14
- Goes to: B16 · Enter Overrun % per size for Big Plan

> The system sums the ordered quantity per size over every WO of the Big Plan.  
> Action: "Step 1 · Order & Overrun" › row "ORDER Q'TY" ("Sum of the Work Orders in this Big Plan", read-only), the Total column is the sum of sizes.  
> System: a Detail Plan's Order Q'ty = the WO Q'ty per size, SO allocation plus Common Stock; Big Plan Order Q'ty of a size = Σ Order Q'ty of that size over its Detail Plans; the Planner cannot edit it.  
> Test:  
> - Two WOs, size M3/W5 = 19 + 11 → Big Plan Order Q'ty M3/W5 = 30  
> - WO of 1,100 pairs (SO allocation 1,000 + Common Stock 100) → Detail Plan Order Q'ty 1,100  
> Open: the prototype spreads an "illustrative size allocation" instead of the WO's real size quantities.  
> Source: BRD IJ v0.3 MH-02 (8), BR-IJ-07 · Q-20261001-02 (D3) · Q-20260930-08 (Interpretation)  

#### B16 · Enter Overrun % per size for Big Plan

- Planner · Web · I/J Plan
- Comes from: B15
- Goes to: B17 · Calculate Planning Q'ty Big Plan · each WO

> The Planner enters the safety overrun rate per size, once for the whole Big Plan.  
> Action: "Step 1 · Order & Overrun" › row "OVERRUN" ("User input · default 3% · enter per size").  
> System: default 3; accepts non-negative numbers only; every WO of the Big Plan uses the size's Overrun %.  
> Blocked when: the Big Plan is RELEASED or COMPLETED and no Revision is open — the cell is disabled.  
> Source: BRD IJ v0.3 MH-02 (9), FR-IJ-04 · Q-20260930-08 (item 1) · prototype v0.54  

#### B17 · Calculate Planning Q'ty Big Plan · each WO

- Planner · System (auto) · I/J Plan
- Comes from: B16
- Goes to: B18 · Save Plan

> The system computes the quantity to inject per size for the Big Plan and for each WO, including the safety overrun.  
> System: Planning Q'ty = Order Q'ty × (1 + Overrun %), rounded to the nearest integer; applied to the Big Plan total and to each WO's Order Q'ty; the footer shows "Planning Q'ty total".  
> Result: the read-only Detail Plan page shows the WO's Planning Q'ty using the Big Plan's Overrun %.  
> Test:  
> - Order 19, Overrun 3% → 19 × 1.03 = 19.57 → Planning Q'ty 20  
> Open: rounding per WO can make the sum of WO Planning Q'ty differ from the Big Plan Planning Q'ty by a few pairs — which figure rules.  
> Source: BRD IJ v0.3 FR-IJ-04, BR-IJ-09 · Q-20260930-08 (Interpretation) · prototype v0.54  

#### B18 · Save Plan

- Planner · Web · I/J Plan
- Comes from: B17
- Goes to: B19 · Each WO: Σ Order Q'ty = WO Q'ty?

> The Planner saves the Order & Overrun (Planning Q'ty) of the Big Plan.  
> When: the Big Plan is NEW or DRAFT, or a Revision is open on the Big Plan.  
> Action: Big Plan page › button "Save Plan" › popup "Save I/J Detail Plan?" ("Saving returns the Big Plan to Draft until it is released again.") › "Save Plan".  
> Blocked when: the Big Plan is locked → "This Big Plan is locked. Open a Revision before saving changes."  
> Open: prototype v0.54 blocks the Planner's "Save Plan" when no raw material is set ("Add a raw material with a positive mix ratio before saving the Big Plan.") — that message applies to Compound Calculate only; the popup title is still "Save I/J Detail Plan?".  
> Source: BRD IJ v0.3 FR-IJ-05, §6.8 · Q-20260930-07 · Q-20260930-08 (item 1) · prototype v0.54  

#### B19 · Each WO: Σ Order Q'ty = WO Q'ty?

- Planner
- Comes from: B18
- Goes to [No]: B20 · Save blocked — total Order Q'ty differs from WO Q'ty
- Goes to [Yes]: B21 · Save plan · Big Plan → DRAFT

> Does every WO of the Big Plan have its size total matching the Work Order quantity?  
> Yes: for every WO, Σ Order Q'ty of all sizes = the WO's "Q'ty" (Overrun excluded) → saved.  
> No: any WO differs, over or under → the whole Big Plan is not saved and keeps its status.  
> System: Order Q'ty is taken from the WO Q'ty per size (incl. Common Stock), so it normally always matches; the check stays to catch corrupt WO data.  
> Test:  
> - Big Plan with 2 WOs, both match → saves  
> - Second WO Q'ty 1,000, size total 999 → blocked  
> Open: the message when they differ, whether it names the WO, and the way out — Order Q'ty comes from the WO so the Planner cannot fix it (OQ-IJ-07).  
> Source: BRD IJ v0.3 FR-IJ-05, BR-IJ-08, AC-04 · Q-20260924-09 (Q-c) · Q-20261001-02 (D3)  

#### B21 · Save plan · Big Plan → DRAFT

- Planner · System (auto) · I/J Plan
- Comes from: B19
- Goes to: B22 · Release Big Plan

> The system saves the Big Plan's plan and moves the Big Plan to DRAFT.  
> Result: Big Plan NEW or DRAFT → DRAFT; Planning Q'ty of the Big Plan and of each WO is stored; message "Big Plan 1 saved as Draft · 1,548 pairs across 16 sizes."; top right shows "Saved".  
> Test:  
> - Big Plan NEW, "Save Plan" → Big Plan DRAFT, every Detail Plan shows the new Planning Q'ty  
> Open: the text "16 sizes" is fixed on the prototype while the size range depends on the Model (OQ-IJ-06).  
> Source: BRD IJ v0.3 FR-IJ-05, §6.5, AC-05 · Q-20260930-08 (item 1) · prototype v0.54  

#### B22 · Release Big Plan

- Planner · Web · I/J Plan
- Comes from: B21
- Goes to: B23 · Big Plan RELEASED · lock plan

> The Planner releases the Big Plan personally — no approver, no Reject.  
> When: the Big Plan is NEW or DRAFT.  
> Action: I/J Plan List › tick one or more Big Plan rows › button "Release" (becomes "Release (n)") › popup "Release n Big Plan(s)?" reading "Released Big Plans lock their Detail Plans; changes need a Revision. One Sales Order Purchase Request (SO PR) for the raw material (Final Need of the Compound Summary) is created automatically per Big Plan; Purchase makes the Purchase Order from it." › "Release".  
> Blocked when: nothing ticked → hint "Tick a New / Draft Big Plan in the list first", message "Select a New or Draft Big Plan to release."; Big Plan RELEASED / COMPLETED → greyed tick box, "Big Plan is Released — only New / Draft can be released".  
> Test:  
> - Tick Big Plan 1 DRAFT with 4 WOs, click "Release (1)" → RELEASED, the Big Plan's plan is locked, one SO PR exists  
> Open: whether Release needs the Big Plan saved ("Save Plan") and with Compound — per the status table a NEW Big Plan never saved can still be released (OQ-IJ-09); differs from BRD MES v1.0 §7 (Supervisor Approve) — needs customer confirmation (OQ-IJ-02).  
> Source: BRD IJ v0.3 FR-IJ-03, BR-IJ-04, AC-09, AC-10 · Q-20260928-01 (item 2) · Q-20261001-11 (OQ-94) · Q-20261009-08 · prototype v0.86  

#### B23 · Big Plan RELEASED · lock plan

- Planner · System (auto) · I/J Plan
- Comes from: B22
- Goes to: B24 · Big Plan RELEASED → Injection Schedule (injection plan)
- Goes to: B25 · Big Plan already has an SO PR?

> The system releases the Big Plan and locks the Big Plan's plan.  
> Result: Big Plan NEW / DRAFT → RELEASED; the Big Plan page shows the banner "Big Plan n is Released. Use Revision to change this Big Plan.", "Save Plan" disabled.  
> Result: the released injection plan (Planning Q'ty per size of each WO) goes to Injection Schedule; machine, mold count, injection day / shift and finish date are set in Injection Schedule, not computed in I/J Plan; the system then checks whether to create the raw-material SO PR for the Big Plan.  
> Source: BRD IJ v0.3 FR-IJ-03, BR-IJ-05, §6.8 · Q-20260930-07 (item 1) · Q-20260930-08 (item 1) · Q-20261001-11 (OQ-94) · Q-20261009-08 · prototype v0.86  

#### B25 · Big Plan already has an SO PR?

- Planner
- Comes from: B23
- Goes to [No]: B26 · Create SO PR from Final Need
- Goes to [Yes]: B27 · Update Produced · Remaining

> Does the just-released Big Plan already have an SO PR?  
> Yes: the Big Plan already has an SO PR (re-released after a Revision) → the system creates no other, the message says "<Big Plan no.> already has an SO PR".  
> No: the Big Plan has no SO PR yet → the system creates one SO PR.  
> System: each Big Plan has at most one SO PR; releasing several Big Plans at once checks each Big Plan separately.  
> Test:  
> - First Release of Big Plan 1 → SOPR-2610-0001 created  
> - Revision, Save Plan, re-release Big Plan 1 → no new SO PR, SOPR-2610-0001 unchanged  
> Open: when Final Need changes after a Revision and the Big Plan is re-released, is the old SO PR updated, cancelled or topped up by another SO PR — prototype v0.68 keeps the old SO PR.  
> Source: Q-20261001-11 (OQ-94) · Q-20261009-08 · prototype v0.86  

#### B26 · Create SO PR from Final Need

- Planner · System (auto) · I/J Plan
- Comes from: B25
- Goes to: B28 · SO PR (Requested) → Purchase makes the PO → warehouse receives raw materials (WMS Inbound)
- Goes to: B27 · Update Produced · Remaining

> The system automatically creates one SO PR so Purchase can buy the compound raw materials for the Big Plan.  
> When: as soon as the Big Plan is released and it has no SO PR yet.  
> System: each Item Code of the Compound Summary becomes one line, quantity = Final Need × ratio ÷ Σ ratios (kg, rounded to 0.1); SO PR numbers run in sequence (e.g. "SOPR-2610-0001"); status "Requested"; created by "System (on Release I/J Big Plan)".  
> Result: message "Big Plan 1 released · Sales Order Purchase Request SOPR-2610-0001 (316.2 kg) created — Purchase makes the Purchase Order from it."; Big Plan page › "Step 2 · Compound Calculate" › strip "Sales Order Purchase Request (SO PR)" shows "<no.> · Requested · <Item Code> <kg> kg · created on Release".  
> Result: Purchase makes the Purchase Order from the SO PR; once the goods arrive the warehouse receives them into the raw-material warehouse (WMS Inbound), then issues them (Stock Out) to the Mixing area against the WO / WI MOR; the SO PR issues nothing and does not change stock.  
> Test:  
> - Final Need 316.2 kg, one Item Code ratio 100 → SO PR with one line of 316.2 kg  
> - Two Item Codes at ratio 70 : 30, Final Need 100 kg → two lines of 70 kg and 30 kg  
> Open: which figures the SO PR takes when Compound is not saved at Release — prototype v0.68 takes the saved Compound, else the draft, else defaults (one Item Code "OOFOSBLACKL", Material Overrun 5%); whether the SO PR buys the whole Final Need or only the shortfall against raw-material stock (OQ-94 did not answer this part).  
> Source: Q-20261001-11 (OQ-94) · Q-20261001-10 (OQ-92) · Q-20261009-08 · prototype v0.86  

#### B27 · Update Produced · Remaining

- Planner · System (auto) · I/J Plan
- Comes from: B04, B25, B26
- Goes to: B29 · Every Detail Plan reached Order Q'ty?

> The system adds injected output to the Detail Plan and computes what is left to inject.  
> When: the Big Plan is RELEASED and an Injection shift of the WO reports output.  
> System: Produced = cumulative confirmed A-grade output per size; Remaining = max(0, Order Q'ty − Produced); Progress = Produced ÷ Order Q'ty.  
> Result: Progress is shown in the "Progress" column of the "I/J Plan List" (Detail Plan rows); Produced, Remaining and Progress are in the "I/J Production Plan" report; the Detail Plan no longer has A-grade, Curing stock or Order Balance rows.  
> Test:  
> - Q'ty 300, Produced 221 → Remaining 79, Progress 74%  
> Open: whether Produced is confirmed A-grade or total POP (OQ-IJ-11); when a POP reversal lowers Produced, does a COMPLETED Big Plan go back to RELEASED.  
> Source: BRD IJ v0.3 FR-IJ-12, FR-IJ-13, BR-IJ-17, AC-20 · Q-20260930-07 (item 2) · Q-20261001-09 · prototype v0.68  

#### B29 · Every Detail Plan reached Order Q'ty?

- Planner
- Comes from: B27
- Goes to [No]: B30 · View report I/J Production Plan
- Goes to [Yes]: B31 · Move Big Plan to COMPLETED

> Has every Detail Plan of the Big Plan reached its ordered quantity?  
> Yes: every Detail Plan has Produced ≥ Order Q'ty in every size → the Big Plan completes.  
> No: one size of one Detail Plan still has Produced < Order Q'ty → the Big Plan stays RELEASED, the Planner follows up the rest.  
> Test:  
> - Order 1,000, Planning 1,030, Produced 1,000 → Detail Plan is covered (Overrun is a buffer)  
> - One size still 1 pair short → not complete  
> Source: BRD IJ v0.3 FR-IJ-13, BR-IJ-17, AC-19 · Q-20260923-11 (item 2)  

#### B30 · View report I/J Production Plan

- Planner · Web · I/J Plan
- Comes from: B29
- Goes to: B32 · Report I/J Production Plan (Remaining) → schedule more shifts

> The Planner views the injection progress report to plan the next day.  
> When: a RELEASED Big Plan still has a Detail Plan with Remaining > 0.  
> Action: report "I/J Production Plan", export to Excel.  
> Result: list of Detail Plans with Produced, Remaining, Progress; no MIC, Cycle or Estimated Date columns; the Planner schedules further shifts in Injection Schedule.  
> Open: the report is not on the prototype yet, columns and filters have no customer template (OQ-IJ-03).  
> Source: BRD IJ v0.3 FR-IJ-14 · meeting 25/09/2026 · Q-20260930-07 · Q-20261001-09  

#### B31 · Move Big Plan to COMPLETED

- Planner · System (auto) · I/J Plan
- Comes from: B29
- Goes to: B33 · Big Plan COMPLETED (Order Q'ty reached)
- Goes to: B34 · End

> The system closes the Big Plan once every Detail Plan is fully injected.  
> Result: Big Plan RELEASED → COMPLETED; Detail Plans are view-only, no Revision, no Compound Calculate.  
> Test:  
> - Big Plan with 2 Detail Plans, the last size receives 1 more A-grade pair → COMPLETED  
> Open: short-closing when the rest will not be injected is not in the Big Plan model yet (OQ-IJ-10).  
> Source: BRD IJ v0.3 FR-IJ-13, §6.5, AC-19  

#### B36 · Select P.O (Month) · Model · Base Color

- Planner · Web · I/J Plan
- Comes from: B35
- Goes to: B37 · Sum Total Monthly Order Q'ty theo size

> The Planner selects the month, Model and color to calculate molds for — independent of each Detail Plan.  
> Action: I/J Plan › tab "Mold Calculate" (or the "Mold Calculate" button) › select "P.O (MONTH)", "MODEL", "BASE COLOR".  
> System: "P.O (MONTH)" is the Plan Month (production month) of the Master Plan, copied to the WO on Release; "MODEL" lists the Models with P.Os in the month, "BASE COLOR" lists the colors with P.Os of the Model in the month.  
> Result: a saved set shows the saved "Cycle" and "Need Mold Q'ty" and the line "Saved <date time>"; an unsaved set shows "Not saved yet".  
> Open: switching the selection with unsaved changes makes the prototype discard them without asking.  
> Source: Q-20261009-10 (request of 06/10/2026) · prototype v0.77 / v0.86 · meeting 25/09/2026  

#### B37 · Sum Total Monthly Order Q'ty theo size

- Planner · System (auto) · I/J Plan
- Comes from: B05, B36
- Goes to: B38 · Enter Cycle · Need Mold Q'ty theo size

> The system adds up all P.Os of the selected Model and Base Color in the month.  
> System: Total Monthly Order Q'ty of a size = Σ that size on every P.O of the Model and Base Color in the month ("P.O source · selected Base Color"); Big Plan quantities and Overrun do not change this figure.  
> Test:  
> - Two P.Os of the same Model and Base Color, size M3/W5 = 120 + 80 → Total Monthly Order Q'ty 200; P.Os of the same Model in another color are not added  
> Source: Q-20261009-10 (request of 06/10/2026) · prototype v0.77 / v0.86 · BRD IJ v0.3 MH-06 (8)  

#### B38 · Enter Cycle · Need Mold Q'ty theo size

- Planner · Web · I/J Plan
- Comes from: B37
- Goes to: B39 · Calculate Shortage Mold = INV − Need

> The Planner enters Cycle and the molds needed for each size.  
> Action: field "CYCLE" (default 100) · row "Need Mold Q'ty" ("User input by size") takes a non-negative whole number per size.  
> System: Shifts / Day and Working Days are gone; Need Mold Q'ty is no longer calculated from Cycle — the Planner enters it.  
> Open: Cycle takes part in no formula on the screen — what is Cycle used for (OQ-IJ-34); do this Cycle and the mold rate of Injection Schedule share one source (OQ-IJ-14).  
> Source: Q-20261009-10 (request of 06/10/2026) · prototype v0.77 / v0.86  

#### B39 · Calculate Shortage Mold = INV − Need

- Planner · System (auto) · I/J Plan
- Comes from: B06, B38
- Goes to: B40 · Any size with Shortage Mold < 0?

> The system reads the mold inventory and calculates the mold surplus / shortage by size.  
> System: INV Mold Q'ty = all molds of the Model by size in Mold Management ("Current mold inventory · view only"); Shortage Mold = INV Mold Q'ty − Need Mold Q'ty by size and in the Total column.  
> Test:  
> - INV 1, Need 3 → Shortage −2  
> - INV 2, Need 2 → Shortage 0  
> Open: are In Repair / Retired molds counted (OQ-IJ-05).  
> Source: Q-20261009-10 (request of 06/10/2026) · prototype v0.77 / v0.86 · meeting 25/09/2026  

#### B40 · Any size with Shortage Mold < 0?

- Planner
- Comes from: B39
- Goes to [Yes]: B41 · Mark Shortage Mold red
- Goes to [No]: B42 · Save Calculation

> Is the selected Model and color short of molds in any size?  
> Yes: Shortage Mold < 0 in at least one size → that size is shown in red.  
> No: every size has Shortage Mold ≥ 0 → shown in blue.  
> Test:  
> - INV 2, Need 2 → 0, blue  
> - INV 1, Need 3 → −2, red  
> Source: Q-20261009-10 (request of 06/10/2026) · prototype v0.77 / v0.86  

#### B41 · Mark Shortage Mold red

- Planner · System (auto) · I/J Plan
- Comes from: B40
- Goes to: B43 · Shortage Mold theo size — warning only
- Goes to: B42 · Save Calculation

> The system shows sizes short of molds (negative Shortage Mold) in red so the Planner can follow up with the mold team; sizes ≥ 0 are shown in blue.  
> Result: warning only; it does not block "Save Calculation", "Save Plan" or Release.  
> Open: should Shortage Mold warn on the Big Plan or constrain Release (OQ-IJ-15).  
> Source: Q-20261009-10 (request of 06/10/2026) · prototype v0.77 / v0.86  

#### B42 · Save Calculation

- Planner · Web · I/J Plan
- Comes from: B40, B41
- Goes to: B44 · Cycle > 0 and source P.O exists?

> The Planner saves Cycle and Need Mold Q'ty for the selected month, Model and color.  
> Action: button "Save Calculation".  
> Result: checked in the next step; when valid the system shows "Mold calculation saved · <month> / <Model> / <Base Color> · Need <n> / INV <n> molds."  
> Source: Q-20261009-10 (request of 06/10/2026) · prototype v0.77 / v0.86  

#### B44 · Cycle > 0 and source P.O exists?

- Planner
- Comes from: B42
- Goes to [No]: B45 · Save Calculation blocked
- Goes to [Yes]: B46 · Save per month · Model · Base Color

> Can it be saved?  
> Yes: Cycle > 0 and the P.O (Month) / Model / Base Color set has at least one P.O → saved.  
> No: Cycle is 0, negative or empty, or the set has no P.O → not saved, the system shows "Select a P.O (Month) / Model / Base Color and enter a positive Cycle."  
> Test:  
> - Cycle = 0 → blocked with an error  
> Source: Q-20261009-10 (request of 06/10/2026) · prototype v0.77 / v0.86  

#### B46 · Save per month · Model · Base Color

- Planner · System (auto) · I/J Plan
- Comes from: B44
- Goes to: B47 · End

> The system saves Cycle and Need Mold Q'ty by size for the P.O (Month) + Model + Base Color set.  
> Result: reopening the same set shows the saved figures and "Saved <date time>"; INV Mold Q'ty and Shortage Mold are recalculated from the current mold inventory.  
> Source: Q-20261009-10 (request of 06/10/2026) · prototype v0.77 / v0.86  

#### B49 · Open Compound Calculate of Big Plan

- Warehouse Staff · Web · I/J Plan
- Comes from: B48
- Goes to: B50 · Compute Need Compound by size

> The Warehouse Staff opens the compound calculation of a Big Plan.  
> When: the Planner has done "Save Plan" on the Big Plan at least once; the Big Plan is NEW or DRAFT.  
> Action: Big Plan page › "Step 2 · Compound Calculate".  
> Blocked when: the Big Plan is RELEASED or COMPLETED → all cells disabled; the Planner can only view.  
> Open: the BRD makes Compound Calculate a separate Warehouse Staff tab, prototype v0.54 puts it as step 2 of the Big Plan page the Planner opens.  
> Source: BRD IJ v0.3 §6.3, FR-IJ-09, BR-IJ-15, AC-15 · Q-20260928-01 (item 3) · Q-20260930-07 (item 3) · Q-20260930-08 (item 1)  

#### B50 · Compute Need Compound by size

- Warehouse Staff · System (auto) · I/J Plan
- Comes from: B07, B49
- Goes to: B51 · Pick Item Code · mix ratio

> The system computes compound needed per size from the Big Plan's saved Planning Q'ty and the Model's Part BOM.  
> Action: "Step 2 · Compound Calculate" › rows "Part Weight", "Gate Weight" ("Part BOM · g / pair"), "BOM" ("(Part + Gate Weight) ÷ 1000 · kg / pair"), "Need Compound" — all read-only; the "Part BOM" field shows the Model's Part BOM code (e.g. "BOM-00040") with "Size Details: Part Weight + Gate Weight".  
> System: BOM (kg / pair) of a size = (Part Weight + Gate Weight) ÷ 1000; Need Compound of a size = Planning Q'ty × BOM; Total Need = Σ Need Compound over sizes.  
> Test:  
> - Size M3/W5 Planning 316 pairs, Part Weight 300 g + Gate Weight 50 g → BOM 0.350 → 110.6 kg  
> Open: when the Part BOM has several Compound Types, is Need Compound split by Compound Type or summed — prototype v0.68 has one Part Weight / Gate Weight row per size, with sample gram figures; when the Part BOM lacks figures for a size, is saving blocked or is it counted as 0.  
> Source: Q-20261001-10 (OQ-91) · Q-20261001-02 (D2) · BRD IJ v0.3 BR-IJ-16 · prototype v0.68  

#### B51 · Pick Item Code · mix ratio

- Warehouse Staff · Web · I/J Plan
- Comes from: B08, B50
- Goes to: B52 · Enter Material Overrun %

> The Warehouse Staff picks the raw materials and mix ratio.  
> Action: row "Raw material (Item Code)" › pick an Item Code of group RAWMATERIAL · ratio cell "1 : …" (default 100); "Add Item Code" adds a row, x removes a row.  
> Blocked when: an Item Code can be picked only once per Big Plan; when all are picked "Add Item Code" is greyed ("Every raw material item is already added").  
> Source: BRD IJ v0.3 MH-05 (4, 5, 7) · prototype v0.68  

#### B52 · Enter Material Overrun %

- Warehouse Staff · Web · I/J Plan
- Comes from: B51
- Goes to: B53 · Compute Final Need · Need (kg)

> The Warehouse Staff enters the raw-material loss rate.  
> Action: cell "Material Overrun %" in the "Compound Summary" block (default 5).  
> Source: BRD IJ v0.3 MH-05 (8)  

#### B53 · Compute Final Need · Need (kg)

- Warehouse Staff · System (auto) · I/J Plan
- Comes from: B52
- Goes to: B54 · Save Plan

> The system computes the total need including loss and splits it per raw material.  
> System: Material Overrun = Total Need × Material Overrun %; Final Need = Total Need + Material Overrun; Need (kg) of an Item Code = Final Need × ratio ÷ Σ ratios.  
> Test:  
> - Total Need 110.6, Overrun 5% → 5.5 → Final Need 116.1 kg; one Item Code ratio 100 → 116.1 kg  
> Source: BRD IJ v0.3 MH-05 (6, 10, 11), BR-IJ-16, AC-13  

#### B54 · Save Plan

- Warehouse Staff · Web · I/J Plan
- Comes from: B53
- Goes to: B55 · Any raw material with ratio > 0?

> The Warehouse Staff saves the Compound Calculate result of the Big Plan.  
> When: the Big Plan is NEW or DRAFT.  
> Action: "Step 2 · Compound Calculate" › button "Save Plan".  
> Result: only the Big Plan's Compound is saved; the Big Plan status does not change.  
> Source: BRD IJ v0.3 §6.3 step 4, MH-05 (12) · Q-20260930-08 (item 1)  

#### B55 · Any raw material with ratio > 0?

- Warehouse Staff
- Comes from: B54
- Goes to [No]: B56 · Compound not saved — no raw material
- Goes to [Yes]: B57 · Save Compound of Big Plan

> Does the Big Plan have a valid raw material?  
> Yes: at least one raw-material row and Σ ratios > 0 → saved.  
> No: no row or Σ ratios = 0 → not saved, message "Add a raw material with a positive mix ratio before saving the Big Plan."  
> Test:  
> - Remove every raw-material row, click "Save Plan" → blocked with the error  
> Source: BRD IJ v0.3 FR-IJ-09, AC-14 · prototype v0.68  

#### B57 · Save Compound of Big Plan

- Warehouse Staff · System (auto) · I/J Plan
- Comes from: B55
- Goes to: B58 · End

> The system stores Final Need and Need (kg) per Item Code on the Big Plan.  
> Result: the Final Need per Item Code is what the system uses to create the SO PR when the Planner releases the Big Plan.  
> Test:  
> - Compound saved with Final Need 316.2 kg, Big Plan still DRAFT → no SO PR yet; Release → SO PR of 316.2 kg  
> Open: when the Planner changes Planning Q'ty after Compound is saved, does the system flag Compound for recalculation and block Release until it is recalculated.  
> Source: BRD IJ v0.3 FR-IJ-09 · Q-20260930-08 (item 1) · Q-20261001-11 (OQ-94)  

#### B60 · Click Revision

- Planner · Web · I/J Plan
- Comes from: B59
- Goes to: B61 · Every WO of Big Plan Produced = 0?

> The Planner opens a Revision to change the locked plan of the Big Plan.  
> When: the Big Plan is RELEASED and no Revision is open; the "Revision" button only shows then.  
> Action: Big Plan page (banner "Big Plan n is Released. Use Revision to change this Big Plan.") › button "Revision".  
> Blocked when: Big Plan NEW / DRAFT → "Big Plan <n> is already editable."; Big Plan COMPLETED → no button; the read-only Detail Plan page has no "Revision" button.  
> Source: BRD IJ v0.3 §6.4 steps 1–2, MH-04, FR-IJ-08 · Q-20260930-08 (item 4) · prototype v0.54  

#### B61 · Every WO of Big Plan Produced = 0?

- Planner
- Comes from: B60
- Goes to [No]: B62 · Revision blocked — a WO already has output
- Goes to [Yes]: B63 · Open Revision draft

> Does no WO of the Big Plan have output yet?  
> Yes: every Detail Plan of the Big Plan has Produced = 0 in every size → the Revision opens.  
> No: one WO has Produced > 0 → not opened, message "Revision not allowed — 1-1, 1-2, 1-3, 1-4 of Big Plan 1 already have injection output."; the rest is handled through Remaining.  
> Test:  
> - Big Plan with 4 WOs, all 4 Produced 0 → opens  
> - One WO Produced 1 pair, the other 3 at 0 → blocked  
> Open: the blocking message was made up by prototype v0.54 and awaits wording approval (OQ-IJ-23).  
> Source: BRD IJ v0.3 BR-IJ-06, AC-11, AC-12 · Q-20260923-10 (item 3) · Q-20260930-08 (item 4) · prototype v0.54  

#### B63 · Open Revision draft

- Planner · System (auto) · I/J Plan
- Comes from: B61
- Goes to: B64 · Edit Overrun · Save Plan

> The system keeps the Big Plan's current version as the baseline and unlocks the input cells.  
> Result: message "Revision draft opened for Big Plan 2. Save Plan retains the previous version and returns the Big Plan to Draft."; top right shows "Big Plan n · Released · Revision draft"; the Big Plan stays RELEASED and the released version remains in force.  
> Source: BRD IJ v0.3 §6.4 step 2, MH-04 (5), §6.8 · Q-20260930-08 (item 4) · prototype v0.54  

#### B64 · Edit Overrun · Save Plan

- Planner · Web · I/J Plan
- Comes from: B63
- Goes to: B65 · Archive the old version · Big Plan → DRAFT

> The Planner edits Order & Overrun of the Big Plan Revision and saves.  
> Action: "Step 1 · Order & Overrun" › edit "OVERRUN" › "Save Plan" › popup "Save I/J Detail Plan?".  
> Result: leaving without "Save Plan" keeps the Revision draft, the Big Plan stays RELEASED.  
> Blocked when: a WO has total Order Q'ty ≠ WO Q'ty (as in the main flow).  
> Source: BRD IJ v0.3 §6.4 steps 3a, 3b · Q-20260930-07 · Q-20260930-08 (item 4) · prototype v0.54  

#### B65 · Archive the old version · Big Plan → DRAFT

- Planner · System (auto) · I/J Plan
- Comes from: B64
- Goes to: B66 · Big Plan DRAFT — Injection Schedule keeps booked shifts, blocks new shifts
- Goes to: B67 · Re-release Big Plan

> The system archives the old version, saves the new one and returns the Big Plan to DRAFT.  
> Result: Big Plan RELEASED → DRAFT; the Warehouse Staff can recalculate Compound if needed; shifts already scheduled in Injection Schedule stay, and Injection Schedule blocks adding shifts for the Big Plan's WOs until the Big Plan is RELEASED again.  
> Test:  
> - WO with 2 scheduled shifts, Save Plan on the Revision → both shifts stay, a 3rd cannot be added  
> Open: where the Revision history is viewed (OQ-IJ-16).  
> Source: BRD IJ v0.3 FR-IJ-08, §6.4 · Q-20260923-11 (item 4) · Q-20260930-08 (item 4)  

#### B67 · Re-release Big Plan

- Planner · Web · I/J Plan
- Comes from: B65
- Goes to: B68 · Big Plan RELEASED · re-lock plan

> The Planner releases the Big Plan again after the Revision.  
> When: the Big Plan is DRAFT.  
> Action: I/J Plan List › tick the Big Plan › "Release (n)".  
> Source: BRD IJ v0.3 §6.4 step 4, FR-IJ-03 · Q-20261009-08 · prototype v0.86  

#### B68 · Big Plan RELEASED · re-lock plan

- Planner · System (auto) · I/J Plan
- Comes from: B67
- Goes to: B69 · New injection plan → Injection Schedule
- Goes to: B70 · End

> The system re-releases the Big Plan and locks the plan on the new version.  
> Result: Big Plan DRAFT → RELEASED; Injection Schedule continues with the new figures; the Big Plan already has an SO PR so no new SO PR is created, the message says "<Big Plan no.> already has an SO PR".  
> Open: when Final Need changes after a Revision, is the old SO PR updated, cancelled or topped up by another SO PR — prototype v0.68 keeps the old SO PR.  
> Source: BRD IJ v0.3 §6.4 step 4 · Q-20260923-11 (item 4) · Q-20261001-11 (OQ-94) · Q-20261009-08 · prototype v0.86  

## Status lifecycle

#### Big Plan (I/J Plan)

`NEW` → `DRAFT` → `RELEASED` → `COMPLETED`

Transitions:

- `NEW` -- Save Plan on Big Plan --> `DRAFT`
- `DRAFT` -- Release — Planner --> `RELEASED`
- `RELEASED` -- Every Detail Plan reaches Order Q'ty --> `COMPLETED`
- `RELEASED` -- Revision + Save Plan (every WO Produced = 0) --> `DRAFT` (back)
- `NEW` -- Release — Big Plan NEW --> `RELEASED` (back)

## Input

| # | Input | Type | Used in step |
| --- | --- | --- | --- |
| I-1 | Work Order `RELEASED` from Master Plan — WO number, Q'ty, P.O (Month) = Plan Month, Style, Model, Base Color, Area (display only), Destination, SPRAY / Logo, Start I/J Date, I/J ETC, Priority | Document — Master Plan flow | Start → Create a Detail Plan for each WO |
| I-2 | Grouping key on the WO — Style · Model · Base Color · P.O Month (= Plan Month); excludes Area, SPRAY / Logo, Destination, Part BOM | Document — Master Plan flow | Is there a NEW / DRAFT Big Plan with the same key? |
| I-3 | WO Q'ty per size — SO allocation + Common Stock, used as the Detail Plan Order Q'ty | Document — Master Plan flow | Sum Order Q'ty per size over WOs |
| I-4 | Confirmed A-grade output (POP of Injection shifts), cumulative per size | Production result — MES | Update Produced · Remaining |
| I-5 | P.O of the Model and Base Color in the month, by size | Document — Sales module | Sum Total Monthly Order Q'ty per size |
| I-6 | INV Mold Q'ty — all molds of the Model per size in Mold Management | Mold stock — Mold Management | Calculate Shortage Mold = INV − Need |
| I-7 | Part BOM of the Model — Part Weight (g) and Gate Weight (g) per size and Compound Type | Master data | Compute Need Compound per size |
| I-8 | Items of group RAWMATERIAL (raw-material Item Codes) | Master data | Pick Item Code · mix ratio |

## Step ↔ screen

| Step | Role | Screen · UI button |
| --- | --- | --- |
| Create a Detail Plan for each WO · Create Big Plan NEW per grouping key · Attach Detail Plan to the Big Plan | System (auto) | I/J Plan · tab `I/J Plan` · `I/J Plan List` (rows `n (Big Plan)` / `n-m`) |
| Open Big Plan | Planner | I/J Plan List · `Detail` on the Big Plan row → two-step Big Plan page |
| Sum Order Q'ty per size over WOs · Enter Overrun % per size for Big Plan · Compute Planning Q'ty Big Plan · each WO | System (auto) · Planner | Big Plan · `Step 1 · Order & Overrun` |
| Save Plan · Save plan · Big Plan → DRAFT | Planner · System (auto) | Big Plan · `Save Plan` → popup `Save I/J Detail Plan?` |
| View Detail Plan (each WO) | Planner | I/J Plan List · `Detail` on the Detail Plan row → read-only page (the WO's Order Q'ty, Planning Q'ty per size) |
| Release Big Plan · Big Plan RELEASED · lock Detail Plans | Planner · System (auto) | I/J Plan List · tick the Big Plan row + `Release (n)` |
| Big Plan already has an SO PR? · Create SO PR from Final Need | System (auto) | On Release Big Plan; shown on the Big Plan page · `Step 2 · Compound Calculate` · strip `Sales Order Purchase Request (SO PR)` |
| Update Produced · Remaining · Move Big Plan to COMPLETED | System (auto) | I/J Plan List · column `Progress`; report `I/J Production Plan` |
| View report I/J Production Plan | Planner | Report `I/J Production Plan` (not on the prototype yet) |
| Select P.O (Month) · Model · Base Color · Enter Cycle · Need Mold Q'ty by size · Save Calculation | Planner | I/J Plan · tab `Mold Calculate` · `Save Calculation` |
| Open Compound Calculate · Pick Item Code · mix ratio · Enter Material Overrun % · Save Plan | Warehouse Staff | Big Plan · `Step 2 · Compound Calculate` (BRD: a separate Warehouse Staff tab) |
| Click Revision · Edit Overrun · Save Plan · Release Big Plan again | Planner | Big Plan · `Revision` (every WO Produced = 0) → `Save Plan`; I/J Plan List · `Release (n)` |

## Output

| # | Output | Produced when |
| --- | --- | --- |
| O-1 | Save blocked — total Order Q'ty differs from WO Q'ty | The Planner clicks `Save Plan` on the Big Plan when a WO has Σ Order Q'ty of sizes ≠ the WO's Q'ty (Overrun excluded); the Big Plan keeps its status |
| O-2 | Big Plan `RELEASED` → Injection Schedule (injection plan) | Planner Release Big Plan `NEW` / `DRAFT`; the plan locks, Planning Q'ty per size of each WO goes to Injection Schedule — machine, mold count, injection day / shift and finish date are set in Injection Schedule |
| O-3 | SO PR (Requested) → Purchase makes the Purchase Order → goods are received into the raw-material warehouse (WMS Inbound) → Stock Out to the Mixing area against the WO / WI MOR (Material Issue & Return flow) | Automatic when a Big Plan without an SO PR is released: one Sales Order Purchase Request for the Big Plan, one line per Item Code = Final Need × ratio ÷ Σ ratios (kg), status Requested; a Big Plan that already has an SO PR (re-released after a Revision) gets no other |
| O-4 | Report I/J Production Plan (Remaining) → schedule more shifts | Big Plan `RELEASED` still has a Detail Plan with Remaining = Order Q'ty − Produced > 0; columns Produced · Remaining · Progress (no MIC, Cycle, Estimated Date) |
| O-5 | Big Plan `COMPLETED` (Order Q'ty reached) | Automatic when every Detail Plan has Produced ≥ Order Q'ty in every size (Overrun is a buffer) |
| O-6 | Shortage Mold per size — warning only | Shortage Mold = INV Mold Q'ty − Need Mold Q'ty < 0 in at least one size of the Model and Base Color in the month (red; ≥ 0 blue) |
| O-7 | Save Calculation blocked | Cycle is 0 / empty, or the P.O (Month) / Model / Base Color set has no P.O |
| O-8 | Compound not saved — no raw material | No raw-material row or Σ ratios = 0 |
| O-9 | Revision blocked — a WO already has output | The Planner clicks `Revision` when a WO of the Big Plan has Produced > 0; the rest is handled through Remaining |
| O-10 | Big Plan `DRAFT` — Injection Schedule keeps booked shifts, blocks new shifts | Planner `Save Plan` on the Revision; the old version is archived |
| O-11 | New injection plan → Injection Schedule | The Planner re-releases the Big Plan after a Revision; no new SO PR is created |

## Glossary

| Glossary | Meaning in this flow |
| --- | --- |
| `Big Plan` | Group of Detail Plans with the same grouping key Style + Model + Base Color + Plan Month (not by Area, SPRAY / Logo), showing P.O (Month) · Style · Model · Base Color; where the Planner plans (Overrun, Save Plan, Compound, Revision), at most one SO PR per Big Plan, and the only place carrying the status NEW → DRAFT → RELEASED → COMPLETED |
| `Detail Plan` | Injection plan of one Work Order, read-only; Planning Q'ty uses the parent Big Plan's Overrun % and follows the parent Big Plan status |
| `Grouping key` | Style + Model + Base Color + P.O Month (= Plan Month) of the WO — Detail Plans with the same key join one NEW / DRAFT Big Plan, including WOs from two Master Plans of different Areas |
| `Area · P.O Month` | Area of the Master Plan (delivery Country → Area), copied to the WO, display only in I/J Plan, not part of the grouping key · production month, equal to the Master Plan's Plan Month |
| `Order Q'ty` | Work Order quantity per size, including SO allocation and Common Stock |
| `Common Stock` | The part of the WO produced above the SO allocation, decided by the Planner in Master Plan; counted in Order Q'ty |
| `Overrun %` | Safety overrun rate per size, entered once for the Big Plan, default 3% |
| `Planning Q'ty` | Quantity to inject = Order Q'ty × (1 + Overrun %), rounded to nearest |
| `I/J ETC` | Injection due date of the WO, copied from Master Plan; the expected finish date is computed in Injection Schedule, not in I/J Plan |
| `Total Monthly Order Q'ty` | Total quantity of all P.Os of the Model in the month per size, all colors |
| `Need Mold · INV Mold · Shortage Mold` | Molds needed (entered by the Planner per size) · mold inventory from Mold Management (view only) · Shortage Mold = INV − Need, negative means short |
| `Mold Management` | Where molds are managed — source of INV Mold Q'ty |
| `Compound · Part BOM · BOM` | Mixed material for injection · injected-part norm per Model: Part Weight (g), Gate Weight (g) per size · BOM = (Part Weight + Gate Weight) ÷ 1000 kg / pair |
| `Need Compound · Final Need` | Planning Q'ty × BOM per size · Total Need × (1 + Material Overrun %) |
| `Material Overrun %` | Raw-material loss rate, default 5% |
| `SO PR` | Sales Order Purchase Request — raw-material purchase request the system creates on Release Big Plan, from the Final Need of each Item Code; initial status Requested |
| `Purchase Order` | Purchase order made by Purchase from the SO PR, outside I/J Plan; goods are received against the PO in WMS Inbound |
| `Produced · Remaining` | Cumulative confirmed A-grade output · Remaining = max(0, Order Q'ty − Produced) |
| `POP` | Point of Production — output reported per shift |
| `Revision` | Reopen the plan of a RELEASED Big Plan for editing when every WO has Produced = 0; Save Plan archives the old version and returns the Big Plan to DRAFT |
