PwsUpdateProjectTimeBaseline

Overview


This web service updates a single project time baseline based on a detailed project time baseline detail structure (PwsProjectTimeBaselineDetail). The service returns the identity of the project time baseline (PwsProjectTimeBaselineRef) that has been updated. If the FullDetailFlag is set to 'true', the full detailed project cost baseline element (PwsProjectTimeBaselineElement) will also be returned in the response.

Request Format


PwsUpdateProjectTimeBaseline Request
  • PwsUpdateProjectTimeBaseline
    • serviceRequest: PwsUpdateProjectTimeBaselineRq
      • RequestId: Int32
      • SessionTicket: String
      • BaselineBucketsClearFlag: Boolean
      • DescriptionClearFlag: Boolean
      • EngagementTimestamp: String **deprecated**
      • ExternalSystemIdentifierClearFlag: Boolean (50)
      • FullDetailFlag: Boolean
      • NewExternalSystemIdentifier: String (50)
      • ProjectTimeBaseline: PwsProjectTimeBaselineDetail
      • StealEngagementLockFlag: Boolean **deprecated**
      • RateTaskTimestamp: String
      • LocksToSteal: PwsEntityLockSummary[1.100]
      • ProjectorLockSetId: Int32

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.

AUL1Tsqbhar4SWXC5j9T+w==

BaselineBucketsClearFlag

Boolean

No 

false

If set to 'true', the baseline buckets are reset to 0.

false 

DescriptionClearFlag

Boolean

No 

false 

If set to 'true', the baseline description is cleared.

false

EngagementTimestamp

String

**deprecated**




ExternalSystemIdentifierClearFlag

Boolean (50)

No 

false 

If set to 'true', the external system identifier is cleared.

false 

FullDetailFlag

Boolean

No 

false 

If set to true, include full detailed project time baseline element (PwsProjectTimeBaselineElement) in response.

false

NewExternalSystemIdentifier

String (50)

 No


The external system identifier is a unique identifier for a project cost baseline (may be null, but once set can only be updated to a different, non-null value).

TB-A

ProjectTimeBaseline

PwsProjectTimeBaselineDetail

Yes 


This structure contains the complete set of information about a project time baseline.


StealEngagementLockFlag

Boolean

**deprecated**




RateTaskTimestampStringNo
This is an optimistic locking timestamp that, if provided on update request, will cause the request to fail when the timestamp stored in the database does not match the provided value.
LocksToStealPwsEntityLockSummary[1.100]No
The detailed information of the locks that are to be stolen. If not specified, the request will fail if any requested locks are already held. If specified, the information supplied must exactly match the current state of existing locks or the attempt to steal the existing locks will fail. Typically, this service is invoked with LocksToSteal empty or null. If there are existing locks, they will be returned in the LockHolders member of PwsFault. This data can then be sent, as is, back to the server in a second invocation of this service, as LocksToSteal, if the caller desires to steal the locks.
ProjectorLockSetIdInt32No
A projector lock set id is an identifier for a group of one or more locks held as a unit.

Request Usage Example(s)


Example 01
<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:PwsUpdateProjectTimeBaseline>
         <pws:serviceRequest>
            <req:SessionTicket>AUL1Tsqbhar4SWXC5j9T+w==</req:SessionTicket>
            <sch:BaselineBucketsClearFlag>false</sch:BaselineBucketsClearFlag>
            <sch:DescriptionClearFlag>false</sch:DescriptionClearFlag>
            <sch:ExternalSystemIdentifierClearFlag>false</sch:ExternalSystemIdentifierClearFlag>
            <sch:FullDetailFlag>false</sch:FullDetailFlag>
            <sch:NewExternalSystemIdentifier>TB-A</sch:NewExternalSystemIdentifier>
            <sch:ProjectTimeBaseline>
               <com:ProjectTimeBaselineUid>1152921504607411687</com:ProjectTimeBaselineUid>
               <com:ActiveProjectTimeBaselineFlag>true</com:ActiveProjectTimeBaselineFlag>
               <com:BarMetricActiveFlag>true</com:BarMetricActiveFlag>
               <com:ChgMetricActiveFlag>true</com:ChgMetricActiveFlag>
               <com:CrMetricActiveFlag>true</com:CrMetricActiveFlag>
               <com:Description>Time Baseline A</com:Description>
               <com:HrsMetricActiveFlag>true</com:HrsMetricActiveFlag>
               <com:PrimaryMetric>B</com:PrimaryMetric>
               <com:ProjectTimeBaselineName>TB-A</com:ProjectTimeBaselineName>
               <com:RdcMetricActiveFlag>true</com:RdcMetricActiveFlag>
               <com:ProjectTimeBaselineBuckets>
                  <com:PwsProjectTimeBaselineBucket>
                     <com:BillingAdjustedRevenue>1000</com:BillingAdjustedRevenue>
                     <com:EndDate>2018-01-31T00:00:00.000Z</com:EndDate>
                     <com:ProjectTaskTypeIdentity>
                        <com:ProjectTaskTypeUid>1152921504608121881</com:ProjectTaskTypeUid>
                     </com:ProjectTaskTypeIdentity>
                     <com:StartDate>2018-01-01T00:00:00.000Z</com:StartDate>
                  </com:PwsProjectTimeBaselineBucket>
               </com:ProjectTimeBaselineBuckets>
            </sch:ProjectTimeBaseline>
            <sch:StealEngagementLockFlag>true</sch:StealEngagementLockFlag>
         </pws:serviceRequest>
      </pws:PwsUpdateProjectTimeBaseline>
   </soapenv:Body>
