Scenario 14 — Source Management Mastery (Source List, Quota, Block, Time-Dependent — 9 sub-scenarios)

TIER 5 · PROCESS CONTROL ★★★★☆ ⏱️ ~3-4 hours total ME11 · MM02 · ME01 · ME0M · MEQ1 · MEQ3 · ME51N · MD03
← Previous
Scenario 13: Release Strategy
Next →
Scenario 15: Outline Agreements
✅ Real IDES codes confirmed live — master data built on the real system; run-time document numbers captured as you go

Every master-data code below is the real one on our PakSteel IDES system (client 250, company code PSPK) — the material, both approved vendors, and Mughal's info record are all confirmed live, so there's nothing to translate. The source-list, quota, block, time-switch and MRP mechanics that follow are standard SAP and run live too. But the numbers a document run produces — your PR number, the quota counters, the MRP-created PR, the contract number, and Aisha's info-record number — are created while you run it, so this page shows them as neutral placeholders like (your PR number). We never invent those.

WhatLive value on the system
MaterialRM-IRON-01 "Iron Ore Lump Grade A 50-100mm" (type ROH)
Vendor 1MUGHAL21 "Mughal Steel Industries Ltd" (Business Partner 21)
Vendor 2AISHA22 "Aisha Steel Mills" (Business Partner 31)
Info record — Mughal5300079940 (net price ₨250,000 / TO, 30-day delivery)
Info record — Aisha(your ME11 info record number) — created live via ME11 during the run

Honesty note: this scenario is not a single "post it once and you're done" cycle — it is nine small policy exercises on the same material. The master data is live-confirmed; the run-time outputs are captured as you work through each sub-scenario. Hit a snag? See the Errors box or the Troubleshooting Center.

📊 Business Case

Source management is how you control who you are allowed to buy from. The source list (ME01) is the approved-vendor list for a material + plant; quota arrangements (MEQ1) split volume by percentage between approved vendors; fixed sources mark a preferred vendor for auto-selection; and blocks and validity dates switch sources on and off over time. Together they give procurement governance over compliance, supply risk, and price — you buy only from vetted suppliers, and SAP enforces it on every PR/PO.

🕐 When to use it

When a material must come only from approved vendors: strategic sole-sourcing, dual-sourcing for risk, a contractual volume split, seasonal vendor switches, or blocking a supplier after a quality failure.

❓ Why it matters

