These cookies are required for the website to function properly. They ensure security, enable basic features like page navigation, and store user session data. You cannot disable these cookies.
- Resource Planning System
- Features
- Assignments and substitutions
Assignments and substitutions
Keep approved staffing, rate snapshots and mid-project replacements connected to their original decisions.
OverviewAssignment Calendar×
Resource Planning System · Assignments and substitutions
New
Assignment Calendar
Assignments
| Assignment number | Resource | Project | Start date | End date | Allocation pct | |
|---|---|---|---|---|---|---|
| ASS-10566 | Leila Haddad | Willow field service launch | 26 Oct | 02 Nov | 77 | |
| ASS-39706 | Iris Chen | Northline fulfillment upgrade | 22 Oct | 31 Oct | 64 | |
| ASS-48447 | Sana Qureshi | Harbor clinic portal rollout | 31 Oct | 08 Nov | 100 | |
| ASS-61160 | Amara Okonkwo | Baymere reporting program | 27 Oct | 01 Nov | 89 | |
| ASS-73846 | Mateo Valdez | Baymere reporting program | 01 Nov | 03 Nov | 82 |
6 of 6 records
Leila HaddadAssignments · ASS-10566
ActiveProjectWillow field service launch
Start date26 Oct
End date02 Nov
Allocation pct77
What you can do
Assignment generation
On approval the assignment-on-approval workflow fires: a code node creates an Assignments row (Resource, Project, Role, rate card resolved from Practice + start date, bill rate resolved from rate card rows and frozen on the Assignment, cost rate snapshotted from resource cost rate, allocation pct carried from the request) plus N assignment periods rows (one per week from start date to end date at the requested allocation pct). The workflow then writes the Resource into the matched pm-projects project as a project member via the connected record service so the team appears in the project workspace. The Resource and Project Manager are emailed.
Substitutions
When a Resource needs to come off a project mid-flight (resignation, medical leave, reassignment, performance swap, client request), the Project Manager (or Resource Manager) proposes a Substitutions row with outgoing resource, incoming resource, effective date, and Reason. On independent approval (Status: Proposed → Approved), the workflow rechecks incoming capacity and the current assignment revision, then atomically truncates the original Assignment’s end date to effective date − 1, keeps it Active until the boundary becomes effective, and creates a new Assignments row + assignment periods for the incoming resource starting effective date.
Assignment close-out
Daily, assignment-end-cleanup flips every Assignments row with end date < today AND Status: Active to Status: Completed (or Substituted for an approved effective replacement), freezes the trailing assignment periods to Status: Frozen, and recomputes the Resource’s forward weekly capacity to release the freed allocated hours. The Resource is now visible to skill-match-suggester for the next request.
Replace a resource without losing the earlier weeks
A substitution starts from the original assignment and a specific effective date. The outgoing resource must match that assignment, and the incoming person must be a different eligible resource. Recheck the incoming person’s capacity before accepting the replacement; an open request is not enough. A future handoff retains the outgoing person’s booked hours before its effective date. In a split week, each person carries only their agreed days, so the change neither frees already committed time nor books the whole week twice.
Split the approved date range at the boundary in one transaction. Earlier weeks and their source-approved actuals remain attached to the original assignment. Later planned periods move to the new assignment once, with no duplicated allocation in the effective week. A repeated approval returns the same replacement identity.
The project membership connection is a separate outcome. If the delivery app times out after accepting the request, keep the original membership command key and reconcile it. The staffing team can see that the local assignment exists while the external membership is still unresolved. Repeating a new command would risk duplicate project memberships and notifications.
What your team sees
- Assignment Calendar. Open the current records for this module within your assigned role and permitted scope.
What it keeps track of
Data model- Assignments
- The staffing record — a Resource on a Project at a Role at an allocation percentage over a date span. Spawned from an approved resource request. The unit of capacity consumption.
- Assignment periods
- Week-by-week allocation rows for an Assignment. Generated on approve; the granular hours that roll up into weekly capacity and Utilization. Reconciled to actuals from
pm-timebytime-sync-from-pm-time. - Substitutions
- A formal swap mid-Assignment — Resource A rotates off, Resource B rotates in. Captures the from / to, the effective date, and the reason. The original Assignment goes Substituted; a new Assignment is created for the inbound Resource.
- Resource requests
- Demand from a Project — “we need a Senior Data Engineer with Snowflake + dbt at 50% from May 1 through July 31.” Routes to the matching Practice’s Resource Manager for approval and a match.
Who uses it
Permissions- Resource Manager
- Controls staffing.
- Project Manager
- Proposes changes. each Resource reads their own assignment.
Set up Resource Planning System your way.
Start free, then use Proto to change fields, steps and approvals before your team goes live.