Skip to Content
Technical Articles
Author's profile photo shailesh mishra

What-if analysis of 2 storage location in one EWM Warehouse


The aim of this blog it to understand why it required to have at-least 2 storage location in one warehouse, the flexibility of having this set up and its integration to ERP ATP(Availability check) concept.



SAP has given usage of 2 storage locations as ROD( Received on Dock) and AFS(Available for Sale). The purpose of having 2 storage locations is that Shipping(Outbound delivery) and receiving(Inbound delivery) processes can be conducted from 2 separate storage locations.

  • ROD implies storage location where GR can be posted
  • AFS implies storage location where GI can be posted


SAP EWM doesnt work with storage location, inventory in EWM is stored at LIME(Logistics Inventory Management Engine) which uses Stock types. The attribute of storage location AFS & ROD is called Availability group in EWM, 002 & 001.

Stock types in EWM have 3 components, availability group which is assigned to ERP storage location, location-independent stock type and Stock role. I will cover this topics in latter part of this blog.

As a thumb rule Number of Storage location in ERP= Number of Availability group in EWM(N:N ratio)


Lets understand this concept in detail.

Understand EWM warehouse as a Circle having GR Zone, GI Zone and Final storage Bin. The GR zone is having ROD as storage location and Final storage Bin & GI zone has AFS storage location.

Inbound will be done by ROD sloc and Outbound will be done by AFS sloc.


Generally GR Zone  is considered as ‘’Received on Dock storage location’’ in  ERP because these stocks are not final Stock, technically not a ‘’Pickable Stock’’. The reason I am saying this is not pickable stock because, these stocks may undergo Quality inspection, counting or deconsolidation if required.

ATP Impact Analysis:

The reason why  SAP is using ROD/ AFS is to manifest the integration of availability check in the ERP. With the separation an ERP user can see which material is not just physically in the warehouse but available for a sales process – in contrast to stock that is still in goods receipt processing

We know ATP is carried out in 4 levels( Plant, storage location, Batch, Batch+ Storage location).

If the Storage location determination is active for the delivery item category(Usually TAN for Outbound) in 0VLP, system will determine a storage location during delivery creation in ERP based on customization of OVL3.


Note: ATP check is performed for all the relevant storage levels. If there is a storage location determination, the system will check ATP quantities on the selected storage location as well. If there is no available quantity on the selected storage location, error message VL150 (and VL367) will be raised


Inbound process:

Create a PO with Sloc 0001-ROD. Create an inbound delivery. Since Inbound delivery item category has Storage location required, 0001(ROD) is fetched in Inbound delivery.

Conduct GR, Inbound delivery is distributed to EWM and inbound delivery notification is generated due to PPF action in EWM. The storage location in inbound delivery in ERP is 0001(ROD) which becomes Stock type F1 in EWM inbound delivery.


How EWM delivery documents fetches F1 stock type corresponding to ERP storage location ROD?


F1–Unrestricted use in Putaway. This is not a usable stock.

LIME configuration from SCM basis:


Stock type F1 in EWM is assigned to Availability group 001.

Further Availability group is assigned to ERP storage location. So the handshaking of ERP storage location is done to Availability group in EWM which is assigned to Stock Types.


EWM Inbound delivery has F1 stock type now which is not ready for customer order. The stock is lying in GR zone which has storage location ROD(0001) in ERP delivery document.


Imagine a situation now

Sales order=100 Pcs,

Stock in ERP MMBE

AFS= 50 PCS,



Now, create delivery against Sales order VL01N, ERP delivery will be created of only 50 pcs, because Storage location AFS is part of ATP, and only 50 pcs will be committed in delivery. ROD stock will not be the part of ATP, so stock of 50 pcs will be untouched.

EWM will create Warehouse task for 50 pcs only.

Now, Create and Confirm a Warehouse task against this Inbound delivery in EWM.

  • Stock type in EWM changes from F1 to F2
  • Storage location in ERP changes from ROD to AFS due to transfer posting by 411 movement type


How does Flip of Stock type and storage location happen automatically?

The final storage type where Product is putaway should have below settings to trigger spin of Stock type and storage location change in ERP


Note:In GR zone, Availability group will be 001 and Mandatory setting will not be set.



ATP Impact Analysis with 1 storage location as AFS.

In a warehouse linked to one plant and one storage location, we usually define one availability group(002),and assign it to all stock types of the warehouse.

With 1 storage location, Shipping and receiving is conducted.

Imagine, a circle is an EWM warehouse where GR Zone, GI Zone and Final storage bin are covered with 1 storage location only.

Example: Assume a situation


Sales order =100 pcs


Stock MMBE(AFS)= 100 PCS


