Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

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. 

Request Format

Panel
titlePwsSaveProjectTask Request
  • 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



Click here for more information.


SessionTicket

String



Click here for more information.


DescriptionClearFlag

Boolean





DriveEsdAndDurationFromPlannedDatesFlag

Boolean





EarliestStartDateClearFlag

Boolean





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.


ParentTaskClearFlag

Boolean





PredecessorsClearFlag

Boolean





ProjectIdentity

PwsProjectRef





ProjectTask

PwsProjectTaskDetail





StealLockFlag

Boolean



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




false

Request Usage Example(s)

Code Block
languagexml
titleExample 01 - create a new task
collapsetrue
<
Code Block
languagexml
titleExample 02 - update an existing task
collapsetrue
<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>

Response Format

Panel
titlePwsSaveProjectTask Response

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)

Code Block
languagexml
titleExample 01
collapsetrue
</s:Envelope>
Code Block
languagexml
titleExample 02 - update an existing task
collapsetrue
<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

...