Delaying Processing Using Deactivation

Previous Next

See Also

This concerns import tasks or SQL tasks (as opposed to online data entry).


Constraint and relationship deactivation is contrary to the idea of using a Rules Engine. The basic idea of business rule definition is that business rules apply independently of the information system, and therefore must ALWAYS be checked.

If you deactivate constraints, the system can no longer guarantee that rules are implemented to all data. Therefore only use deactivation exceptionally, as a last resort.

In particular, be careful when deactivating transitional constraints. For non-transitional constraints, you can always look for data corruption later (for instance, by running a BenchMark violation report). For transitional constraints, you cannot, because the OLD column values are not stored.

To delay processing by using constraint or relationship deactivation:

1. Define the import task.
2. At the beginning of the import (or SQL) task, include one or more action tasks that deactivate constraint checks or relationship checks.
3. Run the import (or SQL) task. Deactivated constraints and relationship checks are not fired. They are only deactivated for the duration of the job.
4. Check for data corruption later, and fix manually or by running a SQL task.