</soapenv:Envelope>
Example 02
<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:PwsUpdateProjectTimeBaseline>
         <!--Optional:-->
         <pws:serviceRequest>
            <req:SessionTicket>AipJ4w33vfWBJXooP5yvLg==</req:SessionTicket>
            <!--Optional:-->
            <sch:BaselineBucketsClearFlag>false</sch:BaselineBucketsClearFlag>
            <!--Optional:-->
            <sch:DescriptionClearFlag>true</sch:DescriptionClearFlag>
            <sch:FullDetailFlag>true</sch:FullDetailFlag>
            <sch:PartialBucketListFlag>false</sch:PartialBucketListFlag>
            <sch:ProjectTimeBaseline>
               <com:ProjectTimeBaselineUid>2305843009214840754</com:ProjectTimeBaselineUid>
               <com:ActiveProjectTimeBaselineFlag>false</com:ActiveProjectTimeBaselineFlag>
               <!--Optional:-->
               <com:BarMetricActiveFlag>true</com:BarMetricActiveFlag>
               <!--Optional:-->
               <com:ChgMetricActiveFlag>true</com:ChgMetricActiveFlag>
               <!--Optional:-->
               <com:CrMetricActiveFlag>true</com:CrMetricActiveFlag>
               <!--Optional:-->
               <com:Description>Created on 04/27 via WS Time #2</com:Description>
               <!--Optional:-->
               <com:HrsMetricActiveFlag>true</com:HrsMetricActiveFlag>
               <!--Optional:-->
               <com:PrimaryMetric>H</com:PrimaryMetric>
               <!--Optional:-->
               <com:ProjectTimeBaselineName>042720-WS-#2-Time</com:ProjectTimeBaselineName>
               <!--Optional:-->
               <com:RdcMetricActiveFlag>true</com:RdcMetricActiveFlag>
               <!--Optional:-->
               <com:ProjectTimeBaselineBuckets>
               </com:ProjectTimeBaselineBuckets>
               <!--Optional:-->
               <com:UserDefinedFields>
                     <com:UdfName>BL_TIME_Txt</com:UdfName>
                     <com:TextValue>Test</com:TextValue>
               </com:UserDefinedFields> 
            </sch:ProjectTimeBaseline>
         </pws:serviceRequest>
      </pws:PwsUpdateProjectTimeBaseline>
   </soapenv:Body>
</soapenv:Envelope>


Response Format


PwsUpdateProjectTimeBaseline 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.

Status

RequestStatus

Click here for more information.

Ok

ServerTimestampUtc

DateTime

Click here for more information.

2018-03-01T19:53:10.2230806Z

EngagementLockStolenFromUserIdentity

PwsUserRef

**deprecated**


EngagementTimestamp

String

**deprecated**


ProjectTimeBaseline

PwsProjectTimeBaselineElement

This structure contains the complete set of information about a project time baseline.


ProjectTimeBaselineIdentity

PwsProjectTimeBaselineRef

 This structure represents the unique key fields associated with identifying a project time baseline.


