In the retail Business process Collective Purchasing documents are used to combine the Store requirements supplied by their Distribution Centres.


WF10 Transaction is used to create Collective Purchase Order.


Process Flow :



screen 2.JPG

The Process One Collective Purchase Order will be  created from multiple Store Stock Transport Orders .One STO can be linked to Multiple Purchase Orders as this POs are created based on Article Source of Supply.Any qty changes in Collective Purchase Orders can not be updated in their corresponding Store STOs.Also If we delete any Collective Purchase Order line item ,the changes are not reflected in Store Orders . This process is used for Cross-docking process ,flow-through and putaway .


Table FRET is used to see link between Collective and its Corresponding Store Stock Transport Orders Orders


Following Checks are required to create Collective Purchase order.


1.Partial Deliveries should be allowed to the receiving Stores.If you don’t allow then the STOS are ignored by WF10 transaction .



Screen 1.JPG

2. Article Source of supply should be free from Deletion /Block


3.Receiving document items free from special stock .


Useful Badi :  WFRM_DET_ORDER_TYPE is used to switch standard Purchase Order  document type to  Custom Purchasing  document  type.



Stock Transport Order 1 :


DC :VZ01


Store : M001



screen 3.JPG

Stock Transport Order 2 :


DC :VZ01


Store :M002


screen 4.JPG



Collective PO generation  :


Transaction WF10


Enter the DC as shown below then execute


screen 5.JPG

screen 6.JPG

On selection Worklist Icon program generates Collective Purchase Order :



screen 7.JPG


Purchase Order


screen8.JPG



FRET Table Entry : PO and STO relationship


screen 9.JPG


I hope this document is useful for others to know Collective Purchase Order Process .


To report this post you need to login first.

2 Comments

You must be Logged on to comment or reply to a post.

  1. Konstantin Mesnyankin

    Hi, experts. I am ABAP developer.

    Let me describe my situation:

    I have a proposal to create new z-transaction, for example ( zwf10 ) . I am using BAdi WFRM_DET_ORDER_TYPE to switch  between CPO types NBIV and ZNBV.

    Now my problem is to separate  PO’s with type ZUBV into CPO of type ZNBV, and others into NBIV.

    There is a BAdi WFRM_X_OTB_DETERMINE_E but it actualy doesn’t work because they are passing dummy parameter in form ekpo_check (lv_dummy_ekpo) which then goes to parameter IM_EKPO of method DETERMINE_PO_ITEMS_CPO , so this method actually cannot detemine anything with the help of its parameters. Maybe i have to read global area like this ( assign ‘(SAPLWFR3)<g_select_ekko>’ ) ?

    (0) 

Leave a Reply