Create delivery in ERP VL01N, 100 PCS will be delivered. Since there is only one storage location , so storage location determination will happen for single sloc and hence entire quantity will be committed.


But there may be cases when only  10 pcs is in Final destination Bin and 90 pcs is still lying in GR Production Zone which is still not putawayed to final BIN. So, EWM will create only 10 pcs of Warehouse task because GR Zones( Interim Zones) are not part of storage type search sequence during outbound process.


Note:-Also, in case of 1 storage location if system is configured to send Goods receipt message in EWM not immediately but with below 3 options, stock can be consumed from EWM but not from ERP. This can create stock inconsistency.

Extended Warehouse Management -> Interfaces -> ERP Integration -> General Settings -> Set Control Parameters for ERP Version Control – Goods receipt Mode


In this setup, EWM delays the goods receipt message sending to ERP, so the stock in the goods receipt message will get available in ERP only at a later point in time. On the other hand the stock in EWM can be processed –  putaway can be done easily, resulting in a posting change on the delivery – or the already available stock in EWM can be picked for an outbound delivery and the goods issue can be posted for this.

It is also possible, that the stock is consumed on EWM side via cross docking process. As the confirmation message of goods receipt is not posted in ERP, the stock is not available in ERP side. This causes the deficit error.

So for stock sync up, it is advised to have 2 storage locations ROD and AFS is above setting is done.


Organizational Model for Production Supply

If a warehouse is connected to Production, we may think to additionally create Production storage location other than ROD and AFS. This storage location can be EWM managed or IM manged, that is up to the business.

In case of additional production storage location, you need to have additional Availability group 003 and stock types in EWM.

SAP has provided below

If you use a separate production storage location, it is advised to use Storage type 1000 for Production supply area.

  • Storage type 1000 for separate production storage locations in SAP ERP (with availability group 003)




However, with a single storage location acting as AFS and Availability group 002 can be used in a warehouse integrated to Production.

In this case, it is advised to use storage type 1005 as Production supply area.

  • Storage type 1005 for non-separate production storage locations in SAP ERP (with availability group 002)



Decision to keep Production storage location as EWM Managed or IM managed.

It purely depends on business and their requirement whether they want Production storage location to be EWM managed or IM managed.


However, I deeply investigated on this topic to have production storage location better to be IM managed or EWM managed.

  1. If Warehouse is integrated to production which produces same product over the period of time, same routing sequence, then it is a Repetitive Manufacturing business, and you need to have a separate Production storage location and that must be IM Managed to support consumption of parts from this IM storage location. Also, when it is required to conduct staging of ”Release order parts, the destination storage location must be IM managed. From EWM administered storage location , final confirmation can be posted of FG material through MFBF.

2. If business wants to implement Inhouse Kanban production, then for in-house-production strategies for Kanban with planned orders or cost collectors, then  only the finished product can be stored at EWM-managed storage locations. In production, the components can only be withdrawn from MM-IM-managed storage locations.



Hence topic ends here. I would appreciate if any corrections or improvement is requirement to make this blog more useful.




Shailesh Mishra

