What's the best way to calculate weighted Task % Completion based on Resource Statuses?


Create new Task User Fields, which sums up the volume as per the different available Resource Status -

Installed - SUM(RESOURCE[STATUS_SET_NAME("Civil Works")=="Concrete slabs" AND STATUS_NAME("Civil Works")=="Installed"].UFV("Volume")))

Poured - SUM(RESOURCE[STATUS_SET_NAME("Civil Works")=="Concrete slabs" AND STATUS_NAME("Civil Works")=="Poured"].UFV("Volume")))

Reinforced - SUM(RESOURCE[STATUS_SET_NAME("Civil Works")=="Concrete slabs" AND STATUS_NAME("Civil Works")=="Reinforced"].UFV("Volume")))

Then run the following script, multiplying the required weighted % complete, e.g. Poured is 20%, Reinforced is 40% and Installed is 100% complete -

TASK SET_PROPERTY(PERCENT_COMPLETE, (  (UFV("Poured")*0.2) +  (UFV("Reinforced")*0.4) +  (UFV("Installed")*1) ) / SUM(RESOURCE.UFV("Volume")  ) *100  )