We have this topic in NW help that outlines the order of operations for actions blocks and triggers for standalone tables and HD tables. In general, the order goes Action Block > Pre Trigger > table insert/update/delete > Post Trigger.
I wanted to know more about the sequence of logic block executions (action blocks specifically) on multi-table step transactions. For example, a tree relationship application where the relationship detail application also has an inline application — what order are the records committed, if all in the same NATE container (the relationship, the detail, and the inline record) if action blocks are present.
In general, when discussing the order of execution of certain steps during a NATE container commit, you can expect the order to always be in the same pattern.
The first phase that occurs during a container commit is the Action Block phase. All records that are in a table with an action block will be processed in the order they were modified by the user.
The second phase that occurs during a commit is the Live Commit phase. All records that were either put back into pending in the container during the action block phase (i.e. what happens when a Save HD action is executed in a logic block) or didn’t have an action block defined will then be committed to live in the order they were modified. Please note that modifications that occur during the action block phase can change the modification order of the record.
To be specific for your use case, assuming that by “action blocks are present”, you mean that both the relationship detail and the inline app’s tables have action blocks, but the relationship table only has a trigger, your commit order will be:
- Relationship Detail action block
- Inline action block
- Relationship trigger
2 Likes