Matrix is not taking correctly the roles values from task, when you have the same resource in 2 tasks, but this 2 tasks with different roles, the project should grab different rows from matrix since each task has different roles.
STEPS TO REPRODUCE
Before we need the following:
-Resource with no roles by default.
-Matrix with the following propeties:
Columns: Resource Role
Rows: 3
From Date:1/1/1990
To Date: 12/31/2017
Resource role: csk.architect
Currency: USD
Rate/Standard Cost/ActualCost: 10
From Date:1/1/1990
To Date: 12/31/2017
Resource role: csk.dba
Currency: USD
Rate/Standard Cost/ActualCost: 20
From Date:1/1/1990
To Date: 12/31/2017
Resource role: *
Currency: USD
Rate/Standard Cost/ActualCost: 30
-Steps
Go to Home > Projects
Click new
Go to properties tab > Settings
Populate 'Labor transaction matrix and add the matrix that you create according to above statement'
Go to team tab and add the Resource
Go to task tab and add 2 tasks from 1 day (8 hours) each one (Task1 and Task2).
Assign the resource to both tasks.
Once assigned, for Task1 add in 'Role' field 'Architect' and for Task2 add in 'Role' field 'DBA' (These are the rows of the matrix)
Run 'Rate matrix Extraction' job with option 2 and 3.
Go to Project gantt and execute 'update cost totals'
Expected Results: 'ETC Cost' value shows 80 USD for Tasks1 and for Task2 160 USD.
Actual Results: 'ETC Cost' value shows 240 USD for all tasks.
If we remove the row in the matrix which converts all roles (And run RME job and update cost totals) the results is 0 in 'ETC Cost'.
Now, if i add the Role 'Architect' on team tab in the resource (And run RME job and update cost totals) the results is taking the 'Architect' values which now is 80 USD.
This is working as expected. The update costs totals job uses the role from the TEAM record, not from the task record for Earned Value purposes.
If you want to see the costs based on roles from the task assignment, go into Cost Plans, and populate the cost plan based on task assignments.
This cannot be make it for Earned Value purposes, for Earned Value you should assign the role on TEAM tab and run 'rate matrix extraction' job to work with correct values.