Intro:
This blog concerns vendor simplified selection for Purchase requisition while running MRP in Hana. So it will be easy to convert the PR to a Purchase order. It would be helpful for customers moving from ECC to HANA.
Main Part:
MRP selects the source of supplies with the following priority:
- Quota – MEQ1 (Will be always considered in HANA)
- Source list – ME01 – If Multiple Schedule agreements and contracts are available, one vendor will be selected based on the sorting below.
- priority ASCENDING: Logic shown at bottom
- fixed_vendor DESCENDING: within a source list if 'fixed vendor is checked' then it is preferred
- ebeln ASCENDING: Contract/Schedule agreement number with the smaller Document Number
- ebelp ASCENDING: Contract/Schedule agreement line item with the smaller Document Item Number
- lifnr ASCENDING: Source entry with the smaller Vendor/Supplier name
- ekorg ASCENDING: Source entry with the smaller Purchasing Organization
- esokz ASCENDING: Source entry with the suitable Special indicator (Purchasing info record category: Consignment/Subcontracting etc.)
- ematn ASCENDING: Source entry with the smaller Manufacturer part number (MPN name)
If Multiple PIRs are available, one vendor will be selected based on the sorting below. (No need for active auto-sourcing check box)
- Priority ASCENDING
- Purchasing info record with the given plant
- Purchasing info record with the smaller supplier number ASCENDING
- Purchasing info record with the smaller purchasing organization ASCENDING
- Purchasing info record with the smaller purchasing group ASCENDING (Even it will be picked from material master. don't know why added here - please comment
3. Schedule agreement – ME31L – If Multiple similar suppliers are maintained, then one vendor will be selected based on the sorting below.
- priority ASCENDING
- fixed_vendor DESCENDING <-- Within the source list if 'fixed vendor is checked' new criteria
- ebeln ASCENDING <-- Schedule number
- ebelp ASCENDING <-- Schedule line-item number
- lifnr ASCENDING <-- Vendor/Supplier Name
- ekorg ASCENDING <-- Purchase Organisation
- esokz ASCENDING <-- Purchasing info record category
- ematn ASCENDING <-- Manufacturer part number (MPN name)
4. Contract – ME31K - If Multiple similar suppliers are maintained, then one vendor will be selected based on the sorting below.
- priority ASCENDING
- fixed_vendor DESCENDING <-- Within the source list if 'fixed vendor is checked' new criteria
- ebeln ASCENDING <-- Contract number
- ebelp ASCENDING <-- Contract line-item number
- lifnr ASCENDING <-- Vendor/Supplier Name
- ekorg ASCENDING <-- Purchase Organisation
- esokz ASCENDING <-- Purchasing info record category
- ematn ASCENDING <-- Manufacturer part number (MPN name)
5. Purchasing info records with active auto-sourcing indicator - ME11 - If Multiple similar suppliers, then one vendor will be selected based on the sorting below.
- Priority ASCENDING
- Purchasing info record with the given plant
- Purchasing info record with the smaller supplier number ASCENDING
- Purchasing info record with the smaller purchasing organization ASCENDING
- Purchasing info record with the smaller purchasing group ASCENDING
Note: When creating the source of supply data for a material (PIR, Contract) the system will set its priority in table CDS_M_PUR_SOS_B based on the criteria below.
Priority=1 for scheduling agreements with the given plant.
Priority=2 for scheduling agreements without given plant
Priority=3 for contracts with a given plant
Priority=4 for contracts without given plant
Priority=5 for contracts with the given plant but with reference org
Priority=6 for contracts without given plant but with reference org
Priority=11 for info record with a given plant
Priority=12 for info record without given plant
Test case: Let us test using the bottom-up approach.
5. Multiple PIRs
Priority 12 - info record without given plant
I have created Multiple PIRs with the auto-sourcing flag active and maintained them at the client level without plant. In Background, the system will set the priority as 12 against each source line item in the table CDS_M_PUR_SOS_B
During the MRP run the system chooses only one supplier based on the below sorting procedure.
- Priority ASCENDING – 12 (5 items will be selected)
- Purchasing info record with the given plant – empty (5 items will be selected)
- Purchasing info record with the smaller supplier number ASCENDING – 100000141 (2 items will be selected)
- Purchasing info record with the smaller purchasing organization ASCENDING – 1010 (Vendor has been chosen)
- Purchasing info record with the smaller purchasing group ASCENDING - 001
Priority 11 - info record with given plant
Now, additional PIRs have been created with Plant combinations, and in the background, the system sets the priority to 11 against each line item.
During MRP run the system chooses the supplier based on the sorting procedure.
- Priority ASCENDING – 11 (4 items will be selected)
- Purchasing info record with the given plant – 0075 (4 items will be selected)
- Purchasing info record with the smaller supplier number ASCENDING – 100000142 (2 items will be selected)
- Purchasing info record with the smaller purchasing organization ASCENDING – 1010 (Vendor has been chosen)
- Purchasing info record with the smaller purchasing group ASCENDING - 001
4. Multiple contracts
Priority 5 - contracts with a given plant but with reference org
I have created multiple contracts with reference purchase org, plant. In the background, the system has set priority 5 against respective line items. Auto sourcing is also activated while creating contracts and Sch agg.
During MRP the system uses the below sorting method to choose the vendor.
- priority ASCENDING – 5 (2 items will be selected)
- fixed_vendor DESCENDING <-- Within the source list if 'fixed vendor is checked' new criteria – Empty (2 items will be selected)
- ebeln ASCENDING <-- Contract number – 4600000024 (1 item will be selected)
- ebelp ASCENDING <-- Contract line-item number – 20 (1 item has been selected)
- lifnr ASCENDING <-- Vendor/Supplier Name – 100000141 (Vendor has been chosen)
- ekorg ASCENDING <-- Purchase Organisation - 0075
- esokz ASCENDING <-- Purchasing info record category - K
- ematn ASCENDING <-- Manufacturer part number (MPN name) – Empty
Priority=4 contracts without given plant
I have created multiple contracts with normal purchase org at the client level without a plant. In the background, the priority has been set to 4 against each line item.
During MRP the system uses the below sorting mentioned to choose the vendor.
- priority ASCENDING – 4 (4 items will be selected)
- fixed_vendor DESCENDING <-- Within the source list if 'fixed vendor is checked' new criteria – Empty (4 items will be selected)
- ebeln ASCENDING <-- Contract number – 4600000023 (4 items will be selected & sorted)
- ebelp ASCENDING <-- Contract line-item number – 10 (1 item will be selected)
- lifnr ASCENDING <-- Vendor/Supplier Name – 100000142 (Vendor has been chosen)
- ekorg ASCENDING <-- Purchase Organisation - 0075
- esokz ASCENDING <-- Purchasing info record category - Empty
- ematn ASCENDING <-- Manufacturer part number (MPN name) – Empty
Priority=3 contracts with a given plant
I have created multiple contracts with normal purchase org at the Plant level. In the background, the priority has been set to 3 against each line item.
During the MRP run the system uses the below sorting method to choose the vendor.
- priority ASCENDING – 3 (2 line items will be selected)
- fixed_vendor DESCENDING <-- Within the source list if 'fixed vendor is checked' new criteria – Empty (2 line items will be selected)
- ebeln ASCENDING <-- Contract number – 4600000028 (1 line item will be selected & sorted)
- ebelp ASCENDING <-- Contract line-item number – 10 (1 line item will be selected & sorted)
- lifnr ASCENDING <-- Vendor/Supplier Name – 100000140 (Vendor has been chosen)
- ekorg ASCENDING <-- Purchase Organisation - 0075
- esokz ASCENDING <-- Purchasing info record category - Empty
- ematn ASCENDING <-- Manufacturer part number (MPN name) – Empty
3. Multiple Scheduling agreement
Priority=1 scheduling agreements with the given plant.
I have created multiple schedule agreements with normal purchase org at the Plant level. In the background, the priority has been set to 1 against each line item.
During MRP the system uses the below sorting method to choose the vendor.
- priority ASCENDING – 1 (4 line items will be selected)
- fixed_vendor DESCENDING <-- Within the source list if 'fixed vendor is checked' new criteria – Empty (4 line items will be selected)
- ebeln ASCENDING <-- Schedule number – 5500000008 (1 line item will be selected based on sorting)
- ebelp ASCENDING <-- Schedule line-item number – 10 (1 line item will be selected)
- lifnr ASCENDING <-- Vendor/Supplier Name – 10000141 (Vendor has been chosen)
- ekorg ASCENDING <-- Purchase Organisation – DE01
- esokz ASCENDING <-- Purchasing info record category - L
- ematn ASCENDING <-- Manufacturer part number (MPN name) - Empty
You see the auto-sourcing is useful only at priority level 12.
2. Source list – We have multiple combinations here
Case 3: Source list with scheduling agreement (55*), contract (46*), and PIR.
Here the Scheduling agreement takes the lead.
Even though we had PIR and Contract (46**) the system considered only the Scheduling agreement (55**) from the source list and chose the vendor assigned to it during the MRP.
As the source list contains multiple sch. agg the sorting method below will be used to choose the vendor.
- priority ASCENDING – 1 (3 items will be selected)
- fixed_vendor DESCENDING <-- Within the source list if 'fixed vendor is checked' new criteria – Empty (3 items will be selected)
- ebeln ASCENDING <-- Schedule number in source list – 5500000008 (1 item will be selected via sorting)
- ebelp ASCENDING <-- Schedule line-item number - 10
- lifnr ASCENDING <-- Vendor/Supplier Name – 10000141 (Vendor has been chosen)
- ekorg ASCENDING <-- Purchase Organisation – DE01
- esokz ASCENDING <-- Purchasing info record category - L
- ematn ASCENDING <-- Manufacturer part number (MPN name) Empty
Case 2: Source list with multiple Contracts (46*) and PIR.
During MRP the system will give priority to the contract assigned to the source list and pick the vendor against it.
The sorting method below is used to choose a vendor if multiple contracts are there in the source list
- priority ASCENDING – 3 (2 items will be selected)
- fixed_vendor DESCENDING <-- Within the source list if 'fixed vendor is checked' new criteria – Empty (2 items will be selected)
- ebeln ASCENDING <-- Contract number – 4600000028 (1 item will be selected via sorting)
- ebelp ASCENDING <-- Contract line-item number - 10
- lifnr ASCENDING <-- Vendor/Supplier Name – 100000140 (Vendor has been chosen)
- ekorg ASCENDING <-- Purchase Organisation - 0075
- esokz ASCENDING <-- Purchasing info record category - Empty
- ematn ASCENDING <-- Manufacturer part number (MPN name) – Empty
Case 1: Source list with only PIR
Here PIR takes the lead as there are no Sch agg and Contract. Also you can see auto sourcing is unchecked.
If the source list contains multiple PIRs, then the selection criteria below will be used to choose the vendor. The auto-sourcing flag does not affect this.
- Priority ASCENDING – 11 (8 items have been selected)
- Purchasing info record with the given plant – 0075 (8 items have been selected & sorted)
- Purchasing info record with the smaller supplier number ASCENDING – 100000140 (2 items have been selected & sorted)
- Purchasing info record with the smaller purchasing organization ASCENDING – DE01 (Vendor selected) But
- Purchasing info record with the smaller purchasing group ASCENDING – 001
Here Purchasing org 1010 is selected but in the source list, DE01 is maintained as relevant to MRP. Need to check with SAP.
No similar vendors can be set relevant to MRP in the source list.
1. Quota
I have created a quota.
During MRP the system directly picks the relevant supplier based on quota.
As the priority increases with high-priority master data, the PIR with less priority does not affect MRP.
Prerequisites for quota: Splitting quota to be activated in lot sizing procedure and assigned to Material.
SIMG - Production - Material Requirements Planning - Planning – Lot Size Calculation - Check Lot Sizing Procedure
Conclusion:
I hope this may help you to know how the vendor is getting selected in HANA MRP after simplification. Comment if there are errors. Please have look to 2614920.