Patent ID: 8504980

Claim:
A computer program product tangibly embodied in a non-transitory computer-readable medium, the computer program product including instructions that, when executed, cause one or more processing components to perform operations comprising: enabling change, by a first outbound processing sub-component of a first processing component, to a first value of a first status variable relating to processing performed on a sales order data object instance by the first processing component; and enabling change, by a second outbound processing sub-component of the first processing component, to a second value of a second status variable relating to processing performed on the sales order data object instance by the first processing component, wherein: the sales order data object instance corresponds to a sales order document used in a business process of delivering and invoicing merchandise sold to a customer and includes multiple sales order object nodes, including a root node identifying information that applies to the sales order document and one or more item object nodes identifying information related to each type of item ordered, where each item object node includes an availability status variable that identifies an availability status of a respective item and a standard variable that describes an item type and quantity ordered tier the respective item; the first status variable indicates whether the sales order data object instance has been approved; the second status variable reflects a value of the availability status variable for each of the one or more item object nodes; the sales order data object instance further includes values for one or more standard variables and methods capable of being performed by the sales order data object instance; the first outbound processing sub-component is configured to trigger subsequent processing steps in a second processing component; the first outbound processing sub-component is permitted to change only the first status variable and is not permitted to change any other variable; the second outbound processing sub-component is configured to trigger subsequent processing steps in a third processing component; and the second outbound processing sub-component is permitted to change only the second status variable and is not permitted to change any other variable.