Skip to end of metadata
Go to start of metadata
You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 18
Next »
Overview
This web service inserts or updates a single project task based on a detailed project task structure (PwsProjectTaskDetail). The service returns the identity (PwsProjectTaskDetail) of the project Task that has been inserted or updated.
- PwsSaveProjectTask
- serviceRequest: PwsSaveProjectTaskRq
- RequestId: Int32
- SessionTicket: String
- DescriptionClearFlag: Boolean
- DriveEsdAndDurationFromPlannedDatesFlag: Boolean
- EarliestStartDateClearFlag: Boolean
- EngagementTimestamp: String
- ParentTaskClearFlag: Boolean
- PredecessorsClearFlag: Boolean
- ProjectIdentity: PwsProjectRef
- ProjectTask: PwsProjectTaskDetail
- StealLockFlag: Boolean
- SubscriptionsClearFlag: Boolean
Request Elements
Element | Data Type | Required? | Default | Description | Sample Data |
---|
RequestId | Int32 | No |
| Click here for more information. |
|
SessionTicket | String | Yes |
| Click here for more information. | AftyRXSTlnMPzozuKwq0kQ== |
DescriptionClearFlag | Boolean | No | false | If updating an existing task and flag is set to 'true', existing description is cleared. | false |
DriveEsdAndDurationFromPlannedDatesFlag | Boolean | No | false | If set to 'true', the duration is calculated by determining the number of minutes between the planned start date and planned end date, taking into account holidays and location working minutes per day. | false |
EarliestStartDateClearFlag | Boolean | No | false | If updating an existing task and flag is set to 'true', existing earliest start date is cleared | false |
EngagementTimestamp | String | No |
| This is a Base64 encoded timestamp utilized for engagement locking. To protect against overwriting other changes, you may optionally echo back the timestamp returned in a prior response. This will cause the request to fail if any change has been made between the two invocations. |
|
ParentTaskClearFlag | Boolean | No | false | If updating an existing task and flag is set to 'true', existing parent task is cleared. |
|
PredecessorsClearFlag | Boolean | No | false | If updating an existing task and flag is set to 'true', existing predecessor is cleared. |
|
ProjectIdentity | PwsProjectRef | Yes |
| The identity of the project. Click here for more information. |
|
ProjectTask | PwsProjectTaskDetail | Yes |
| The detail of the project task. Click here for more information. |
|
StealLockFlag | Boolean | No | false | If set to 'true', any locks on the project will be stolen if it is currently locked, otherwise, if it is set to 'false' and a lock is in place the service will fail. | false |
SubscriptionsClearFlag | Boolean | No | false | If set to 'true', subscription is cleared. | false |
Request Usage Example(s)
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pws="http://projectorpsa.com/PwsProjectorServices/" xmlns:req="http://projectorpsa.com/DataContracts/Requests/" xmlns:sch="http://projectorpsa.com/DataContracts/Shared/Scheduling/" xmlns:com="http://projectorpsa.com/DataContracts/Shared/Common/">
<soapenv:Header/>
<soapenv:Body>
<pws:PwsSaveProjectTask>
<pws:serviceRequest>
<req:SessionTicket>AftyRXSTlnMPzozuKwq0kQ==</req:SessionTicket>
<sch:DescriptionClearFlag>false</sch:DescriptionClearFlag>
<sch:DriveEsdAndDurationFromPlannedDatesFlag>false</sch:DriveEsdAndDurationFromPlannedDatesFlag>
<sch:EarliestStartDateClearFlag>false</sch:EarliestStartDateClearFlag>
<sch:ParentTaskClearFlag>false</sch:ParentTaskClearFlag>
<sch:PredecessorsClearFlag>false</sch:PredecessorsClearFlag>
<sch:ProjectIdentity>
<com:ProjectCode>P001053-001</com:ProjectCode>
</sch:ProjectIdentity>
<sch:ProjectTask>
<com:CompletedFlag>false</com:CompletedFlag>
<com:Description>Task from WS-001 (3)</com:Description>
<com:DurationMinutes>300</com:DurationMinutes>
<com:EarliestStartDate>2018-01-31z</com:EarliestStartDate>
<com:FullWbsCode>4</com:FullWbsCode>
<com:OpenForTimeFlag>true</com:OpenForTimeFlag>
<com:ParentTaskIdentity>
<com:ProjectTaskUid>1152921504608738152</com:ProjectTaskUid>
</com:ParentTaskIdentity>
<com:PlannedEndDateTime>2018-03-05z</com:PlannedEndDateTime>
<com:PlannedStartDateTime>2018-03-01z</com:PlannedStartDateTime>
<com:Predecessors>
<!--Zero or more repetitions:-->
<com:PwsProjectTaskPredecessor>
<com:LagMinutes>10000</com:LagMinutes>
<com:LinkType>ss</com:LinkType>
<com:PredecessorProjectTaskIdentity>
<com:ProjectTaskUid>1152921504608738153</com:ProjectTaskUid>
</com:PredecessorProjectTaskIdentity>
</com:PwsProjectTaskPredecessor>
</com:Predecessors>
<com:PreviousSiblingTaskIdentity>
<com:ProjectTaskUid>1152921504608738153</com:ProjectTaskUid>
</com:PreviousSiblingTaskIdentity>
<com:ProjectTaskTypeIdentity>
<com:ProjectTaskTypeUid>1152921504608111232</com:ProjectTaskTypeUid>
</com:ProjectTaskTypeIdentity>
<com:TaskName>WS-003</com:TaskName>
<com:InheritPurchaseOrderNumberFlag>false</com:InheritPurchaseOrderNumberFlag>
<com:PurchaseOrderNumber>PO-003</com:PurchaseOrderNumber>
<com:Subscriptions>
<!--Zero or more repetitions:-->
<com:PwsProjectTaskSubscription>
<com:UserIdentity>
<com:UserReferenceSystemId>019</com:UserReferenceSystemId>
</com:UserIdentity>
</com:PwsProjectTaskSubscription>
</com:Subscriptions>
<com:UserDefinedFields>
<!--Zero or more repetitions:-->
<com:PwsUserDefinedFieldDetail>
<com:UdfName>Phase 1 MS</com:UdfName>
<com:BooleanValue>false</com:BooleanValue>
<com:DataType>B</com:DataType>
</com:PwsUserDefinedFieldDetail>
</com:UserDefinedFields>
</sch:ProjectTask>
<sch:StealLockFlag>true</sch:StealLockFlag>
<sch:SubscriptionsClearFlag>true</sch:SubscriptionsClearFlag>
</pws:serviceRequest>
</pws:PwsSaveProjectTask>
</soapenv:Body>
</soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pws="http://projectorpsa.com/PwsProjectorServices/" xmlns:req="http://projectorpsa.com/DataContracts/Requests/" xmlns:sch="http://projectorpsa.com/DataContracts/Shared/Scheduling/" xmlns:com="http://projectorpsa.com/DataContracts/Shared/Common/">
<soapenv:Header/>
<soapenv:Body>
<pws:PwsSaveProjectTask>
<pws:serviceRequest>
<req:SessionTicket>AftyRXSTlnMPzozuKwq0kQ==</req:SessionTicket>
<sch:DescriptionClearFlag>false</sch:DescriptionClearFlag>
<sch:DriveEsdAndDurationFromPlannedDatesFlag>false</sch:DriveEsdAndDurationFromPlannedDatesFlag>
<sch:EarliestStartDateClearFlag>false</sch:EarliestStartDateClearFlag>
<sch:ParentTaskClearFlag>false</sch:ParentTaskClearFlag>
<sch:PredecessorsClearFlag>false</sch:PredecessorsClearFlag>
<sch:ProjectIdentity>
<com:ProjectCode>P001053-001</com:ProjectCode>
</sch:ProjectIdentity>
<sch:ProjectTask>
<com:ProjectTaskUid>1152921504608747352</com:ProjectTaskUid>
<com:CompletedFlag>false</com:CompletedFlag>
<com:Description>Task from WS-001 (4)</com:Description>
<com:DurationMinutes>300</com:DurationMinutes>
<com:EarliestStartDate>2018-01-31z</com:EarliestStartDate>
<com:FullWbsCode>4</com:FullWbsCode>
<com:OpenForTimeFlag>true</com:OpenForTimeFlag>
<com:ParentTaskIdentity>
<com:ProjectTaskUid>1152921504608738152</com:ProjectTaskUid>
</com:ParentTaskIdentity>
<com:PlannedEndDateTime>2018-03-05z</com:PlannedEndDateTime>
<com:PlannedStartDateTime>2018-03-01z</com:PlannedStartDateTime>
<com:Predecessors>
<!--Zero or more repetitions:-->
<com:PwsProjectTaskPredecessor>
<com:LagMinutes>12000</com:LagMinutes>
<com:LinkType>FS</com:LinkType>
<com:PredecessorProjectTaskIdentity>
<com:ProjectTaskUid>1152921504608738153</com:ProjectTaskUid>
</com:PredecessorProjectTaskIdentity>
</com:PwsProjectTaskPredecessor>
</com:Predecessors>
<com:PreviousSiblingTaskIdentity>
<com:ProjectTaskUid>1152921504608738153</com:ProjectTaskUid>
</com:PreviousSiblingTaskIdentity>
<com:ProjectTaskTypeIdentity>
<com:ProjectTaskTypeUid>1152921504608111232</com:ProjectTaskTypeUid>
</com:ProjectTaskTypeIdentity>
<com:TaskName>WS-004</com:TaskName>
<com:InheritPurchaseOrderNumberFlag>false</com:InheritPurchaseOrderNumberFlag>
<com:PurchaseOrderNumber>PO-004</com:PurchaseOrderNumber>
<com:Subscriptions>
<!--Zero or more repetitions:-->
<com:PwsProjectTaskSubscription>
<com:UserIdentity>
<com:UserReferenceSystemId>019</com:UserReferenceSystemId>
</com:UserIdentity>
</com:PwsProjectTaskSubscription>
</com:Subscriptions>
<com:UserDefinedFields>
<!--Zero or more repetitions:-->
<com:PwsUserDefinedFieldDetail>
<com:UdfName>Phase 1 MS</com:UdfName>
<com:BooleanValue>false</com:BooleanValue>
<com:DataType>B</com:DataType>
</com:PwsUserDefinedFieldDetail>
</com:UserDefinedFields>
</sch:ProjectTask>
<sch:StealLockFlag>true</sch:StealLockFlag>
<sch:SubscriptionsClearFlag>true</sch:SubscriptionsClearFlag>
</pws:serviceRequest>
</pws:PwsSaveProjectTask>
</soapenv:Body>
</soapenv:Envelope>
- PwsSaveProjectTaskResponse
- PwsSaveProjectTaskResult: PwsSaveProjectTaskRs
Response Elements
Element | Data Type | Description | Sample Data |
---|
Messages | PwsMessage | The web service response status and message. Click here for more information. |
|
ResponseId | Int32 | Click here for more information. | 0 |
Status | RequestStatus | Click here for more information | Ok |
ServerTimestampUtc | DateTime | Click here for more information. | 2018-03-05T15:44:50.3461017Z |
ProjectTaskIdentity | PwsProjectTaskRef | The identity of the project task that was just saved. Click here for more information. |
|
EngagementTimestamp | String | This is a Base64 encoded timestamp utilized for engagement locking. To protect against overwriting other changes, you may optionally echo back the timestamp returned in a prior response. This will cause the request to fail if any change has been made between the two invocations. |
|
LockStolenFromUserIdentity | PwsUserRef | If a lock is stolen in the process of updating an engagement, this identifies the user from which the lock was stolen from. Click here for more information. |
|
Response Usage Example(s)
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Body>
<PwsSaveProjectTaskResponse xmlns="http://projectorpsa.com/PwsProjectorServices/">
<PwsSaveProjectTaskResult xmlns:a="http://projectorpsa.com/DataContracts/Shared/Scheduling/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<Messages xmlns="http://projectorpsa.com/CommonServices/" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
<ResponseId xmlns="http://projectorpsa.com/CommonServices/">0</ResponseId>
<Status xmlns="http://projectorpsa.com/CommonServices/">Ok</Status>
<ServerTimestampUtc xmlns="http://projectorpsa.com/CommonServices/">2018-03-22T15:22:21.9254018Z</ServerTimestampUtc>
<a:ProjectTaskIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
<b:ExternalSystemIdentifier i:nil="true"/>
<b:ProjectTaskId i:nil="true"/>
<b:ProjectTaskUid>1152921504608747352</b:ProjectTaskUid>
</a:ProjectTaskIdentity>
<a:EngagementTimestamp>AAAAAA/O3Ks=</a:EngagementTimestamp>
</PwsSaveProjectTaskResult>
</PwsSaveProjectTaskResponse>
</s:Body>
</s:Envelope>
Common Errors and Warnings
ErrorNumber | ErrorCode | ErrorText |
---|
10111 | RequiredFieldMissing | A required field is missing: PredecessorProjectTaskIdentity |
16009 | TaskDescriptionMayNotBeSpecifiedWhenClearFlagSet | The task description may not be specified when the associated clear flag is set. |
54205 | ProjectTaskReferenceInvalid | A specified project task identity was incomplete. Each project task identity must specify either a project task id, project task uid or project task external system identifier. |
54655 | PreviousSiblingNotChildOfParent | The task identified as this task's previous sibling is not a child of the task specified as the parent task (or it is not a top level task if the specified parent task is null or being cleared). |
54657 | ProjectTaskNameIsRequired | The project task name is required for new project tasks. |
55066 | TaskPurchaseOrderSpecifiedWhenInheriting | Purchase order number may not be specified when inheriting purchase order number. |