Assigned Tags

      You must be Logged on to comment or reply to a post.
      Author's profile photo Juergen Pitz
      Juergen Pitz


      detailed explanation. But of course there is absolutely NO need to have two storage locations, doesn't matter if you have the warehouse integrated to production or not.



      Author's profile photo shailesh mishra
      shailesh mishra
      Blog Post Author

      Hello Juergen,

      Thanks. With 1 storage location how ATP will work ? I understand EWM can work with single storage location also and I have worked on this design as well. But to have ATP integration with ERP, Sap quotes to use 2 storage location.

      SAP quotes as below


      Shailesh Mishra

      Author's profile photo Juergen Pitz
      Juergen Pitz

      GRRRR… stupid thing ate my first reply…

      Of course, it might be helpful to use two storage locations and follow the ROD / AFS scenario. But again, it is not a must.

      You write: “Now, create delivery against Sales order VL01N, ERP delivery will be created of only 50 pcs, because Storage location AFS is part of ATP, and only 50 pcs will be committed in delivery. ROD stock will not be the part of ATP, so stock of 50 pcs will be untouched.”

      I am not very good with availability checks, but in the standard settings in the sales order the system anyway only determines the plant and the ATP check is only on plant level. So the AFS / ROD scenario is not considered. It is also questionable if it makes any sense to make this check on storage location level in the sales order – because the delivery may be due only in days and who knows what stock you have then.

      The first place the storage location is found, is in the outbound delivery, when the system determines the picking storage location.

      For a lot of customers it does not matter that material is still in the goods receipt zone, because they always also have enough stock in the warehouse. Or they might know that in the morning they only putaway material and in the afternoon the pick the deliveries due today. So this whole scenario is overhead. And in an emergency I might want to use cross-docking, so then the ROD/AFS scenario just makes it more complicated.

      Other customers use several storage locations but have only one warehouse. Then the ROD/AFS scenario is only possible in a very limited manner.

      “However, if warehouse is integrated to Production, you must have 2 storage location.”

      Why that? It might be practical to have a separate storage location for production staging, but this depends on the materials in the warehouse. And it has nothing to do with AFS/ROD.



      Author's profile photo shailesh mishra
      shailesh mishra
      Blog Post Author

      Hello Juergen,

      Thanks for your input, i have corrected the points related to Production integration However, the usage of ATP at Sales order and Delivery is debatable.  You are right pointing that if ATP is conducted at SO level and plant is of course determined in SO, and ATP is triggered at Plant level, so it confirms all quantities. But at delivery level ATP is called differently. The checking rule of SO and delivery both are different as SO uses checking rule A and delivery uses Checking rule B and both are hard coded.

      For Sales order and delivery to have common checking rule B, the solution which client can use is to create Immediate delivery after SO creation from VOV8 config.

      May be for client, it is good idea to determine Storage location at sales order also which is of course not a standard functionality.

      And yes I agree with you It is not mandatory to have 2 storage locations in one warehouse, of course 2 storage locations provides better flexibility in stock separation. Even EWM can work with a single storage location.

      Best regards

      Shailesh Mishra

      Author's profile photo Ravi Hariharan
      Ravi Hariharan

      Well explained Shailesh. Thanks.


      Author's profile photo Naveen Som Singh
      Naveen Som Singh

      Very nice explaination . what is the best approach ? Single storage location or 2 storage location . I faced  a situation where we used single storage location and the stock was held up in GR Zone with goods receipt posted and reflected the stocks in ERP. The Batch determination for the process order determined the batch which is actually in the warehouse lying at the GR Zone.

      The PMR line item had a batch (lying in the GR Zone) when it was created in EWM after the process order was  released. Hence , when the warehosue tasks for staging was created, the  system failed to create Warehouse task for manaufacturing order because the system could not find the batch in the final storage type .

      considering the above situation can happen quite often ,Is it recommended to have 2 storage location approach - ROD and AFS.

      Also , how does the 2 storage location design can ensure the sales order can only confirm stocks based on the storage location AFS ?





      Author's profile photo Manuel Grämer
      Manuel Grämer

      Hi all,

      how does the ATP check work in the EWM production supply scenario with 2 storage locations (1x central warehouse, 1x IM production storage location) and order specific staging?

      As far as I know the ATP will check the IM production stor.loc. since it is assigned to the component. But on this storage location only already reserved materials will be lying because they have been staged for other orders. It would make more sense to check the central warehouse storage location (AFS), which could be determined through the control cycles.

      Are there any functions available or planned for this?


      Author's profile photo Kuoli Jing
      Kuoli Jing

      Thanks for sharing a wonderful blog, much appreciated.

      Author's profile photo Stefan Laukemper
      Stefan Laukemper

      I want to stress the point in the ROD AFS scenario where you say that the stock on the ROD storage location is anyways considered during ATP check in the sales order as the check happens on plant level. Well, there is the MRP area that can also be used where you can restrict the storage locations to be checked during ATP check.

      However, my point is another one. If I have a sales order that has a confirmed schedule line based on a purchase order + GR processing time in material master. Let's say delivery date purchase order is 14.9, GR processing time is 3 days so sales order get's confirmed for the 17.09.

      Now we post GR for the purchase order on 14.09. What happens now to the confirmed date of the sales order if ATP check is performed on plant level? The confirmed date is pushed to today and customer my be informed that he can be delivered 3 days earlier.

      Now SAP tries to create outbound delivery, that fails as the stock is not available in the AFS storage location. At the end, the customer gets the delivery as initially promised on the 17.09 as only then the stock is available on the AFS. IF BOP is executed again, the confirmed MAD in the sales order is now pushed out again to the 17.09. This is stupid and very confusing to the client.

      I can't believe this is standard SAP behavior. Customers must get crazy if SAP works like that?

      My assumption would be, if I use an MRP area for the ATP check in the sales order which only contains the AFS storage location, that SAP considers the purchase order in the ATP check as long as the final putaway has not been done. Only then the goods movement status of the inbound delivery switches to C. Then SAP should remove the purchase order from the MD04/CO09 and consider only stocks.

      As a matter of fact, this would also happen if one works only with one storage location that at the time of GR the confirmed date is pushed to the GR date. That's clear. But in an ROD, AFS scenario I would assume this does not happen. Otherwise what sense does ROD AFS principle make?