Versions Compared

Key

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

Overview

This web service inserts or updates a single project based on a detailed project structure (PwsProjectDetail). The service returns the identity (PwsProjectRef) of the project that has been inserted or updated. The caller can optionally request that the full project detail (PwsProjectDetail) be included in the response.  Please note, upon creation of a new project, certain attributes may be derived from engagement type defaults or inherited from engagement.  

...

Panel
titlePwsSaveProjectRq
  • PwsSaveProjectRq
    • RequestId: Int32
    • SessionTicket: String
    • CloseDateClearFlag: Boolean
    • CostGlccOverrideClearFlag: Boolean **deprecated**
    • DescriptionClearFlag: Boolean
    • FullDetailFlag: Boolean
    • Mode: String (1)
    • PercentLikelihoodClearFlag: Boolean
    • Project: PwsProjectDetail
    • StealLockFlag: Boolean
    • TimeGlccOverrideClearFlag: Boolean **deprecated**
    • WorkspaceMessagesClearFlag: Boolean
    • ForceAdvancedSetupChangeFlag: Boolean
    • EngagementTimestamp: String
    • ManagementTeamClearFlag: Boolean
    • BdDashboardClearFlag: Boolean
    • ExpenseTypeConfigurationClearFlag: Boolean

...

Element

Data Type

Required?

Default

Description

Sample Data

RequestId

Int32

No


Click here for more information.

1

SessionTicket

String

Yes


Click here for more information.

Ad0gaqAh34T3anLQ/dUmpQ==

CloseDateClearFlag

Boolean

No

false

If set to "true", the end date of the project will be cleared.

false

CostGlccOverrideClearFlag

Boolean

deprecated




DescriptionClearFlag

Boolean

No

false

If set to "true", project description will be cleared.

false

FullDetailFlag

Boolean

No

false

If set to "true", full project element will be included in response.

false

Mode

String (1)

Yes


Applies if FullDetailFlag is set to true:

A to retrieve booked data for roles

R to retrieve requested data for roles

A/R

PercentLikelihoodClearFlag

Boolean

No

false

If set to "true", project percent likelihood will be cleared.

false

Project

PwsProjectDetail

Yes


Structure that contains the complete information of the project. Please click here for more information.


StealLockFlag

Boolean

No

false

True to steal lock if it is currently locked (otherwise, service will fail if engagement is locked) 

false

TimeGlccOverrideClearFlag

Boolean

deprecated




WorkspaceMessagesClearFlag

Boolean

No

false

If set to "true", project workspace message will be cleared.

false

ForceAdvancedSetupChangeFlag

Boolean

No

false

???

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 by a call to PwsGetProject (or a prior call to PwsSaveProject). This will cause the request to fail if any change has been made between invocations of PwsGetProject and PwsSaveProject.


ManagementTeamClearFlag

Boolean

No

false

If set to "true", clear the non-PM member of the project management team.

false

BdDashboardClearFlag

Boolean

No

false

If set to "true", clear the Belladati (advance analytics) dashboard configuration of this project.

false

ExpenseTypeConfigurationClearFlag

Boolean

No

false

if set to "true", clear the expenes type configuration of this project.

false

...

Example(s)

Code Block
languagexml
titleExample 01 - simple update
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:PwsSaveProject>
         <pws:serviceRequest>
            <req:SessionTicket>Af3sL0FGHhwhM4iKAOvIew==</req:SessionTicket>
            <sch:CloseDateClearFlag>true</sch:CloseDateClearFlag>
            <sch:CostGlccOverrideClearFlag>false</sch:CostGlccOverrideClearFlag>
            <sch:DescriptionClearFlag>false</sch:DescriptionClearFlag>
            <sch:FullDetailFlag>false</sch:FullDetailFlag>
            <sch:Mode>R</sch:Mode>
            <sch:PercentLikelihoodClearFlag>false</sch:PercentLikelihoodClearFlag>
            <sch:Project>
               <com:ProjectCode>P001053-001</com:ProjectCode>
               <com:EngagementIdentity>
                  <com:EngagementCode>P001053</com:EngagementCode>
               </com:EngagementIdentity>
               <com:NewProjectCode>P001053-WS1</com:NewProjectCode>
               <com:ContractLineItemIdentity>
                  <com:ContractLineItemCode>P001053-CL1</com:ContractLineItemCode>
               </com:ContractLineItemIdentity>
            </sch:Project>
            <sch:StealLockFlag>true</sch:StealLockFlag>
         </pws:serviceRequest>
      </pws:PwsSaveProject>
   </soapenv:Body>
</soapenv:Envelope>

...

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.

1

Status

RequestStatus

Click here for more information.


ServerTimestampUtc

DateTime

Click here for more information.


Project

PwsProjectElement

The complete set of information about the engagement. Click here for more information.


ProjectIdentity

PwsProjectRef

The unique keys used to identify the engagement. Click here for more information.


EngagementTimestamp

String

This is a Base64 encoded timestamp utilized for engagement/project locking.

AAAAAA98Yvs=

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.


Example(s)

Code Block
languagexml
titleExample 01 - simple update
collapsetrue
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <PwsSaveProjectResponse xmlns="http://projectorpsa.com/PwsProjectorServices/">
         <PwsSaveProjectResult 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-01-30T18:06:58.1817348Z</ServerTimestampUtc>
            <a:Project i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
            <a:ProjectIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:ProjectCode>P001053-WS1</b:ProjectCode>
               <b:ProjectId i:nil="true"/>
               <b:ProjectUid>1152921504607161987</b:ProjectUid>
            </a:ProjectIdentity>
            <a:EngagementTimestamp>AAAAAA+H+ZQ=</a:EngagementTimestamp>
            <a:LockStolenFromUserIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:UserDisplayName>PPSA Support User</b:UserDisplayName>
               <b:UserId i:nil="true"/>
               <b:UserReferenceSystemId>000</b:UserReferenceSystemId>
               <b:UserUid>1152921504606944261</b:UserUid>
            </a:LockStolenFromUserIdentity>
         </PwsSaveProjectResult>
      </PwsSaveProjectResponse>
   </s:Body>
</s:Envelope>
Code Block
languagexml
titleExample 01 - simple create
collapsetrue
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <PwsSaveProjectResponse xmlns="http://projectorpsa.com/PwsProjectorServices/">
         <PwsSaveProjectResult 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-01-30T19:21:45.0181651Z</ServerTimestampUtc>
            <a:Project i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
            <a:ProjectIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:ProjectCode>P001053-002</b:ProjectCode>
               <b:ProjectId i:nil="true"/>
               <b:ProjectUid>1152921504607411717</b:ProjectUid>
            </a:ProjectIdentity>
            <a:EngagementTimestamp>AAAAAA+IE/Q=</a:EngagementTimestamp>
            <a:LockStolenFromUserIdentity i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
         </PwsSaveProjectResult>
      </PwsSaveProjectResponse>
   </s:Body>
</s:Envelope>

...