The requirement is they want a field called 'Baseline cost' on the Project Task object to 'stamp' a value which is calculated when a checkbox called 'Baseline Project' on the Project object is checked. They don't want the value to change once the box is checked or if more estimated hours are added or subtracted.
The way I currently have it set up is with a Workflow Rule with this criteria:
AND( pse__Project__r.Baseline_Project__c = TRUE, ISNULL( Baseline_Cost__c ) )
And the field Update populates the Baseline Cost field with this formula:
(Consultant_Estimated_hours__c * 33.72) + (Leader_Estimated_Hours__c * 96.5) + (Operations_Estimated_Hours__c * 54.26) + (Project_Manager_Estimated_Hours__c * 43.57) + (Software_Engineer_Estimated_Hours__c * 65) + (Solution_Architect_Estimated_Hours__c * 63.11)
It works as long as the Baseline Cost field starts out as null but my tester showed me it wasn't working and it was because they populated Baseline cost had 0.00 in it. I'm thinking the tester may have inadvertently keyed in the value when it should have just been a null. Maybe I'll have to run a data load to null the field out and make it read-only. But I was wondering if maybe there is another better way of accomplishing this.