The project planning module looks good and does most of what we need, but i don't see how it can manage employee utilization across multiple projects. E.g. lets not assign John 80 hours of work in a week.... at least unintentionally.
Has anyone got some suggestions on how to use the tool to do this or perhaps a package?
Hello,
While it should be possible to customize Aras Innovator to support this kind of check, there is not, to the best of my knowledge, any out of the box functionality or Community Project that already accomplishes this.
One possible idea would be to create a custom ItemType, let's call it ScheduledHoursPerWeek, that contains a week start date, a week end date, and a corresponding user that keeps track of how many hours the employee has currently been scheduled to work. You can then add an onAfterAdd/onAfterUpdate event to the Activity2 ItemType that will automatically update the ScheduledHoursPerWeek of that employee based on the "work_est" property. In this event, if the total ScheduledHoursPerWeek goes above a given threshold, you can throw an error indicating that the user cannot be assigned more than "n" hours of work.
You can use the idea above as a jumping off point, but there is a lot more to this implementation to consider. A ScheduledHoursPerWeek Item must be created if an employee hasn't been assigned any hours for that week yet. It's possible that an Activity on a project extends over multiple weeks, so you would need to break the time frame down into weekly parts before updating an employee's ScheduledHoursPerWeek. This solution also requires an Item for every employee for every week which can lead to a lot of excess data if you do not have some kind of scheduled cleanup of these Items in place.
If you have any specific questions about the implementation of this approach or another one, don't hesitate to post a response here or make another thread on the forums.
Chris
___________________________
Christopher Gillis
Aras Labs Software Engineer
Hello,
While it should be possible to customize Aras Innovator to support this kind of check, there is not, to the best of my knowledge, any out of the box functionality or Community Project that already accomplishes this.
One possible idea would be to create a custom ItemType, let's call it ScheduledHoursPerWeek, that contains a week start date, a week end date, and a corresponding user that keeps track of how many hours the employee has currently been scheduled to work. You can then add an onAfterAdd/onAfterUpdate event to the Activity2 ItemType that will automatically update the ScheduledHoursPerWeek of that employee based on the "work_est" property. In this event, if the total ScheduledHoursPerWeek goes above a given threshold, you can throw an error indicating that the user cannot be assigned more than "n" hours of work.
You can use the idea above as a jumping off point, but there is a lot more to this implementation to consider. A ScheduledHoursPerWeek Item must be created if an employee hasn't been assigned any hours for that week yet. It's possible that an Activity on a project extends over multiple weeks, so you would need to break the time frame down into weekly parts before updating an employee's ScheduledHoursPerWeek. This solution also requires an Item for every employee for every week which can lead to a lot of excess data if you do not have some kind of scheduled cleanup of these Items in place.
If you have any specific questions about the implementation of this approach or another one, don't hesitate to post a response here or make another thread on the forums.
Chris
___________________________
Christopher Gillis
Aras Labs Software Engineer