/// <summary> /// Plan the resource for an assignment /// </summary> /// <param name="str"></param> /// <returns></returns> public static void PlanForRelease(this RHumanResource person, RReleasePlanning release, Project project, Milestone milestone, Deliverable deliverable, Activity activity, Period assignedPeriod, double focusFactor) { var rep = new ResourceRepository(); try { rep.SaveReleaseAssignment(release.Id, project.Id, person.Id, milestone.Id, deliverable.Id, activity.Id, assignedPeriod.StartDate, assignedPeriod.EndDate, focusFactor); // make sure we have status records for all release, project, milestone and deliverable combinations if (release.Milestones.Count == 0) release.LoadPhasesAndMilestonesAndProjects(); release.GenerateMilestoneStatusRecords(); } catch (Exception ex) { throw; } }