Create
Learn
Share

OrderOfExecution

rename
ethyl's version from 2016-07-22 14:51

Section

Question Answer
1Loads the original record from the database or initializes the record for an upsert statement.
2Loads the new record field values from the request and overwrites the old values.(perform sys.validation if edit from the UI)
3Executes all before triggers.
4Runs most system validation steps again, such as verifying that all required fields have a non-null value, and runs any user-defined validation rules. No layout specific rules (ran in step 2)
5Executes duplicate rules. If the duplicate rule identifies the record as a duplicate and uses the block action, the record is not saved and no further steps, such as after triggers and workflow rules, are taken.
6Saves the record to the database, but NO COMMIT
7Executes all after triggers.
8Executes assignment rules.
9Executes auto-response rules.
10Executes workflow rules.
11If there are workflow field updates, updates the record again.
12If the record was updated with workflow field updates, fires before update triggers and after update triggers one more time (and only one more time), in addition to and only standard validations (no other rules, not even custom validation).
13Executes processes / flow triggers (PB exceeded flow triggers)
14Executes escalation rules.
15Executes entitlement rules.
16If the record contains a roll-up summary field or is part of a cross-object workflow, performs calculations and updates the roll-up summary field in the parent record. Parent record goes through save procedure.
17If the parent record is updated, and a grandparent record contains a roll-up summary field or is part of a cross-object workflow, performs calculations and updates the roll-up summary field in the grandparent record. Grandparent record goes through save procedure.
18Executes Criteria Based Sharing evaluation.
19Commits all DML operations to the database.
20Executes post-commit logic, such as sending email.
memorize

Recent badges