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.
- 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**
|
|
|
|
RateTaskTimestamp | String | No |
| 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. |
|
LocksToSteal | PwsEntityLockSummary[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. |
|
ProjectorLockSetId | Int32 | No |
| A projector lock set id is an identifier for a group of one or more locks held as a unit. |
|
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: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>
<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>
- PwsUpdateProjectTimeBaselineResponse
- PwsUpdateProjectTimeBaselineResult: PwsUpdateProjectTimeBaselineRs
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-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. |
|
RateTaskTimestamp | String | 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. | AAAAABFFCOw= |
StolenLocks | PwsEntityLockSummary | This 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)
<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>
<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. |
34002 | InvalidValueForProjectTimeBaselineDimension | The 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. |
54292 | PrimaryBaselineMetricMustBeEnabled | Primary baseline metrics must be an enabled metric in the baseline. |
54518 | SpecifiedProjectBaselineBucketDatesInvalid | The specified bucket dates for a project baseline bucket are invalid. |
54923 | SpecifiedProjectTimeBaselineNotFound | Specified project time baseline was not found. |
54961 | ProjectTimeBaselineRefRequired | A project time baseline must be specified. |