Monday 28 March 2016

Sales Order --> Rules --> Processing Constraints

Depending on the business requirements we can be required to check for some conditions and based on their applicability restrict some operations to be performed on the Sales Order.
These restrictions can be applied via the Processing Constraints. There are number of Seeded Oracle Constraints which prevent certain operations in orders to maintain Data Integrity .
E.g. We cannot split an Order line After it is shipped , thus Seeded Oracle Processing Constraint will ensure that this action cannot be performed by the user.


Apart from these we can have custom constraints defined too. Once the constraints have been defined we need to apply it i.e. map it to the responsibilities to specify which responsibilities will be bound by the constraint or can override the constraint.


This can be done by the Applicable to Option :


Oracle provides 3 options which work as below :


All Responsibilities : This means this constraint will be applicable to all responsibilities.
Authorized Responsibility : When any responsibility is mentioned here, then the processing constraint will NOT BE applicable to that responsibility
Constrained Responsibility : When any responsibility is mentioned here, then the processing constraint will BE applicable ONLY to that responsibility


For Seeded constraints the Applicability is All Responsibilities and cannot be updated