EntityType: Assignment (ProjectData service)
In this article
Definition
Parent element
Child elements
Contains properties that define the reporting data for an assignment in the ProjectData service.
Example
The following REST query uses the Assignments entity set and the ResourceName property to get the IDs of all assignments that have unassigned resources. The query is all on one line.
https://<pwa_url>/_api/ProjectData/Assignments
?$filter=ResourceName eq 'Unassigned Resource'
&$select=AssignmentId
The following statement uses LINQ query syntax to retrieve Assignment entity data from the OData interface of the Project Server reporting tables. To use the statement in an application, set a service reference to the ProjectDataService, and initialize the ReportingData context. The Assignments entity set can then be accessed as context.Assignments. For more information, see Querying OData feeds for Project 2013 reporting data.
var query =
from a in Assignments
orderby a.ProjectName, a.ResourceName
select new
{
Project = a.ProjectName,
Resource = a.ResourceName,
AssignmentBookingType = a.AssignmentBookingName,
AssignmentStartDate = a.AssignmentStartDate,
Task = a.TaskName,
AssignmentWork = a.AssignmentWork,
AssignmentCost = a.AssignmentCost,
AssisgnmentCostVariance = a.AssignmentCostVariance,
AssignmentFinishVariance = a.AssignmentFinishVariance
};
The preceding statement can be written by using Lambda expression syntax, as follows:
var query = Assignments
.OrderBy(a => a.ProjectName)
.ThenBy(a => a.ResourceName)
.Select(a => new
{
Project = a.ProjectName,
Resource = a.ResourceName,
AssignmentBookingType = a.AssignmentBookingName,
AssignmentStartDate = a.AssignmentStartDate,
Task = a.TaskName,
AssignmentWork = a.AssignmentWork,
AssignmentCost = a.AssignmentCost,
AssisgnmentCostVariance = a.AssignmentCostVariance,
AssignmentFinishVariance = a.AssignmentFinishVariance
});
Either statement creates the following REST URL (all on one line).
http://<pwa_url>/_vti_bin/client.svc/ProjectData/Assignments
?$orderby=ProjectName,ResourceName
&$select=ProjectName,ResourceName,AssignmentBookingName,AssignmentStartDate,TaskName,
AssignmentWork,AssignmentCost,AssignmentCostVariance,AssignmentFinishVariance
All three of the sample queries get the same data.
Sample results of the Task query
Project |
Resource |
AssignmentBookingType |
AssignmentStartDate |
Task |
AssignmentWork |
AssignmentCost |
AssignmentCostVariance |
AssignmentFinishVariance |
---|---|---|---|---|---|---|---|---|
ProjectA |
Res2 |
Committed |
3/12/2012 8:00:00 AM |
T1 |
24.0 hrs |
$404.00 |
$0.00 |
0.0 hrs |
ProjectA |
Res7 |
Committed |
3/12/2012 8:00:00 AM |
T3 |
32.0 hrs |
$564.00 |
$136.00 |
8.0 hrs |
ProjectA |
Res8 |
Committed |
3/12/2012 8:00:00 AM |
T2 |
8.0 hrs |
$156.00 |
-$272.00 |
-16.0 hrs |
ProjectB |
Res3 |
Committed |
3/19/2012 8:00:00 AM |
T3 |
40.0 hrs |
$740.00 |
$0.00 |
0.0 hrs |
ProjectB |
Res4 |
Proposed |
3/19/2012 8:00:00 AM |
T4 |
8.0 hrs |
$168.00 |
-$168.00 |
-8.0 hrs |
ProjectB |
Res7 |
Committed |
3/19/2012 8:00:00 AM |
T1 |
48.0 hrs |
$836.00 |
$272.00 |
16.0 hrs |
ProjectB |
Res8 |
Committed |
3/19/2012 8:00:00 AM |
T2 |
24.0 hrs |
$428.00 |
$0.00 |
0.00 |
Definition
<EntityType Name="Assignment">
<Key>
<PropertyRef Name="AssignmentId" />
<PropertyRef Name="ProjectId" />
</Key>
<Property Name="ProjectId" Type="Edm.Guid" Nullable="false" />
. . .
<NavigationProperty Name="Baseline" Relationship="ReportingData.AssignmentBaseline_Assignment_Assignment_Baseline" ToRole="AssignmentBaseline_Assignment" FromRole="Assignment_Baseline" />
. . .
</EntityType>
Parent element
Element |
Description |
---|---|
The schema for the reporting data in the ProjectData service. |
Child elements
Child elements are properties of an assignment and navigation properties of that assignment. Attributes of the Property elements specify the property name and type, and whether the property can be a null value. The NavigationProperty elements specify collections of entities, such as baselines and resources, that are associated with an assignment. A navigation property uses an Association element in a query for a related entity or collection
The Key elements specify the properties that are the primary keys for an assignment query. ProjectId is the project GUID and AssignmentId is the GUID of the assignment.
Property elements
The following table lists the values of the Property elements for the Assignment entity. The Name, Type, and Nullable columns contain attribute values for each property.
Attribute values for the Property elements of Assignment
Name |
Type |
Nullable |
Description |
---|---|---|---|
AssignmentActualCost |
Edm.Decimal |
true |
The costs incurred for work already performed on an assignment, along with any other associated costs. |
AssignmentActualFinishDate |
Edm.DateTime |
true |
The date and time when an assignment was actually completed. |
AssignmentActualOvertimeCost |
Edm.Decimal |
true |
The costs incurred for overtime work already performed on an assignment. |
AssignmentActualOvertimeWork |
Edm.Decimal |
true |
The actual amount of overtime work already performed on an assignment. |
AssignmentActualRegularCost |
Edm.Decimal |
false |
The cost of the total non-overtime work already performed on an assignment. |
AssignmentActualRegularWork |
Edm.Decimal |
false |
The total amount of non-overtime work already performed on an assignment. |
AssignmentActualStartDate |
Edm.DateTime |
true |
The date and time that the assignment actually began. |
AssignmentActualWork |
Edm.Decimal |
true |
The amount of work that has already been performed on an assignment. |
AssignmentACWP |
Edm.Decimal |
true |
The costs incurred for work already performed on an assignment, up to the project status date or today's date.</td> |
AssignmentBCWP |
Edm.Decimal |
true |
The budgeted cost of work performed on an assignment that is scheduled, up to the status date or today’s date. |
AssignmentBCWS |
Edm.Decimal |
true |
The budgeted cost of work scheduled, up to the status date or today’s date. |
AssignmentBookingDescription |
Edm.String |
true |
The text description of the booking type. |
AssignmentBookingId |
Edm.Int32 |
false |
The integer constant that represents the assignment booking type. For more information, see the Microsoft.Office.Project.Server.Library.Resource.BookingType enumeration. |
AssignmentBookingName |
Edm.String |
true |
The assignment booking name (committed or proposed). |
AssignmentBudgetCost |
Edm.Decimal |
false |
The total scheduled or projected cost for an assignment. |
AssignmentBudgetMaterialWork |
Edm.Decimal |
false |
The total scheduled or projected use of equipment, supplies, or other consumable items for an assignment. |
AssignmentBudgetWork |
Edm.Decimal |
false |
The total amount of work originally planned for an assignment. |
AssignmentCost |
Edm.Decimal |
true |
The total cost for an assignment, based on costs already incurred, in addition to costs planned for the remaining work. |
AssignmentCostVariance |
Edm.Decimal |
true |
The difference between the baseline cost of an assignment and the total cost for work already performed, in addition to work remaining. |
AssignmentCreatedDate |
Edm.DateTime |
false |
The date and time that the assignment was created. |
AssignmentCreatedRevisionCounter |
Edm.Int32 |
false |
The number of times that the assignment has been revised. When the assignment is created, the AssignmentCreatedRevisionCounter = 1. |
AssignmentCV |
Edm.Decimal |
true |
The difference between how much it should have cost to achieve the current level of completion on the assignment and how much it has actually cost to achieve the current level of completion, up to the status date or today's date. |
AssignmentDelay |
Edm.Decimal |
true |
The amount of time beyond the start date that an assignment is allowed to start. |
AssignmentFinishDate |
Edm.DateTime |
true |
The date and time that the assignment is completed. |
AssignmentFinishVariance |
Edm.Decimal |
true |
The difference between an assignment's baseline finish date and its scheduled finish date. |
AssignmentId |
Edm.Guid |
false |
Key |
AssignmentIsOverallocated |
Edm.Boolean |
false |
Indicates whether the resource is assigned to more work on this assignment than can be done within the resource's normal working capacity. |
AssignmentIsPublished |
Edm.Boolean |
false |
Indicates whether the assignment is published. |
AssignmentMaterialActualWork |
Edm.Decimal |
true |
The actual work for a material resource, usually expressed as a percentage. |
AssignmentMaterialWork |
Edm.Decimal |
true |
The total time scheduled for a material resource. |
AssignmentModifiedDate |
Edm.DateTime |
false |
The date and time that the assignment was modified |
AssignmentModifiedRevisionCounter |
Edm.Int32 |
false |
Keeps track of the number of times that the assignment has been modified. When the assignment is created, the AssignmentModifiedRevisionCounter = 1. |
AssignmentOvertimeCost |
Edm.Decimal |
true |
The total overtime cost for an assignment, including costs for overtime work already performed, in addition to remaining overtime work. |
AssignmentOvertimeWork |
Edm.Decimal |
true |
The amount of overtime work that is scheduled to be performed on an assignment. |
AssignmentPeakUnits |
Edm.Decimal |
true |
The maximum percentage or number of units for which a resource is assigned at any one time for tasks. |
AssignmentPercentWorkCompleted |
Edm.Int16 |
true |
The current status of an assignment, expressed as the percentage of work that has been completed. |
AssignmentRegularCost |
Edm.Decimal |
false |
The cost fields show the total scheduled or projected cost for an assignment, based on costs already accrued, in addition to costs planned for the remaining work. |
AssignmentRegularWork |
Edm.Decimal |
false |
The total amount of regular (nonovertime) work that is scheduled to be performed on the assignment. |
AssignmentRemainingCost |
Edm.Decimal |
false |
The remaining scheduled expense that will be incurred by completing the remaining work on the assignment. |
AssignmentRemainingOvertimeCost |
Edm.Decimal |
false |
The remaining scheduled overtime expense for an assignment. |
AssignmentRemainingOvertimeWork |
Edm.Decimal |
false |
The amount of remaining scheduled overtime work on the assignment. |
AssignmentRemainingRegularCost |
Edm.Decimal |
false |
The remaining scheduled expense that will be incurred by completing the remaining scheduled regular (nonovertime) work for an assignment. |
AssignmentRemainingRegularWork |
Edm.Decimal |
false |
The amount of time, such as person-hours or days, that is still required to complete the regular (nonovertime) work for an assignment. |
AssignmentRemainingWork |
Edm.Decimal |
false |
The amount of time, such as person-hours or days, that is still required to complete both regular and overtime work for an assignment. |
AssignmentResourcePlanWork |
Edm.Decimal |
false |
The total time scheduled for the assignment in the resource plan. |
AssignmentResourceType |
Edm.Int16 |
true |
The type of resource that is associated with an assignment. For more information, see the Microsoft.Office.Project.Server.Library.Resource.Type enumeration. |
AssignmentStartDate |
Edm.DateTime |
true |
The date when a resource is scheduled to begin working on an assignment. |
AssignmentStartVariance |
Edm.Decimal |
true |
The difference between an assignment's baseline start date and its currently scheduled start date. |
AssignmentSV |
Edm.Decimal |
true |
The SV (earned value schedule variance) field shows the difference in cost terms between the current progress and the baseline plan for an assignment, up to the status date or today's date. |
AssignmentType |
Edm.Int32 |
false |
Type of the assignment. NormalAssignment=0, WorkOnlyAssignment=1, FixedCostAssignment=2, FixedCostWorkOnlyAssignment=3, EmptyAssignment=4, FixedCostGeneratedAssignment=100 (generated during RDS transfer), ResourcePlanAssignment=101. |
AssignmentVAC |
Edm.Decimal |
true |
The variance at completion (VAC) between the baseline cost and the total cost for an assignment. |
AssignmentWork |
Edm.Decimal |
true |
The total amount of time that is scheduled for an assignment. |
AssignmentWorkVariance |
Edm.Decimal |
true |
The difference between the originally planned baseline work on an assignment and the currently scheduled work. |
CostType_R |
Edm.String |
true |
The CostType assignment custom field, which is rolled down from the resource custom field value. |
Health_T |
Edm.String |
true |
The Health assignment custom field, which is rolled down from the task custom field value. |
IsPublic |
Edm.Boolean |
false |
Specifies whether the assignment is published. |
ProjectId |
Edm.Guid |
true |
Key |
ProjectName |
Edm.String |
true |
The name of the project. |
RBS_R |
Edm.String |
true |
The (RBS) assignment custom field, which is rolled down from the resource custom field. |
ResourceDepartments_R |
Edm.String |
true |
The ResourceDepartments assignment custom field, which is rolled down from the resource custom field. |
ResourceId |
Edm.Guid |
false |
The GUID that identifies the resource for the assignment. |
ResourceName |
Edm.String |
true |
The name of the resource for the assignment. |
TaskId |
Edm.Guid |
false |
The GUID that identifies the task that the assignment is for. |
TaskIsActive |
Edm.Boolean |
false |
True if the task is active. |
TaskName |
Edm.String |
true |
The name of the task that the assignment is for. |
TimesheetClassId |
Edm.Guid |
true |
The GUID that identifies the timesheet class for the assignment. |
TypeDescription |
Edm.String |
true |
The description of the assignment type. |
TypeName |
Edm.String |
true |
The name of the assignment type. See the Microsoft.Office.Project.Server.Library.Reporting.AssignmentType enumeration. |
Note
The Property elements table includes only the default assignment custom fields: CostType_R, Health_T, RBS_R, and ResourceDepartments_R. If you create a resource custom field or a task custom field that rolls down to assignments, the ReportingData schema for the Assignment entity type would contain an additional property for each new custom field. For example, if you create a resource custom field named Test Res that rolls down, the Assignment entity type would include the TestRes_R property for that assignment custom field.
NavigationProperty elements
The following table lists attribute values for the NavigationProperty elements of the Assignment entity. The Name and Relationship columns contain attribute values for each navigation property.
Each Relationship attribute has two pairs of names; each pair of names indicates a navigation direction. The first pair starts with the entity type that has the primary, or starting, role in the navigation. The second pair starts with the entity type that has the secondary, or dependent, role in the navigation. For example, for the Baseline navigation property, the primary type is AssignmentBaseline, and the secondary type is Assignment. For this type of navigation, the FromRole is Assignment_Baseline, and the ToRole is AssignmentBaseline_Assignment.
Attribute values for the NavigationProperty elements
Name |
Relationship |
Description |
---|---|---|
Baseline |
Establishes navigation from a collection of assignment baselines to an assignment and from an assignment to a baseline. |
|
Project |
Establishes navigation from a project to a collection of assignments and from an assignment to a project. |
|
Resource |
Establishes navigation from a collection of assignments to a resource and from a resource to a collection of assignments. |
|
Task |
Establishes navigation from a collection of assignments to a task and from a task to a collection of assignments. |
|
TimephasedData |
AssignmentTimephasedData_Assignment_Assignment_TimephasedData |
Establishes navigation from a collection of assignment timephased data to an assignment and from an assignment to timephased data. |