I am building a 5 year plan and need to include annual salary increases for all staff in July of each year. I have this as my salary formula:
ROW.PartialHeadcount* if(ROW.Per="hr",ROW.HrPerWeek*(2080)/(480), 1/12) * ROW.PayRate * (1+ASSUM.DC_Staff.RaisePct)
5% is entered in the assumptions for the raise amount in each cell from July 2010 to December 2015.
- If I put a 1 in the Raise Month each July, the salary increases for the month of July, then reverts back each August.
- If I put a 1 in the Raise month each month from July 2010 to December 2015, I get a 5% raise in July 2010 then a 5% raise each January.
- If I do not put anything in the Raise Month, each individual receives a 5% raise on the anniversary of their hire.
How do I need to amend the formula to only give the raise annually each July?
There is logic built into the default Pay Rate formula that accounts for this:
if((versionmonth(this) > 0) and ROW.Headcount>0 and (((versionmonth(this) - versionmonth(ROW.StartDate) > 1) and ASSUM.Personnel.RaiseMonth= 0 and fiscalmonth(this) = fiscalmonth(ROW.StartDate)) or (ASSUM.Personnel.RaiseMonth=month(this))),ROW.PayRate[time=THIS-1]*ASSUM.Personnel.RaisePct, 0)
The Pay Rate account is a cumulative plan by balance account. If you want to give all employees a raise in July, add "7" into the Raise Month Assumption starting in July 2010 and copy the value forward. Then add 5% in July 2010 and copy it forward. This should give you the results that you expect. Make sure that you also change the salary account back to the default formula as well.