Changed Events Log

The application populates the Changed Events Log with all plan and plan assignment changes. Logging these change events lets you run the calculation process for only the participants that require it.

You can check the log to see the list of events and all participants affected by change events to get an idea of how long a calculation will take. This table shows the four levels the application can track changed events for with descriptions of each.

Level

Description

1. Participant

If an event causes recalculation for multiple periods, then the event creates an entry for the participant with a null period and specifies the date range.

2. Participant, Period

A participant usually has one entry per period with a status of Incomplete in the log.

If the event causes a change to all participants, then the application adds a single, global entry that tracks all participants for a period.

3. Participant, Period, Start Date

If an event causes the change at a specific date within a period, then the log can track at that date range level.

The application can then recalculate transactions falling within the specified date range, instead of calculating for the entire period.

4. Participant, Period, Start Date, Plan Component

This level is the most granular level that the application tracks and records, and it makes incremental calculation the most efficient.

For the events that cause the REVERT_TO_STATE to skip to the Calculation phase, the calculation process has to run only the Calculation phase again. This makes sense if, for example, calculation is reprocessing the transaction only because of a change in the commission rate of a single plan component.

In the log table, the REVERT_TO_STATE column tells the calculation process what state it must revert transactions to.

  • For full calculations, the process completely deletes the earnings transactions and returns the classified credit transactions to the unprocessed state.

  • For incremental calculations, which are determined implicitly, the process can selectively skip various phases for individual transactions.