RateTaskTimestampStringThis is an optimistic locking timestamp that, if provided on update request, will cause the request to fail when the timestamp stored in the database does not match the provided value.AAAAABFFCOw=
StolenLocksPwsEntityLockSummaryThis structure contains information about the locks that were stolen in order to complete this request, Will be included only when LocksToSteal is specified in the request.

Response Usage Example(s)


Example 01
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <PwsUpdateProjectTimeBaselineResponse xmlns="http://projectorpsa.com/PwsProjectorServices/">
         <PwsUpdateProjectTimeBaselineResult 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-01T19:53:10.2230806Z</ServerTimestampUtc>
            <a:EngagementLockStolenFromUserIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:UserDisplayName>Jack Spratt</b:UserDisplayName>
               <b:UserId i:nil="true"/>
               <b:UserReferenceSystemId>E123</b:UserReferenceSystemId>
               <b:UserUid>1152921504607011056</b:UserUid>
            </a:EngagementLockStolenFromUserIdentity>
            <a:EngagementTimestamp>AAAAAA64KwI=</a:EngagementTimestamp>
            <a:ProjectTimeBaseline i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
            <a:ProjectTimeBaselineIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:ExternalSystemIdentifier i:nil="true"/>
               <b:ProjectTimeBaselineId i:nil="true"/>
               <b:ProjectTimeBaselineUid>1152921504607411687</b:ProjectTimeBaselineUid>
            </a:ProjectTimeBaselineIdentity>
            <a:RateTaskTimestamp>AAAAAA62H1Q=</a:RateTaskTimestamp>
            <a:StolenLocks xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:PwsEntityLockSummaryItem>
                  <b:LockCount>1</b:LockCount>
                  <b:LockHolderUser>
                     <b:UserDisplayName>Jack Spratt</b:UserDisplayName>
                     <b:UserId i:nil="true"/>
                     <b:UserReferenceSystemId>E123</b:UserReferenceSystemId>
                     <b:UserUid>1152921504607011056</b:UserUid>
                     <b:EmailAddress>jack@revcorp.bb</b:EmailAddress>
                     <b:FirstName>Jack</b:FirstName>
                     <b:LastName>Spratt</b:LastName>
                     <b:MiddleName i:nil="true"/>
                  </b:LockHolderUser>
                  <b:MostRecentLockAcquisitionTimestamp>2018-03-01T19:31:03.32Z</b:MostRecentLockAcquisitionTimestamp>
               </b:PwsEntityLockSummaryItem>
            </a:StolenLocks>
         </PwsUpdateProjectTimeBaselineResult>
      </PwsUpdateProjectTimeBaselineResponse>
   </s:Body>
