The updateOrder
pipeline saves the Order
supplied to it. The updateOrder
pipeline chain is executed by the updateOrder()
method in the OrderManager
. The updateOrder()
method adds the given Order and the OrderManager
to its parameter list, which is supplied to the executing chain. The pipeline chain’s transaction mode is TX_REQUIRED.
The following sections describe each processor in the pipeline chain.
updateOrderObject
Saves the properties in the Order object.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/order/processor/SaveOrderObject
PipelineProcessor object: atg.commerce.order.processor.ProcSaveOrderObject
Transitions: return value of 1 executes updateCommerceItemObjects
.
updateCommerceItemObjects
Saves the properties in the CommerceItem
objects in the Order.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/order/processor/SaveCommerceItemObjects
PipelineProcessor object: atg.commerce.order.processor.ProcSaveCommerceItemObjects
Transitions: return value of 1 executes updateShippingGroupObjects
.
updateShippingGroupObjects
Saves the properties in the ShippingGroup
objects in the Order.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/order/processor/SaveShippingGroupObjects
PipelineProcessor object: atg.commerce.order.processor.ProcSaveShippingGroupObjects
Transitions: return value of 1 executes updateHandlingInstructionObjects
.
updateHandlingInstructionObjects
Saves the properties in the HandlingInstruction
objects in all the ShippingGroups
in the Order.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/order/processor/SaveHandlingInstructionObjects
PipelineProcessor object: atg.commerce.order.processor.ProcSaveHandlingInstructionObjects
Transitions: return value of 1 executes updatePaymentGroupObjects
.
updatePaymentGroupObjects
Saves the properties in the PaymentGroup
objects in the Order.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/order/processor/SavePaymentGroupObjects
PipelineProcessor object: atg.commerce.order.processor.ProcSavePaymentGroupObjects
Transitions: return value of 1 executes updatePaymentStatusObjects
.
updatePaymentStatusObjects
Saves the properties in the PaymentStatus
objects in all the PaymentGroups
in the Order.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/order/processor/SavePaymentStatusObjects
PipelineProcessor object: atg.commerce.order.processor.ProcSavePaymentStatusObjects
Transitions: return value of 1 executes updateRelationshipObjects
.
updateRelationshipObjects
Saves the properties in the Relationship objects in the Order.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/order/processor/SaveRelationshipObjects
PipelineProcessor object: atg.commerce.order.processor.ProcSaveRelationshipObjects
Transitions: return value of 1 executes updatePriceInfoObjects
.
updatePriceInfoObjects
This processor saves the properties in the OrderPriceInfo
and TaxPriceInfo
objects in the Order
, the ShippingPriceInfo
object in the ShippingGroups
, and the ItemPriceInfo
object in the CommerceItems
.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/order/processor/SavePriceInfoObjects
PipelineProcessor object: atg.commerce.order.processor.ProcSavePriceInfoObjects
Transitions: return value of 1 will execute updateCostCenterObjects
next
ProcSavePriceInfoObjects
includes an orderStateSaveModes
property, which you can use to map order states (see Order States in the Working With Purchase Process Objects chapter) to save modes,which determine which types of PriceInfo object are saved. The valid save modes are:
ALL—Saves all
PriceInfo
types.ALL_NO_AUDIT—Saves all
PriceInfo
types, but does not save audit trail information (pricing adjustments and detailed price info objects)ORDER—Saves only the
OrderPriceInfo
object (not shipping, item, tax)ORDER_NO_AUDIT—Saves only the
OrderPriceInfo
object, with no audit informationNONE—Saves no pricing information
For example:
orderStateSaveModes=INCOMPLETE=ALL_NO_AUDIT
ProcSavePriceInfoObjects
also includes a defaultSaveMode
to use if the current order state does not have an entry in the orderStateSaveModes
map.
updateCostCenterObjects
Transactional Mode: TX_MANDATORY
Nucleus component: /atg/commerce/order/processor/SaveCostCenterObjects
PipelineProcessor object: atg.commerce.order.processor.ProcSaveCostCenterOjbects
Transitions: return value of 1 execute saveManualAdjustments
.
saveManualAdjustments
Updates the order for any manual adjustments made by agents in Oracle ATG Web Commerce Service Center. If you are not using Commerce Service Center, this step does not apply. See Warning below.
Transactional Mode: TX_MANDATORY
Nucleus component: /atg/commerce/order/processor/SaveManualAdjustments
PipelineProcessor object: atg.commerce.order.processor.ProcSaveManualAdjustments
Transitions: return value of 1 execute setLastModifiedTime
.
Warning: Manual adjustments are changes to an order made by an agent using Oracle ATG Web Commerce Service Center. Manual adjustments are applied unconditionally by the OrderAdjustmentCalculator
(see the ATG Commerce Service Center User Guide for information on this class). Once an adjustment has been added, it affects the order’s price regardless of the order’s contents. If an adjustment is applied to an incomplete order, changes at checkout time do not affect the adjustment; for example, if a $20 credit is manually applied to an incomplete order, and the customer removes items, the order could end up with a $0 total. By default, the processor is configured not to save manual adjustments for incomplete orders, in which case the adjustment is discarded if the agent does not check out the order. However, this behavior is configurable. If you want to apply manual adjustments to incomplete orders, set the saveIncompleteOrderAdjustments
property to true in the /atg/commerce/order/processor/SaveManualAdjustments
component. To save manual adjustments for orders in additional states, adjust the configuration of the incompleteStates
property.
# The processor will save the manual adjustments to the repository for orders # in these states, depending on the value of saveIncompleteOrderAdjustments. incompleteStates^=/atg/commerce/order/OrderLookupService.incompleteStates # The processor will save the manual adjustments to the repository for orders # in the configured incomplete states if this property is true. Otherwise, the # manual adjustments are not saved for incomplete orders. saveIncompleteOrderAdjustments=false
setLastModifiedTime
Sets the lastModifiedTime
property of an Order to the current time if any changes were made to an Order.
Transactional mode: TX_MANDATORY
Nucleus component: /atg/commerce/order/processor/SetLastModifiedTime
PipelineProcessor object: atg.commerce.order.processor.ProcSetLastModifiedTime
Transitions: None. This is the last link in the chain and causes the PipelineManager
to return to the caller.