SPM - Cost Plan Actual Calculation Wrong

Ned Chamberlain
Tera Expert

I have identified a bug in PPMFundManager in both Zurich and Australia release.  I am working with ServiceNow on this to confirm best way to patch this.  It is very specific to the following scenario when you are rolling up expenses to the project and submitting time for project task.

 

It is reproducible on fresh instance.  

 

My other concern is that Australia has the expense lines structure different and this could be higher impact outside of this scenario. 

Is anyone seeing the same issue?

 

sn_invst_pln.budget_allocation_attribute  - cost_type

Com.snc.project.rollup.cost = true

Glide.cost_mgmt.calc_actual_cost = true

Glide.cost_mgmt.process_task_top_task = true

Project.Rollup = true

Time reporting project and project task

 

Submit time card for a week that spans a fiscal period (ie week of May 26)

Actual cost is duplicated / inflated

 

Australia Release:

NedChamberlain_0-1781894244399.png

 

 

Zurich

NedChamberlain_1-1781894244400.png

 

 

1 ACCEPTED SOLUTION

Ned Chamberlain
Tera Expert

Update on this....We confirmed that a viable work around is to include the function included in the BR "Update Actuals for Task" that filters the expense lines passed to PPMFundManager because it is not accounting for the rollup of expenses.  

We have a fix script from ServiceNow that was to support refreshing cost plan actuals if the cost plan was changed on an expense.  But that script was not accounting for rolled up expenses to project level. 

If you call PPMFundManager directly, it will produce inconsistent results if the expenses cross a fiscal period.

if (task.instanceOf("pm_project") ||  task.instanceOf("pm_project_task") )

        if (gs.getProperty("glide.cost_mgmt.process_task_top_task") == "true" && current.task != current.task.top_task)

            return;

View solution in original post

1 REPLY 1

Ned Chamberlain
Tera Expert

Update on this....We confirmed that a viable work around is to include the function included in the BR "Update Actuals for Task" that filters the expense lines passed to PPMFundManager because it is not accounting for the rollup of expenses.  

We have a fix script from ServiceNow that was to support refreshing cost plan actuals if the cost plan was changed on an expense.  But that script was not accounting for rolled up expenses to project level. 

If you call PPMFundManager directly, it will produce inconsistent results if the expenses cross a fiscal period.

if (task.instanceOf("pm_project") ||  task.instanceOf("pm_project_task") )

        if (gs.getProperty("glide.cost_mgmt.process_task_top_task") == "true" && current.task != current.task.top_task)

            return;