</s:Envelope>
Example 02
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <PwsUpdateProjectTimeBaselineResponse xmlns="http://projectorpsa.com/PwsProjectorServices/">
         <PwsUpdateProjectTimeBaselineResult 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/">
               <b:PwsMessage>
                  <b:AdditionalErrorText>Message 136: This request was executed against the QA [appqa.projectorpsa.com] environment.</b:AdditionalErrorText>
                  <b:ErrorCode>NonProductionEnvironment</b:ErrorCode>
                  <b:ErrorNumber>136</b:ErrorNumber>
                  <b:ErrorText>This web service request was executed against a non-production instance of Projector.</b:ErrorText>
                  <b:Type>Information</b:Type>
                  <b:ReferenceId1 i:nil="true"/>
                  <b:ReferenceId2 i:nil="true"/>
               </b:PwsMessage>
            </Messages>
            <ResponseId xmlns="http://projectorpsa.com/CommonServices/">0</ResponseId>
            <Status xmlns="http://projectorpsa.com/CommonServices/">Ok</Status>
            <ServerTimestampUtc xmlns="http://projectorpsa.com/CommonServices/">2020-05-04T18:13:31.3103312Z</ServerTimestampUtc>
            <a:EngagementLockStolenFromUserIdentity i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
            <a:EngagementTimestamp>AAAAAB9A/50=</a:EngagementTimestamp>
            <a:ProjectTimeBaseline xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:Basis>S</b:Basis>
               <b:CreatedByUser>
                  <b:UserDisplayName>Luke Morrison, P. Eng.</b:UserDisplayName>
                  <b:UserId i:nil="true"/>
                  <b:UserReferenceSystemId>LSM</b:UserReferenceSystemId>
                  <b:UserUid>2305843009213878555</b:UserUid>
                  <b:EmailAddress>luke@plc.com</b:EmailAddress>
                  <b:FirstName>Luke</b:FirstName>
                  <b:LastName>Morrison</b:LastName>
                  <b:MiddleName i:nil="true"/>
               </b:CreatedByUser>
               <b:CreatedTimestamp>2020-05-04T18:12:23.633Z</b:CreatedTimestamp>
               <b:Dimension>R</b:Dimension>
               <b:EndDate i:nil="true"/>
               <b:EngagementTimestamp>AAAAAB9A/50=</b:EngagementTimestamp>
               <b:LastUpdatedByUser>
                  <b:UserDisplayName>Luke Morrison, P. Eng.</b:UserDisplayName>
                  <b:UserId i:nil="true"/>
                  <b:UserReferenceSystemId>LSM</b:UserReferenceSystemId>
                  <b:UserUid>2305843009213878555</b:UserUid>
                  <b:EmailAddress>luke@plc.com</b:EmailAddress>
                  <b:FirstName>Luke</b:FirstName>
                  <b:LastName>Morrison</b:LastName>
                  <b:MiddleName i:nil="true"/>
               </b:LastUpdatedByUser>
               <b:LastUpdatedTimestamp>2020-05-04T18:13:31.387Z</b:LastUpdatedTimestamp>
               <b:ProjectTimeBaselineBucketDateIntervals/>
               <b:ProjectTimeBaselineDetail>
                  <b:ExternalSystemIdentifier i:nil="true"/>
                  <b:ProjectTimeBaselineId i:nil="true"/>
                  <b:ProjectTimeBaselineUid>2305843009214840754</b:ProjectTimeBaselineUid>
                  <b:ActiveProjectTimeBaselineFlag>false</b:ActiveProjectTimeBaselineFlag>
                  <b:BarMetricActiveFlag>true</b:BarMetricActiveFlag>
                  <b:ChgMetricActiveFlag>true</b:ChgMetricActiveFlag>
                  <b:CrMetricActiveFlag>true</b:CrMetricActiveFlag>
                  <b:Description i:nil="true"/>
                  <b:HrsMetricActiveFlag>true</b:HrsMetricActiveFlag>
                  <b:PrimaryMetric>H</b:PrimaryMetric>
                  <b:ProjectTimeBaselineName>042720-WS-#2-Time</b:ProjectTimeBaselineName>
                  <b:RdcMetricActiveFlag>true</b:RdcMetricActiveFlag>
                  <b:ProjectTimeBaselineBuckets/>
                  <b:UserDefinedFields/>
               </b:ProjectTimeBaselineDetail>
               <b:StartDate i:nil="true"/>
               <b:TimePhase>Q</b:TimePhase>
            </a:ProjectTimeBaseline>
            <a:ProjectTimeBaselineIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:ExternalSystemIdentifier i:nil="true"/>
               <b:ProjectTimeBaselineId i:nil="true"/>
               <b:ProjectTimeBaselineUid>2305843009214840754</b:ProjectTimeBaselineUid>
            </a:ProjectTimeBaselineIdentity>
            <a:RateTaskTimestamp>AAAAAB9J55s=</a:RateTaskTimestamp>
            <a:StolenLocks i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
         </PwsUpdateProjectTimeBaselineResult>
      </PwsUpdateProjectTimeBaselineResponse>
   </s:Body>
</s:Envelope>

PwsUpdateProjectTimeBaseline - Common Errors and Warnings


ErrorNumber

ErrorCode

ErrorText

34000

InvalidValueForProjectTimeBaselineBasis

The value specified for time baseline basis is invalid. Valid values are T for Task Plan, R for Resource Requests, P for Previous Resource Requests, S for Scheduled Resources, A for Approved And Current Requested, B for Approved And Current Booked, and for None.

34002InvalidValueForProjectTimeBaselineDimensionThe value specified for time baseline dimension is invalid. Valid values are M for Rate Type, K for Task Type, D for Resource Department, T for Resource Title, R for Role, S for Resource, and N for None.
54292PrimaryBaselineMetricMustBeEnabledPrimary baseline metrics must be an enabled metric in the baseline.
54518SpecifiedProjectBaselineBucketDatesInvalidThe specified bucket dates for a project baseline bucket are invalid.
54923 SpecifiedProjectTimeBaselineNotFoundSpecified project time baseline was not found.
54961ProjectTimeBaselineRefRequiredA project time baseline must be specified.