On CRM, shipping data failed to inherit to order from BP master data. But it works on SD. Why?
As title said, CRM shipping data failed to inherit to order from BP master data, but it works on SD.
Firstly, let’s see how it works on SD side.
- T-code XD03, customer 1000 under sales area 1000/10/00. “Order Combination” and “Complete delivery required” fields are marked.
- Then create an order under this sales area, input sold-to party with 1000, go to header shipping tab, you can see these configurations are inherited.
Then what would happen on CRM?
- T-code, BP, under the sales area, maintain shipping configurations like this:
- Then create an order, input sold-to party with the above BP, maintain sales area or make it determined, go to shipping tab, found data not inherited as on SD.
- But after I added an item with quantity, check header shipping and item shipping tabs again, will see it works now.
- Shipping data is determined after an item added.
<Analysis and Conclusion>
- After checking call stacks, I found the main program only called via event handler after maintain an item. Comparing to this, only inputting sold-to party on header will not call this program at all.
- The program is: FORM MERGE_FROM_SOLD_TO/SAPLCRM_SHIPPING_OW)
- Then not only for Shipping Set, but also for Billing Set, they work the same way. And this is standard behavior and how CRM code logic designed. It is well explained by SAP developer in note 826917 – Header data is only determined when material is entered.
Hope the blog can be helpful for you to understand this kind of issue and CRM behaviors.
Well, what I said above may give you an impression that it's a very specific tech issue which is different to SD. But actually what I really want to say is, I got an inspiration that once some determinations do not work, please try to add an item. Item may help the determination work.