It enforces compliance (only vetted vendors), manages supply risk (dual-source so one failure doesn't stop production), and protects price (lock in agreed splits and contract sources). POs to non-approved vendors are simply rejected.

👤 Who triggers it

Strategic purchasing maintains the source list and quotas (ME01 / MEQ1 / ME0M). MRP (MD03) and operational buyers (ME51N) then consume those sources automatically when creating PRs/POs.

🔁 The key distinction

Control WHO you buy from, by time and percentage. The Fix flag drives manual PR/PO selection; the MRP indicator drives automation — and MRP ignores Fix entirely. Knowing which flag does what is the heart of this scenario.

💰 Financial Impact — The Easy-Money Example

This is a control scenario — the value is the price secured and the supply risk avoided. PakSteel dual-sources iron ore and locks a 60/40 quota with negotiated pricing. Here's the money story when one vendor fails QC mid-year:

📋 Approved + quota set
60% / 40% split
Mughal + Aisha both vetted; quota locks negotiated volume pricing across both.
→
🚫 Mughal fails QC
Source blocked ↓
One ME01 block flag and every PR/PO auto-routes to Aisha. Production never stalls waiting for a vendor.
→
✅ Risk + price held
Supply continuous
No emergency spot-buy at a premium, no line stoppage. The vetted alternate keeps the agreed price.

The big idea: source management doesn't post an FI document — its payoff is cost and risk avoided. A single-sourced material with no block control means a QC failure forces a panic spot-buy (paying a premium) or halts production (lost output). With a source list + quota + block, the system reroutes to a pre-approved vendor at the agreed price instantly. That's compliance, price discipline, and supply continuity in one mechanism.

💡 Lesson: Secure better prices and avoid supply risk by controlling the approved-vendor list. Dual-source to survive a vendor failure, quota to lock negotiated volume pricing, and block to reroute instantly — all enforced by SAP on every document.

🇵🇰 The Business Story

PakSteel sources iron ore (RM-IRON-01) from two Pakistani vendors — Mughal Steel and Aisha Steel — with different policies over time: This scenario teaches ALL these patterns step-by-step.

🎯 What you'll learn

The Source Determination Priority Chain

When SAP processes a PR or PO with "Source Determination" active, it checks sources in this exact order:

PrioritySourceT-CodeWhat triggers it
1️⃣Quota ArrangementMEQ1Allocates by % between approved vendors
2️⃣Source List (Fixed)ME01Single vendor flagged "Fix ✓"
3️⃣Outline AgreementME31K (Contract) / ME31L (Sched. Agr.)If referenced in source list
4️⃣Info RecordME11If only one info record exists for material+plant
5️⃣Fall backManualUser must enter vendor

Two Database Tables Behind All This

TableWhat it storesKey fields
EORDSource list entries (current state)MATNR + WERKS + LIFNR + EKORG + VDATU/BDATU (validity) + AUTET (MRP rel) + NOTKZ (block) + AGREEMENT
EORDHSource list change history (audit log)Same as EORD + change timestamp + user
EQUK / EQUPQuota arrangement header / itemsMATNR + WERKS + LIFNR + QUOTA
EBANPurchase requisition itemsFLIEF (Fixed Vendor) + EKORG (Purch Org) populated from source determination

📋 Prerequisites — what must be in the system (and why)

These are the compulsory records and flags that source management needs before any of the nine sub-scenarios will work. All the master data is confirmed live on the real system (client 250, company code PSPK). Each item below is a link in the chain — if any one is missing, SAP throws one of the messages in the Errors box. Read this first; it is the foundation the steps stand on.

① Master data — the records the steps use

RecordLive valueWhat it is · why the scenario needs it
MaterialRM-IRON-01 "Iron Ore Lump Grade A 50-100mm" (type ROH), plant PK01, SLoc RMT, unit TOThe ore every source-list and quota rule is built around. It needs Purchasing + MRP views (see ③) so the source-list and quota flags have somewhere to live.
Vendor 1MUGHAL21 "Mughal Steel Industries Ltd" (BP 21), extended to PKLO + PSPKThe primary approved supplier — fixed source in 14B, 60% share in 14F.
Vendor 2AISHA22 "Aisha Steel Mills" (BP 31), extended to PKLO, order currency PKRThe dedicated 2nd approved supplier (created live this session). Enables dual-sourcing, the time-switch, the block, and the 40% quota share.
Info record — Mughal5300079940 (₨250,000 / TO, 30-day delivery)Gives the vendor a saved price so source determination can value the PR/PO line.
Info record — Aisha(your ME11 info record number) — created liveAisha needs her own RM-IRON-01 info record before she can be a usable, priced source.
② Two approved vendors extended to purchasing org PKLO

🎯 In plain words: a supplier is only usable by a buying team once that team's purchasing org is switched on for it — like a shop being registered with your branch before you can order from it.

🧭 Real-world note — where you actually create the vendor: BP, not XK01/MK01

This is how the two approved vendors above were created, and it is a real thing we hit live.

③ Material RM-IRON-01 with Purchasing + MRP views

🎯 In plain words: the source list lives on the Purchasing side of the material, and MRP can only plan a material that has MRP views.

④ Info records for both vendors (ME11)

🎯 In plain words: an approved vendor still needs a saved price page, or SAP can list him but cannot price the line.

⑤ Source-list requirement flag (MARC-KORDB) — this makes the policy binding (step 14A)

🎯 In plain words: one switch that turns "these are the approved vendors" from a suggestion into a rule SAP enforces on every document.

⑥ Quota usage flag (MARC-USEQU) — step 14F prerequisite

🎯 In plain words: this tells SAP in which documents the % split machine is allowed to run.

⑦ An MRP type on the material (MARC / MRP 1) — step 14H prerequisite

🎯 In plain words: MRP (the automatic stock planner) only plans materials it has been told to plan.

Note: the source-list MRP indicator = 1 on the row itself is set inside step 14B — that is the second half of "MRP picks the vendor" (the material needs an MRP type and the row needs MRP = 1). See the Errors box, last row.

🔧 Step-by-Step

🧭 The route at a glance — read this first
StepT-codeWhat it doesWhy this step exists
14AMM02Turn on the "Source list" switch for the materiala policy only works if the system enforces it
14BME01Approve Mughal as the single FIXED vendorone vetted vendor should be auto-picked, no typing
14CME01Approve two vendors, none fixed — buyer choosestwo sources means one failure can't stop production
14DME01Set date windows so the vendor switches automaticallycontracts start and end on dates — SAP should follow them
14EME01Block Mughal temporarily; everything routes to Aishaa vendor who failed quality must not be used
14FMEQ1Set a 60/40 quota; one PR line splits itselfa promised volume split must be kept automatically
14GME51NCreate a PR; SAP fills the vendor by itselfproves the source list works on a real document
14HMD03MRP finds the shortage and writes the PR with vendorautomation reads the MRP indicator, not the Fix flag
14IME31K + ME01Create a contract; point the source list at itPOs should draw down the signed deal
📇 Your live codes — quick reference

Material RM-IRON-01 "Iron Ore Lump Grade A 50-100mm" (ROH) · Vendors MUGHAL21 (Mughal Steel Industries Ltd, BP 21) + AISHA22 (Aisha Steel Mills, BP 31) · Plant PK01 · SLoc RMT · Purch org PKLO · Company code PSPK · Mughal info record 5300079940 (₨250,000 / TO, 30-day delivery) · Aisha info record (your ME11 number) · UoM TO · Quota 60/40 · Tables EORD/EORDH (source list) · EQUK/EQUP (quota).

📦 Sub-Scenario 14A — Activate Source List Requirement

14A — Make Source List MANDATORY for material · MM02

⚡ This step will: flip one switch on the material master — from now on SAP rejects any PR/PO for this material whose vendor is not on the approved list. 📄 paper: — (master-data change only) · 📦 stock: no change · 💰 money: no posting

Why: the checkbox asks: may this material be bought from ANYONE, or only from the approved list? When the "Source List" flag is ON in the Purchasing view, SAP rejects POs/PRs to vendors NOT in the source list. This enforces approved-vendor policy — like a company rule "fuel only from these three petrol pumps", enforced by the system instead of a memo.

Action:

  1. MM02 → Material RM-IRON-01
  2. Select view: Purchasing → Plant PK01
  3. Find checkbox "Source list" (MARC-KORDB) → ✓ tick it
  4. Save

💡 Alternative: set it as default for ALL materials via OMS2 or OMSK (Material Type config — "Source List Required" flag at material-type level).

Verify: SE16N → table MARC → MATNR RM-IRON-01 → field KORDB should = X.

📦 Sub-Scenario 14B — Single Fixed Source (Strategic Sole-Sourcing)

14B — Mughal Steel as SOLE approved vendor for RM-IRON-01 · ME01

⚡ This step will: put Mughal on the approved-vendor list as the single FIXED source — from now on manual PRs/POs auto-fill him as vendor, no popup, no typing. 📄 paper: — (source list entry in table EORD) · 📦 stock: no change · 💰 money: no posting

Business case: premium-grade iron ore has only ONE approved vendor (Mughal Steel) — quality contract signed. No alternatives allowed.

Two screens: ME01 opens on a small initial screen (just Material + Plant), then the source-list overview — a grid with one row per approved source. Every field in the table below is a column on that grid row.

Action:

  1. ME01
  2. Material: RM-IRON-01 · Plant: PK01 → Enter
  3. Fill the row in the table:
    Where on screen · FieldFillWhat the field asks — in plain wordsWhy we choose this — and the impact if wrong
    Source-list grid · Valid FromTodayFrom WHEN is this vendor approved? Like the start date on a gym-membership card.We want Mughal usable from today. Impact: set it in the future and a PR dated today finds "no valid source" — the buyer is blocked even though the vendor looks listed
    Source-list grid · Valid To31.12.9999Until WHEN is he approved? The end date on the same card.31.12.9999 = SAP's "forever", so the approval never silently lapses. Impact: put a near date here and Mughal quietly drops out of the source list after it — future POs fail with "no source found"
    Source-list grid · VendorMUGHAL21WHICH supplier are you approving for this material + plant?Mughal is the sole vetted mill for premium ore. Impact: the wrong number here approves the wrong company — and with the Source-List flag on (14A), only the vendors typed here can ever be bought from
    Source-list grid · POrg (Purchasing Org)PKLOApproved for WHICH buying team? The purchasing org is the buying company/desk that signs the orders.PKLO is PakSteel's Pakistan-local buying org. Impact: list him under the wrong org and that org's buyers still can't use him — the approval only counts for the org named here
    Source-list grid · Fix ✓ (fixed source)✓ (tick)Is this THE one vendor to auto-pick? Like saving one shop as your "default" so no chooser pops up.One approved mill → tick it so manual PRs/POs fill Mughal with no popup. Impact: only ONE vendor may be Fixed per period; leave it off when the buyer should choose between several (14C)
    Source-list grid · MRP (MRP indicator)1May the automatic planner (MRP — the stock-planning run) also use this vendor?1 = yes, MRP may pick him. Impact — the classic trap: MRP ignores the Fix flag and reads only this column, so leave it blank and MRP builds PRs with no vendor at all (see 14H)
    Source-list grid · Block (Blk)blankIs this vendor suspended right now? Like a temporary "closed" sign on an approved shop.Blank = active. Impact: tick it and Mughal can't be picked on any document until you untick — exactly how you freeze a vendor after a QC failure (14E) without deleting the approval
  4. Save → ✅ "Source list maintained successfully"

Effect: when you create a PR with "Source Determination" ✓, SAP auto-picks MUGHAL21 — no manual entry needed. Because Mughal's info record 5300079940 exists, the line also gets the price ₨250,000 / TO.

📦 Sub-Scenario 14C — Multiple Approved Sources (No Fixed)

14C — Mughal + Aisha both approved, buyer chooses · ME01

⚡ This step will: approve TWO vendors with neither one fixed — new PRs now show a "choose vendor" popup, and any vendor NOT on the list is still rejected. 📄 paper: — (two source list rows) · 📦 stock: no change · 💰 money: no posting

Business case: for commodity-grade iron ore, both approved vendors may supply. The buyer picks based on current price/availability. No vendor is "preferred" — pure risk mitigation.

Action:

  1. ME01 · Material RM-IRON-01 · Plant PK01
  2. Add 2 rows:
    VendorPOrgFixMRPValid From-To
    MUGHAL21PKLO☐ (NOT fixed)1Today → 31.12.9999
    AISHA22PKLO☐ (NOT fixed)1Today → 31.12.9999
  3. Save

Effect in the PR: when you tick Source Determination → SAP shows a popup "Multiple sources found — choose" → the buyer picks Mughal OR Aisha manually. POs to ANY other vendor are REJECTED (06401).

Use case in PakSteel: commodity-grade materials where price flexibility matters more than supplier loyalty.

📦 Sub-Scenario 14D — Time-Dependent Source Switching

14D — Mughal till 30-Jun, Aisha from 1-Jul · ME01

⚡ This step will: set two date windows so SAP switches vendor by itself — a delivery date up to 30-Jun picks Mughal, from 1-Jul it picks Aisha, no human needed. 📄 paper: — (two dated source list rows) · 📦 stock: no change · 💰 money: no posting

Business case: PakSteel signed two contract windows. Mughal's window ends 30-Jun; Aisha's window starts 1-Jul. SAP should automatically switch vendor based on the requirement date.

Action:

  1. ME01 · Material RM-IRON-01 · Plant PK01
  2. Fill the table:
    Valid FromValid ToVendorPOrgFixMRP
    01.01.202630.06.2026MUGHAL21PKLO✓1
    01.07.202631.12.2026AISHA22PKLO✓1
  3. Save → both periods saved with different Fixed vendors

Effect:

Real Pakistani use: pre-monsoon vs post-monsoon vendor contracts, fiscal-year-based vendor rotation, seasonal pricing.

📦 Sub-Scenario 14E — Block a Source Temporarily

14E — Mughal blocked for QC issue — buy only from Aisha · ME01

⚡ This step will: hang a temporary "closed" sign on Mughal — from this second no PR/PO can pick him, and everything routes to Aisha until you untick the flag. 📄 paper: — (block flag on the source list row) · 📦 stock: no change · 💰 money: no posting

Business case: the last shipment from Mughal Steel failed quality inspection (sulfur content too high). Block Mughal as a source for 30 days while they investigate. Aisha continues as the alternate.

Action:

  1. ME01 · Material RM-IRON-01 · Plant PK01
  2. Find the row for MUGHAL21
  3. Find column "Blk" (Block) → click ✓ to tick
  4. Save
VendorFixMRPBlkStatus
MUGHAL21☐0✓ BlockedCan't be picked
AISHA22✓1☐Active — auto-picked

Effect: PRs auto-pick AISHA22. Any PR/PO that still tries to use MUGHAL21 is rejected with error 06405 — Source list entry blocked — the vendor is on the list, but its row is blocked. (Compare: 06401 — source not allowed is for a vendor that is not on the list at all.)

Unblock after QC clears: untick Blk → Save. Mughal is active again.

💡 Pro tip: the block is INSTANT. For a time-dependent block, set Valid To = the block date instead (better audit trail than the Blk flag).

📦 Sub-Scenario 14F — Quota Arrangement (% Split)

14F — 60% Mughal + 40% Aisha by volume · MEQ1

⚡ This step will: create a 60/40 splitting rule — after this, one 100 TO requisition line breaks itself into 60 TO for Mughal and 40 TO for Aisha (the Step 3 test PR proves it). 📄 paper: quota arrangement (+ a test purchase requisition in Step 3) · 📦 stock: no change · 💰 money: no posting

Business case: the long-term contract says 60% of iron ore volume goes to Mughal, 40% to Aisha (vendor relationship management). SAP auto-allocates this split.

Step 1 — Activate Quota Usage on the material:

  1. MM02 → RM-IRON-01 → Purchasing view → Plant PK01
  2. Find field "Quota arr. usage" (MARC-USEQU) — asks: in WHICH documents should the quota machine run? Enter the value:
    ValueMeaning
    1Quota applies to PRs
    2Quota applies to POs
    3Quota applies to scheduling agreements
    4Quota applies to ALL (PR + PO + sched agr) ⭐ recommended
  3. Save

Step 2 — Maintain the Quota Arrangement (MEQ1):

MEQ1 runs across three zones — an initial screen (material + plant), the quota overview (one row per validity period), and the quota-items grid (one row per vendor with its %). The list below follows that order.

  1. MEQ1 · Material RM-IRON-01 · Plant PK01
  2. Validity Start: Today · Validity End: 31.12.9999
  3. Fill the quota items table:
    P (Proc Type)S (Special Stock)VendorQuota AllocatedQuota Base QtyMaximum Quantity
    F (External Proc)blankMUGHAL21600 (auto)0 (unlimited)
    FblankAISHA224000

    What each column asks: P — HOW is it procured? F = bought externally. Quota Allocated — WHAT SHARE does this vendor get? 60/40 = the promised split, like dividing a family order between two shops 60:40. Base Qty / Maximum — fine-tuning knobs; 0 = let SAP track automatically, no ceiling.

  4. Save → the quota arrangement is saved with number (your quota arrangement number).

Step 3 — Test the split (this is where you SEE the quota work):

Do: ME51N → tick Source Determination at the top → add ONE line for 100 TO → press Enter and watch SAP break it into two.

Where on screen · Field / ActionFillWhat it asks — in plain wordsWhy — and the impact if wrong
Item overview · Source Determination flag (checkbox above the item grid)✓ tickShould SAP find the vendors itself?The quota machine only runs when SAP is allowed to choose the source. Impact: leave it unticked and no split happens — you get one vendor-less line the buyer must fill by hand
Item overview grid · Material + Plnt columnsRM-IRON-01 · PK01What are you asking for, and for which plant?Must match the material + plant the quota was built on (Step 2). Impact: a different plant has no quota, so nothing splits
Item overview grid · Quantity column (ONE line only)100 TOHow much in total do you need?You type the WHOLE need on one line; SAP does the dividing. Impact: type two lines yourself and you have hand-split it, not tested the quota
Item overview · press Enter—Run source + quota determination now.This is the moment the quota rule fires. Impact: if nothing splits, re-check Quota Usage in MM02 (Step 1) and the 60/40 rows in MEQ1 (Step 2)

What changes at this exact moment: your single 100 TO line becomes two requisition items — Item 10 = 60 TO to MUGHAL21 and Item 20 = 40 TO to AISHA22 — matching the 60/40 split. You did not choose the vendors; the quota did. (If a "Quota Base Qty" is set per item, SAP divides by that base unit instead of a flat 60/40.)

Verify: save the PR (it gets number (your PR number)), then MEQ3 → the "quota-allocated quantity" for each vendor has gone up (Mughal +60, Aisha +40) — proof the counter moved.

Monitor quota: MEQ3 shows used/remaining quota per vendor. Useful for reporting.

Re-balance quota: if Mughal is at 80% used and Aisha at 20%, SAP biases future PRs to Aisha until rebalanced.

📦 Sub-Scenario 14G — Manual PR with Source Determination

14G — ME51N with auto-vendor selection · ME51N

⚡ This step will: create a wish-list paper asking purchasing to buy — and SAP fills in the vendor for you from the source list. No promise to any vendor yet. 📄 paper: purchase requisition · 📦 stock: no change · 💰 money: no posting

Setup pre-req: Sub-scenarios 14A + 14B (or 14C/14F) completed.

Do: ME51N → tick Source Determination → add the item in the grid → press Enter and let SAP fill the vendor. (ME51N has the same 3 zones as a PO screen: a collapsible Header at top, the Item overview grid in the middle, and Item detail tabs at the bottom.)

Where on screen · FieldFillWhat it asks — in plain wordsWhy — and the impact if wrong
Item overview · Source Determination flag (checkbox above the item grid)✓ tickShould SAP hunt for the vendor itself, or leave it blank for the buyer?Ticked = SAP reads the source list and fills the vendor. Impact: unticked, the PR stays vendor-less and the buyer must type one later — the source list is never consulted
Item overview grid · Material columnRM-IRON-01What are you requesting?Must be the material the source list was built on (14B). Impact: a material with no source list entry gives "no source of supply found"
Item overview grid · Quantity column50 TOHow much do you need?The requested amount. Impact: none for source-finding — quantity alone doesn't change which vendor is picked (only a quota % does)
Item overview grid · Plnt + SLoc columnsPK01 · RMTFor which plant, and which store shelf?Source lists are per material + plant, so the plant must match 14B. Impact: a wrong plant reads the wrong (or no) source list
Item overview grid · Deliv. Date columna future dateWHEN is it needed?SAP checks this date against each source's Valid From/To. Impact: a date outside the vendor's validity window (14D) gives "no valid source" (06424) even though the row exists
Item overview · press Enter—Run source determination now.This is the moment SAP reads the source list and decides — see the outcomes below.

What changes at this exact moment depends on what the source list holds:

Source List stateBehavior
Only 1 fixed source✅ Auto-fills Fixed Vendor + Purch Org + Info Record
Multiple sources (no Fixed)Popup: "Choose vendor" — buyer selects
Quota activeSplits items per quota %
No source list entryError: "No source of supply found" (06424)

With 14B in place (one fixed source), MUGHAL21 and its Purchasing Org drop straight onto the item's Item detail → Source of Supply tab — no popup, no typing — and the price ₨250,000 / TO comes from info record 5300079940. Save → ✅ PR (your PR number) created with the auto-chosen source.

Verify: SE16N → table EBAN → your PR item → field FLIEF (Fixed Vendor) holds the vendor source determination wrote; EKORG holds its Purchasing Org.

💡 To make Source Determination tick by default, set it in the Personal Setting button at the top of ME51N → Default Settings tab.

📦 Sub-Scenario 14H — MRP-Driven Auto-PR with Source List

14H — MD03 single-material MRP run creates PR with auto-vendor · MD03

⚡ This step will: let the automatic planner spot the 150 TO shortage and write the wish-list paper itself — vendor already filled from the source list, zero human typing. 📄 paper: purchase requisition (created by MRP) · 📦 stock: no change · 💰 money: no posting

Business case: production needs 200 TO of iron ore for next month. Stock is 50 TO. MRP runs → detects the shortage → creates a PR automatically. The Source List determines which vendor.

Pre-req: the Source List entry MUST have the MRP column = 1 (not just the Fix flag), AND the material must have an MRP type (Prerequisite ⑦).

Do: MD03 → fill the control parameters on the initial screen → Enter → MRP runs in the foreground and shows a results screen → look for the new PR. (MD03 is not a 3-zone Enjoy screen — it is one initial screen holding all the switches below, followed by a results list.)

First make sure the material is planned at all: MM02 → MRP 1 view → field MRP Type = PD (standard MRP) or VB (reorder point). No MRP type = MRP skips the material and creates nothing.

Where on screen · FieldFillWhat it asks — in plain wordsWhy — and the impact if wrong
Initial screen · Material + PlantRM-IRON-01 · PK01Plan WHICH material, at which plant?Single-item run for our ore. Impact: a wrong plant plans a location with no shortage — nothing is created
Initial screen · Processing keyNETCHRe-plan everything, or only what CHANGED since last run?NETCH = net change: plan only materials with new movements — fast. Impact: fine here; a full regenerative run (NEUPL) just takes longer and gives the same PR
Initial screen · Create purchase req.1On a shortage, raise a purchase requisition or only a planned order?1 = create real PRs straight away (what we want to see). Impact: value 2 makes PRs only inside the opening period and planned orders after — you may see a planned order, not a PR
Initial screen · Delivery schedules3Create schedule lines if a scheduling agreement is the source?3 = generate schedule lines when a sched. agreement exists (Scenario 15). Impact: none for a plain source list — leave the default
Initial screen · Create MRP list1Save a report of what MRP planned?1 = always write the MRP list so the result can be re-read later. Impact: blank = no stored report and you can only see live results in MD04
Initial screen · Planning mode1Reuse existing proposals, or wipe and rebuild them?1 = adapt (keep what's still valid, adjust the rest) — safe default. Impact: mode 3 deletes and recreates all proposals — heavier, and needless here
Initial screen · Scheduling1Work out dates from the material's lead time, or from detailed routings?1 = basic dates from the material master lead time — enough for a purchased material. Impact: mode 2 (lead-time scheduling) needs routings we don't have for bought-in ore
Initial screen · press Enter (twice)—Run it; a "check the inputs" screen may appear first.The second Enter starts the run. Impact: read the results screen that follows — it lists the elements MRP created.

What changes at this exact moment: MRP compares the 200 TO requirement against the 50 TO on hand, finds a 150 TO shortfall, and creates a purchase requisition for 150 TO. Because the source-list row has MRP = 1, the PR comes out with the Fixed Vendor already filled from the source list — no buyer keying needed. This is the payoff of the MRP indicator you set in 14B.

Verify: MD04 → Material RM-IRON-01 · Plant PK01 → a new PurRqs line (your MRP-created PR number) appears for the shortfall, with the vendor shown. Cross-check SE16N → EBAN → the PR's FLIEF (Fixed Vendor) is populated.

Important — MRP rules:

📦 Sub-Scenario 14I — Source List + Outline Agreement Reference

14I — Source List points to an existing Contract · ME31K + ME01

⚡ This step will: create a signed 12-month deal (a contract) and point the source list at it — every future PO to Mughal then draws down that contract instead of starting from zero. 📄 paper: contract (outline agreement) · 📦 stock: no change · 💰 money: no posting

Business case: Mughal Steel and PakSteel sign a 12-month value contract for iron ore. All POs to Mughal should reference this contract (draw down from the agreed volume/value).

Action:

  1. First create the contract: ME31K · Doc Type MK (quantity contract) · Vendor MUGHAL21 · Purch Org PKLO · Item: RM-IRON-01, target qty 200 TO, net price 250,000 PKR / TO
  2. Save → note the Contract Number that SAP assigns — this is (your contract number), captured during the live run
  3. ME01 · RM-IRON-01 · Plant PK01
  4. Edit the Mughal row → fill the "Agreement" column = (your contract number) · "Item" column = 10 — asks: WHICH signed deal should POs draw from? Pointing the source list row at the contract (and its item line) makes every future PO consume that agreement instead of starting from zero
  5. Save

Effect: future POs to Mughal auto-reference the contract → quantities count against the contract → invoice verification validates against the contract terms.

💡 A 12-month value contract would use doc type WK instead of MK — same idea, but the ceiling is a money value rather than a quantity.

✅ Verification

🎯 Proven live on our IDES (DEV / client 250) — 23-Jul-2026

Check the Source List + Quota in the database:

  1. SE16N → Table EORD · Filter MATNR = RM-IRON-01 + WERKS = PK01
  2. Check the fields:
    FieldMeaning
    LIFNRVendor # (MUGHAL21 / AISHA22)
    EKORGPurch Org (PKLO)
    VDATU / BDATUValid From / To
    AUTETMRP relevant (1 = yes)
    NOTKZBlock indicator (X = blocked)
    FLIFNFixed source indicator (X = fixed)
    EBELN / EBELPLinked contract # / item
  3. For the Quota: SE16N → Table EQUK (header) + EQUP (items)

🐞 Errors we hit live — and how to fix them

These are the standard source-management messages. On a fresh setup, any missing prerequisite throws one of them — so each row names the message, says what it really means, and links back to the Prerequisite that clears it. The three rows marked ★ hit live are the ones we actually ran into while building this scenario on the IDES. The columns are: where it appears, the message SAP shows, what it means & why, and how to fix it.

Where it appearsThe message SAP showsWhat it means & whyHow to fix it
★ hit live: PO — 14G (ME21 / ME21N), on completing the item06 722 "Material RM-IRON-01 not included in source list despite source list requirement"
(the closely-related 06401 "Source not allowed" appears instead when the vendor IS on the list but blocked/invalid for the date)
The source-list requirement (Prereq ⑤ — the "Source list" flag in MM02) is ON, but the vendor you used is not on the approved list for this material + plant. We hit this live by trying a PO to non-approved supplier 2200003320.Add the vendor to the source list in ME01, or (if the policy shouldn't apply) untick "Source list" in MM02. → Prereq ⑤
PR/PO — 14E (ME51N / ME21N) after blocking Mughal06405 "Source list entry blocked"The vendor is on the list, but its row has the Blk flag ticked (14E), so SAP refuses to pick it.Untick Blk on the Mughal row in ME01 once QC clears, or route to Aisha. → step 14E
PR/PO — 14D/14G (ME51N), on Enter06424 "No source of supply found"The delivery date on the line falls outside every source's Valid From/To window (14D), or there is no valid row for that date.In ME01 check the Valid From/To covers the requested delivery date; widen the window or pick a date inside it. → see step 14D
Source list / PR — 14B/14C (ME01 save, or ME51N)06010 "Vendor not extended to purchasing organization"The vendor exists as a BP but has no purchasing data for PKLO (LFM1 missing) — it can't belong to PKLO's source list.BP → open the vendor → add the Supplier (Purchasing) role for purch org PKLO. → Prereq ①/②
Quota test — 14F (ME51N, 100 TO line)(no error — the line simply doesn't split) "Quota not splitting"The Quota arr. usage field (MARC-USEQU) is blank or set to a value that excludes PRs, so the quota engine never runs.MM02 → Purchasing → Quota arr. usage = 4 (all docs). Also confirm the MEQ1 60/40 rows exist and are valid today. → Prereq ⑥
MRP run — 14H (MD03)(no PR, or PR with no vendor) "MRP not picking from source list"Either the source-list row has MRP indicator ≠ 1 (MRP ignores the Fix flag), or the material has no MRP type, so MRP can't source it.ME01 → set MRP column = 1 on the desired vendor row (step 14B); and MM02 → MRP 1 → MRP Type = PD/VB. → step 14B + Prereq ⑦
★ hit live: vendor create (BP), on saving the vendor role"Enter the external supplier number"The vendor account group uses external numbering (like Mughal's MUGHAL21), so SAP will not auto-assign the number — you type it. Via CVI (Customer-Vendor Integration) the Business Partner also gets this classic vendor number (LIFNR) that all purchasing/FI tables still use.On the vendor role, type your own number (we used AISHA22) as the external supplier number → Save. → Prereq ①
★ hit live: Aisha info record (ME11), on Enter06 321 "Supplier AISHA22 not yet created by purchasing organization PKLO"The vendor exists but has no Purchasing view for PKLO yet, so you can't build its info record (or add it to PKLO's source list). Same root cause as 06010, just seen at info-record time — the Supplier (Purchasing) role didn't save because the FI-role external-number error above blocked the whole BP save.BP → open AISHA22 → add the Supplier (Purchasing) role → purch org PKLO, currency PKR → Save. → Prereq ①/②
★ hit live: source list (ME01), on Enter/SaveME048 "Material RM-IRON-01 not maintained by materials planning/control"We set the MRP indicator = 1 on a source-list row, but RM-IRON-01 has no MRP view, so SAP demands MRP data. It is a warning you can press Enter through, but cleaner to fix.Either clear the MRP column on that row in ME01 (we don't need MRP sourcing here), or add an MRP 1 view in MM02 (MRP Type PD/VB). → step 14B

🎓 Interview-Ready Answers

Q: Difference between Info Record and Source List?

A: Info Record (ME11) stores PRICE + conditions for a material-vendor-purchorg combination. Source List (ME01) stores the APPROVED VENDORS list for a material-plant combination. Info Record answers "at what price?" — Source List answers "from whom can I buy?". You can have many Info Records (one per vendor) but only one Source List per material+plant.

Q: Difference between Fix flag and MRP indicator in the Source List?

A: Fix flag = "this vendor is the preferred source for manual PR/PO creation." Only ONE vendor can be Fixed per period. MRP indicator = "use this vendor when MRP auto-creates PRs." Multiple vendors can have MRP=1 (then MRP uses the quota or picks the first). Critically: the Fix flag is IGNORED by MRP. Only the MRP indicator matters for automation.

Q: How does SAP decide source priority?

A: Priority chain: (1) Quota Arrangement — if active, allocates by %. (2) Source List with Fix flag — single auto-pick vendor. (3) Outline Agreement referenced in the source list — uses contract terms. (4) Info Record — if no source list, a single info record can default the vendor. (5) Manual — buyer enters the vendor. This chain is configured via SPRO → MM → Purchasing → Source Determination.

Q: How would you implement an "approve only ISO-certified vendors" policy?

A: Three-layer approach: (1) Source List per material — only add ISO-certified vendors via ME01. (2) Activate the "Source List Required" flag on materials in MM02 → blocks POs to non-listed vendors. (3) For audit: build a Z-report joining EORD + LFA1 + custom ISO-certificate fields. SAP standard alone enforces the source list rule. Additional governance comes via release strategy + workflow approval.

Q: Can you block a vendor for ALL materials at once?

A: Yes — three ways: (1) Block at vendor master level (BP → Status Blocked for purchasing or a specific Purch Org) — affects ALL materials immediately. (2) Mass update the Source List via ME0M (Mass Maintain Source Lists) — set Blk ✓ for all material rows of that vendor. (3) Time-bound: change Valid To = today in all source list entries. Method 1 (vendor block) is most common; method 2 lets you keep the vendor active for some materials but blocked for others.

Q: What is ME0M and when to use it?

A: ME0M = Mass Maintenance of Source Lists. It lets you create/change source list entries for MULTIPLE materials at once. Use cases: (1) onboarding a new vendor across 50 materials. (2) Blocking a vendor across all materials they supply. (3) Extending validity dates after a contract renewal. (4) Bulk-loading source lists during data migration. Saves hours vs material-by-material ME01.

Q: Can MRP create a PR if the Source List has no Fixed vendor?

A: Yes — MRP doesn't use the Fix flag. MRP uses the MRP indicator (= 1). If only one source list row has MRP=1, MRP picks that vendor. If multiple have MRP=1 AND a Quota Arrangement is active, MRP splits per quota. If multiple have MRP=1 but NO quota → MRP picks the first valid row (by sort order). If NO rows have MRP=1 → MRP creates a PR without a vendor (buyer must add manually after).

Q: How do you audit "who approved Mughal Steel as a vendor for iron ore?"

A: The Source List has a change history in table EORDH (Source List Change History). Query: SE16N → EORDH → Material RM-IRON-01 + Vendor MUGHAL21 → see all changes with user ID + timestamp. Combine with the vendor master change docs (via BP) for a full audit trail. For real compliance, integrate with workflow approval (e.g. a Vendor Onboarding Workflow) so additions to the source list require manager approval before save.

🇵🇰 Pakistani Business Scenarios

💡 Real-world Pakistani applications
← Previous
Scenario 13: Release Strategy
Next →
Scenario 15: Outline Agreements