The standard process for merging orders involves OrderManager.mergeOrders() calling CommerceItemManager.mergeOrdersCopyCommerceItem() to copy existing commerce items from a source order to a destination order, and calling ShippingGroupManager.mergeOrdersCopyShippingGroup to copy existing shipping groups from the source order to the destination order. In the ShippingGroupManager, mergeOrdersCopyShippingGroup, in turn, calls either mergeOrdersCopyHardgoodShippingGroup, mergeOrdersCopyElectronicShippingGroup, or mergeOrdersCopyInStorePickupShippingGroup depending on the type of the shipping group.

If you are using the multisite features of Oracle ATG Web Commerce, merging orders must also take site information into account when deciding whether two items are identical, and therefore whether to increment the item count or to add a second item to the order. The methods used are CommerceItemManager.shouldMergeItems() and shouldMergeSubItems().

Note that if you have extended certain Commerce classes to store additional information, you must change the methods used for merging orders so the additional information is copied to the destination order when merging orders.

Copyright © 1997, 2013 Oracle and/or its affiliates. All rights reserved. Legal Notices