I am in the process of planning out a build for our Sales Incentives Calculation and I am wondering the best way to deal with the timescales.
The data that we get on the Sales performance is based on a Performance Period (Month or Quarter) which enables us to work out the percentage payable for the scheme (There are a number of components for for each scheme which are weighted)
This is then applied to the Salary of the month at which the incentive is paid (The Payment Month) which is 2 months later than the end of the performance period.
In addition, if there are any issues spotted in past calculations (i.e including/excluding a sale within that performance period), then we revisit the data based on the performance period and then make an adjusted payment with the current months usual payment cycle. So as an example
We are making a payment to an individual in September, based on their July performance (but then applied to their current Salary in September). We refer to this as the first calculation amount. Then also, for this individual we need to make a recalculation for their April performance (which was paid in June) and then make a payment to them in September for the difference between what the calculation suggests for the new payment based on April performance and the original payment in June)
I am trying to work out the best way to deal with having a Performance Date and a Payment Date which are 2 months apart, do it is clear which date the system is referring to, I don't want to have some modules where the refers to Performance Period and some where the date refers to the payment period
Is anyone able to suggest a good way to deal with this? We want it to be as automated as possible.
We chose to go down the road of two timelines: the real time being the "performance period" and the re-created time being the data load/payment period. In the data module we have these two dimensions, the calculation modules automatically selecting the "last" payment period for the relevant employees/group. You can also have them in the calculation/export module so that you are constantly calculating for all combination if necessary. It takes more space but typically ICM models are very small.
Create a SYS Time filter module with the Timescale of Quarter (I believe this is what your data shows). Create a line item, formatted as Time Period Quarter with the formula Item(time)-4. In your current module, you can do a lookup of the value using the line item in the SYS Time module you just created.