Direct Ship Orders - PO Number "RORN"

When I create Direct Ship Order, it creates Purchase Order successfully. When I go into detail line revision, it gets next number for purchase order and copies the line number from sales order line. (S9 and P9 is custom order type similar to SD/OD)

SO #SO TyLinePO #PO TyLineAction
1501S91.00000000301P91.000-Add Order (P4210)
1501S92.00000000302P92.000-Detail Revision (P4210)

The only question I have - Is there anyway I can prevent generating new purchase order number(00000302) and use the same one(00000301) which was generated with line 1.000 at the time of entering new order.

Is there any set up on constant or anywhere else which controls order numbers? Or any work around - I tried to look into B4200311 - don't want to change function but can change flag value based on order type in P4210 (big time customized).

Is Sales Order ALPH1 flag controlling order number? Is it being driven by SOEMBF flag passed from P4210 to B4200310? How to change it if that's the option?

I also looked into the Processing options for P4210 and P4310 - but nothing there pertains to this challenge.:)

I also tried using JDE standard SD/OD and it does the same way creating next purchase order every time you enter into detail revision.

Anyone come across this challenge?


Reputable Poster
Your probably not going to like the answer - but I think you will find that this is working as designed.

From Direct Ship FAQ document (Doc ID 1591557.1)....

Related Order Information
Question 1: Is there a way to create a separate OD purchase order for each line in an SD sales order with line type D?* Normally, an SD order with more than one line creates a single related OD purchase order.
Answer 1: In order to create a separate OD order for each line on the SD order, you would need to do one of the following:
*** Have a different Ship To address number on each SD line.
*** OR
*** Have a different Supplier address number on each SD line.
*** OR
*** Enter the SD order one line at a time. That is, enter line 1 and save the order, then call up the order and add line 2 and save the order, and so on. Each time you add a new line to the existing order, a new OD order is created.
This last scenario looks to be your example. It is likely designed to stop the Purchase Order from becoming a moving target (e.g. how would you stop someone from adding lines to the SD/OD if it did let you do this as there is no header status to say "stop adding lines now").

Perhaps consider taking the Customer's Sales Order as a Quote and then when you reach a point where you can finalise the Customers requirement you could generate your S9/D9 from this Quote by calling the correct SO version when you release the quote?
Alternatively you can generate Purchase Orders from Sales Orders (P43011 and take the Row Exit to Reorder SO - see proc opts), but this relationship will not behave the same as a true Direct Ship.

Hope this helps.
Thanks for your reply to my post.
Yeah! I didn't like the answer but at least now I know that there is no other way to do it.
For work-around, I am now coding fix using custom NER call to do following:

When I am in update mode and last status is 520(on entry only), I call custom NER and update F4201/F4211 RORN with original RORN and F4311 DOCO after fetching F4311 with RORN(SO #)/RCTO/RKCO key. I also needed to delete new purchase order from F4301 and update F4301 exisiting ORDER TOTALS.

I entered some orders and ran thru receiving, voucher, sales update and post batch jobs successfully.