PwsSaveEngagement

Overview


This web service inserts or updates a single engagement based on a detailed engagement structure (PwsEngagementDetail). The service returns the identity (PwsEngagementRef) of the engagement that has been inserted or updated. The caller can optionally request that the full engagement detail (PwsEngagementElement) be included in the response.  Please note, upon creation of a new engagement, certain attributes may be derived from engagement type defaults.  Additionally, if a non-billable engagement is created, the specified culture and currency will be ignored. Rather, the currency is derived from the engagement's company's currency, and the culture is derived from the currency's default culture.

Request Format


PwsSaveEngagement Request
  • PwsSaveEngagement
    • serviceRequest: PwsSaveEngagementRq

Request Elements


Element

Data Type

Required?

Default

Description

Sample Data

RequestId

Int32

No


Click here for more information.

1

SessionTicket

String (50)

Yes


Click here for more information.

AUcfZP60RNdWSqGygrg5fw==

Engagement

PwsEngagementDetail

Yes


Engagement detail element containing identity of engagement and data to be saved about the engagement.


FullDetailFlag

Boolean

No

false

If set to 'true', the full detailed engagement element will be included in the response.

true

StealLockFlag

Boolean

**deprecated**




UseEtEngagementProjectDefaultsFlag

Boolean

No

false

If set to 'true', and the engagement type is updated, the engagement type defaults for the engagement and the underlying projects (except project workspace defaults) will override existing settings (and any settings explicitly specified here for engagement attributes with defaults at the engagement type level).

true

UseEtProjectWorkspaceDefaultsFlag

Boolean

No

false

If set to 'true', and engagement type is being changed, the engagement type defaults for the project workspace settings for underlying projects will override existing settings.

true

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


SuppressCliCreationOnInsertFlag

Boolean

No

false

If set to 'true', a contract line item will not be created upon creation of a new engagement.

true
ForceCostCenterChangeFlagBooleanNofalseIf set to 'true', the engagement cost center can be changed, even if there is accounting datatrue
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)


Request
<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:PwsSaveEngagement>
         <pws:serviceRequest>
            <req:RequestId>1</req:RequestId>
            <req:SessionTicket>AaeUxogCRLz6jXAkNt9Lcg==</req:SessionTicket>
            <sch:Engagement>
               <com:ClientIdentity>
                  <com:ClientNumber>C000173</com:ClientNumber>
               </com:ClientIdentity>
               <com:EngagementName>Web Services Inc. - New</com:EngagementName>
               <com:Address>
                  <com:AddressLine1>311 South Wacker Street</com:AddressLine1>
                  <com:AddressLine2>2300</com:AddressLine2>
                  <com:Attention>Billing</com:Attention>
                  <com:City>Chicago</com:City>
                  <com:CompanyName>SOAP UI</com:CompanyName>
                  <com:Country>USA</com:Country>
                  <com:StateOrProvince>Illinois</com:StateOrProvince>
                  <com:ZipOrPostalCode>60601</com:ZipOrPostalCode>
               </com:Address>
               <com:BillingCultureIdentity>
                  <com:CultureName>en-US</com:CultureName>
               </com:BillingCultureIdentity>
               <com:BillingCycleIdentity>
                  <com:BillingCycleName>Monthly</com:BillingCycleName>
               </com:BillingCycleIdentity>
               <com:BillingInstructions>Please bill on the 15th of every month.</com:BillingInstructions>
               <com:ClientMessage>We appreciate your business!</com:ClientMessage>
               <com:ClientMessagePlain>We appreciate your business!</com:ClientMessagePlain>
               <com:CostAlertsBasisType>E</com:CostAlertsBasisType>
               <com:CostBudgetMetric>C</com:CostBudgetMetric>
               <com:CostCenterIdentity>
                  <com:CostCenterNumber>PPSA - Quality Assurance</com:CostCenterNumber>
               </com:CostCenterIdentity>
               <com:CurrencyIdentity>
                  <com:CurrencyCode>USD</com:CurrencyCode>
               </com:CurrencyIdentity>
               <com:EngagementStageIdentity>
                  <com:EngagementStageName>Open</com:EngagementStageName>
               </com:EngagementStageIdentity>
               <com:EngagementTypeIdentity>
                  <com:EngagementTypeName>Billable - Time and Materials</com:EngagementTypeName>
                  <com:EngagementTypeShortName>TandM</com:EngagementTypeShortName>
               </com:EngagementTypeIdentity>
               <com:InheritAddressFlag>false</com:InheritAddressFlag>
               <com:InheritBillingCycleFlag>false</com:InheritBillingCycleFlag>
               <com:InheritBillingInstructionsFlag>false</com:InheritBillingInstructionsFlag>
               <com:InheritClientMessageFlag>false</com:InheritClientMessageFlag>
               <com:InheritInvoiceContentFlag>false</com:InheritInvoiceContentFlag>
               <com:InheritInvoiceScopeFlag>false</com:InheritInvoiceScopeFlag>
               <com:InheritInvoiceTemplateFlag>false</com:InheritInvoiceTemplateFlag>
               <com:InheritPaymentTermFlag>false</com:InheritPaymentTermFlag>
               <com:InheritPurchaseOrderNumberFlag>false</com:InheritPurchaseOrderNumberFlag>
               <com:InheritTimeBillingTypeFlag>false</com:InheritTimeBillingTypeFlag>
               <com:InvoiceContent>B</com:InvoiceContent>
               <com:InvoiceScope>E</com:InvoiceScope>
               <com:InvoiceTemplateIdentity>
                  <com:InvoiceTemplateName>A200</com:InvoiceTemplateName>
               </com:InvoiceTemplateIdentity>
               <com:ManagerIdentity>
                  <com:UserReferenceSystemId>QA - BB</com:UserReferenceSystemId>
               </com:ManagerIdentity>
               <com:PaymentTermIdentity>
                  <com:PaymentTermName>Net 15</com:PaymentTermName>
               </com:PaymentTermIdentity>
               <com:PurchaseOrderNumber>SOAP UI</com:PurchaseOrderNumber>
               <com:TimeAlertsBasisType>A</com:TimeAlertsBasisType>
               <com:TimeBillingType>H</com:TimeBillingType>
               <com:TimeBudgetMetric>B</com:TimeBudgetMetric>
               <com:UserDefinedFields>
                  <com:PwsUserDefinedFieldDetail>
                     <com:UdfName>EN-Text List</com:UdfName>
                     <com:DataType>L</com:DataType>
                     <com:TextValue>Engagement-Web Services</com:TextValue>
                  </com:PwsUserDefinedFieldDetail>
               </com:UserDefinedFields>
               <com:InheritInvoiceEmailSettingsFlag>false</com:InheritInvoiceEmailSettingsFlag>
               <com:InvoiceEmailSettings>
                  <com:EmailFromUserIdentity>
                     <com:UserReferenceSystemId>QA - BB</com:UserReferenceSystemId>
                  </com:EmailFromUserIdentity>
                  <com:EmailInvoiceTemplateIdentity>
                     <com:InvoiceTemplateName>E003</com:InvoiceTemplateName>
                  </com:EmailInvoiceTemplateIdentity>
                  <com:InvoiceEmailEnabledFlag>true</com:InvoiceEmailEnabledFlag>
                  <com:InvoiceEmailType>P</com:InvoiceEmailType>
                  <com:Recipients>
                     <com:PwsInvoiceEmailRecipient>
                        <com:RecipientType>T</com:RecipientType>
                        <com:UserIdentity>
                           <com:UserReferenceSystemId>SOAP UI</com:UserReferenceSystemId>
                        </com:UserIdentity>
                     </com:PwsInvoiceEmailRecipient>
                  </com:Recipients>
               </com:InvoiceEmailSettings>
               <com:InheritRenderReceiptsFlag>false</com:InheritRenderReceiptsFlag>
               <com:RenderReceiptsFlag>true</com:RenderReceiptsFlag>
               <com:InheritAutoApplyAvailableBalanceFlag>true</com:InheritAutoApplyAvailableBalanceFlag>
               <com:InheritTaxTypesFlag>false</com:InheritTaxTypesFlag>
            </sch:Engagement>
            <sch:FullDetailFlag>true</sch:FullDetailFlag>
            <sch:StealLockFlag>true</sch:StealLockFlag>
            <sch:UseEtEngagementProjectDefaultsFlag>true</sch:UseEtEngagementProjectDefaultsFlag>
            <sch:UseEtProjectWorkspaceDefaultsFlag>true</sch:UseEtProjectWorkspaceDefaultsFlag>
            <sch:SuppressCliCreationOnInsertFlag>true</sch:SuppressCliCreationOnInsertFlag>
         </pws:serviceRequest>
      </pws:PwsSaveEngagement>
   </soapenv:Body>
</soapenv:Envelope>


Response Format


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

1

Status

RequestStatus

Click here for more information.

Ok

ServerTimestampUtc

DateTime

Click here for more information.

2018-01-18T17:08:48.5836504Z

Engagement

PwsEngagementElement

The complete set of information about the engagement.


EngagementIdentity

PwsEngagementRef

The unique keys used to identify the engagement.


EngagementTimestamp

String

This is a Base64 encoded timestamp utilized for engagement locking. See Request Elements above for more details.

AAAAAA98Yvs=

LockStolenFromUserIdentity

PwsUserRef

**deprecated**


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)


Response Example
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <PwsSaveEngagementResponse xmlns="http://projectorpsa.com/PwsProjectorServices/">
         <PwsSaveEngagementResult 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 i:nil="true"/>
                  <b:ErrorCode>DeprecatedField</b:ErrorCode>
                  <b:ErrorNumber>158</b:ErrorNumber>
                  <b:ErrorText>The field 'Deprecated_StealLockFlag' in the class 'PwsSaveEngagementRq' has been deprecated as of V18. Please refer to the Projector Web Services documentation for the preferred replacement.</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/">1</ResponseId>
            <Status xmlns="http://projectorpsa.com/CommonServices/">Ok</Status>
            <ServerTimestampUtc xmlns="http://projectorpsa.com/CommonServices/">2024-01-31T18:55:29.0914856Z</ServerTimestampUtc>
            <a:Engagement xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:EngagementDetail>
                  <b:EngagementCode>01312024E001001</b:EngagementCode>
                  <b:EngagementId i:nil="true"/>
                  <b:EngagementUid>1152921504607913740</b:EngagementUid>
                  <b:ClientIdentity>
                     <b:ClientId i:nil="true"/>
                     <b:ClientNumber>C000173</b:ClientNumber>
                     <b:ClientUid>1152921504607061713</b:ClientUid>
                  </b:ClientIdentity>
                  <b:EngagementName>Web Services Inc. - New</b:EngagementName>
                  <b:Address>
                     <b:AddressLine1>311 South Wacker Street</b:AddressLine1>
                     <b:AddressLine2>2300</b:AddressLine2>
                     <b:Attention>Billing</b:Attention>
                     <b:City>Chicago</b:City>
                     <b:CompanyName>SOAP UI</b:CompanyName>
                     <b:Country>USA</b:Country>
                     <b:StateOrProvince>Illinois</b:StateOrProvince>
                     <b:ZipOrPostalCode>60601</b:ZipOrPostalCode>
                  </b:Address>
                  <b:BillingAdjustedRevenueTimeBudgetAmount>0</b:BillingAdjustedRevenueTimeBudgetAmount>
                  <b:BillingCultureIdentity>
                     <b:CultureId i:nil="true"/>
                     <b:CultureName>en-US</b:CultureName>
                     <b:CultureUid>1152921504606851419</b:CultureUid>
                  </b:BillingCultureIdentity>
                  <b:BillingCycleIdentity>
                     <b:BillingCycleId i:nil="true"/>
                     <b:BillingCycleName>Monthly</b:BillingCycleName>
                     <b:BillingCycleUid>1152921504606853180</b:BillingCycleUid>
                  </b:BillingCycleIdentity>
                  <b:BillingInstructions>Please bill on the 15th of every month.</b:BillingInstructions>
                  <b:ClientAmountCostBudgetAmount>0</b:ClientAmountCostBudgetAmount>
                  <b:ClientMessage>We appreciate your business!</b:ClientMessage>
                  <b:ClientMessagePlain>We appreciate your business!</b:ClientMessagePlain>
                  <b:ContractRevenueTimeBudgetAmount i:nil="true"/>
                  <b:CostAlertsBasisType>E</b:CostAlertsBasisType>
                  <b:CostBudgetMetric>C</b:CostBudgetMetric>
                  <b:CostCenterIdentity>
                     <b:CostCenterId i:nil="true"/>
                     <b:CostCenterName>PPSA - Quality Assurance</b:CostCenterName>
                     <b:CostCenterNumber>PPSA - Quality Assurance</b:CostCenterNumber>
                     <b:CostCenterUid>1152921504606891023</b:CostCenterUid>
                  </b:CostCenterIdentity>
                  <b:CostContractTerms i:nil="true"/>
                  <b:CurrencyIdentity>
                     <b:CurrencyCode>USD</b:CurrencyCode>
                     <b:CurrencyId i:nil="true"/>
                     <b:CurrencyUid>1152921504606851838</b:CurrencyUid>
                  </b:CurrencyIdentity>
                  <b:DisbursedAmountCostBudgetAmount i:nil="true"/>
                  <b:EngagementStageIdentity>
                     <b:EngagementStageId i:nil="true"/>
                     <b:EngagementStageName>Open</b:EngagementStageName>
                     <b:EngagementStageShortName>Open</b:EngagementStageShortName>
                     <b:EngagementStageUid>1152921504606849675</b:EngagementStageUid>
                  </b:EngagementStageIdentity>
                  <b:EngagementTypeIdentity>
                     <b:EngagementTypeId i:nil="true"/>
                     <b:EngagementTypeName>Billable - Time and Materials</b:EngagementTypeName>
                     <b:EngagementTypeShortName>TandM</b:EngagementTypeShortName>
                     <b:EngagementTypeUid>1152921504606863884</b:EngagementTypeUid>
                  </b:EngagementTypeIdentity>
                  <b:ExpenseAmountCostBudgetAmount i:nil="true"/>
                  <b:HoldbackAmount i:nil="true"/>
                  <b:HoldbackPercent i:nil="true"/>
                  <b:HoldbackType i:nil="true"/>
                  <b:InheritAddressFlag>false</b:InheritAddressFlag>
                  <b:InheritBillingCycleFlag>false</b:InheritBillingCycleFlag>
                  <b:InheritBillingInstructionsFlag>false</b:InheritBillingInstructionsFlag>
                  <b:InheritClientMessageFlag>false</b:InheritClientMessageFlag>
                  <b:InheritInvoiceContentFlag>false</b:InheritInvoiceContentFlag>
                  <b:InheritInvoiceScopeFlag>false</b:InheritInvoiceScopeFlag>
                  <b:InheritInvoiceTemplateFlag>false</b:InheritInvoiceTemplateFlag>
                  <b:InheritPaymentTermFlag>false</b:InheritPaymentTermFlag>
                  <b:InheritPurchaseOrderNumberFlag>false</b:InheritPurchaseOrderNumberFlag>
                  <b:InheritTimeBillingTypeFlag>false</b:InheritTimeBillingTypeFlag>
                  <b:InvoiceContent>B</b:InvoiceContent>
                  <b:InvoiceScope>E</b:InvoiceScope>
                  <b:InvoiceTemplateIdentity>
                     <b:InvoiceTemplateId i:nil="true"/>
                     <b:InvoiceTemplateName>A200</b:InvoiceTemplateName>
                     <b:InvoiceTemplateUid>1152921504606878904</b:InvoiceTemplateUid>
                  </b:InvoiceTemplateIdentity>
                  <b:ManagerIdentity>
                     <b:UserDisplayName>Bettina</b:UserDisplayName>
                     <b:UserId i:nil="true"/>
                     <b:UserReferenceSystemId>QA - BB</b:UserReferenceSystemId>
                     <b:UserUid>1152921504607011056</b:UserUid>
                  </b:ManagerIdentity>
                  <b:MaxCostContractAmount i:nil="true"/>
                  <b:MaxTimeContractAmount i:nil="true"/>
                  <b:MinCostContractAmount i:nil="true"/>
                  <b:MinTimeContractAmount i:nil="true"/>
                  <b:NewEngagementCode i:nil="true"/>
                  <b:PaymentTermIdentity>
                     <b:PaymentTermId i:nil="true"/>
                     <b:PaymentTermName>Net 15</b:PaymentTermName>
                     <b:PaymentTermUid>1152921504606856053</b:PaymentTermUid>
                  </b:PaymentTermIdentity>
                  <b:PurchaseOrderNumber>SOAP UI</b:PurchaseOrderNumber>
                  <b:ResourceDirectCostTimeBudgetAmount i:nil="true"/>
                  <b:RevenueEarnedByDate i:nil="true"/>
                  <b:RevenueRecognitionMethod i:nil="true"/>
                  <b:TimeAlertsBasisType>A</b:TimeAlertsBasisType>
                  <b:TimeBillingType>H</b:TimeBillingType>
                  <b:TimeBudgetMetric>B</b:TimeBudgetMetric>
                  <b:TimeContractTerms i:nil="true"/>
                  <b:Timestamp>AAAAADPQwRA=</b:Timestamp>
                  <b:UserDefinedFields>
                     <b:PwsUserDefinedFieldDetail>
                        <b:UdfId i:nil="true"/>
                        <b:UdfName>EN-Text List</b:UdfName>
                        <b:UdfUid>1152921504606856803</b:UdfUid>
                        <b:BooleanValue i:nil="true"/>
                        <b:DataType>L</b:DataType>
                        <b:DateValue i:nil="true"/>
                        <b:IntegerValue i:nil="true"/>
                        <b:ResourceIdentityValue i:nil="true"/>
                        <b:TextValue>Engagement-Web Services</b:TextValue>
                        <b:UdfTreatment>A</b:UdfTreatment>
                        <b:StoplightValues/>
                        <b:NumericValue i:nil="true"/>
                        <b:RelationValue i:nil="true"/>
                        <b:StoplightValuesClearFlag>false</b:StoplightValuesClearFlag>
                     </b:PwsUserDefinedFieldDetail>
                  </b:UserDefinedFields>
                  <b:WorkMinutesTimeBudgetAmount i:nil="true"/>
                  <b:CalculateEngagementBudgetFlag>true</b:CalculateEngagementBudgetFlag>
                  <b:ChargeableMinutesTimeBudgetAmount i:nil="true"/>
                  <b:InheritInvoiceEmailSettingsFlag>false</b:InheritInvoiceEmailSettingsFlag>
                  <b:InvoiceEmailSettings>
                     <b:EmailFromUserIdentity>
                        <b:UserDisplayName>Bettina</b:UserDisplayName>
                        <b:UserId i:nil="true"/>
                        <b:UserReferenceSystemId>QA - BB</b:UserReferenceSystemId>
                        <b:UserUid>1152921504607011056</b:UserUid>
                     </b:EmailFromUserIdentity>
                     <b:EmailInvoiceTemplateIdentity>
                        <b:InvoiceTemplateId i:nil="true"/>
                        <b:InvoiceTemplateName>E003</b:InvoiceTemplateName>
                        <b:InvoiceTemplateUid>1152921504606878908</b:InvoiceTemplateUid>
                     </b:EmailInvoiceTemplateIdentity>
                     <b:InvoiceEmailEnabledFlag>true</b:InvoiceEmailEnabledFlag>
                     <b:InvoiceEmailType>P</b:InvoiceEmailType>
                     <b:Recipients>
                        <b:PwsInvoiceEmailRecipient>
                           <b:RecipientType>T</b:RecipientType>
                           <b:UserIdentity>
                              <b:UserDisplayName>SOAP UI</b:UserDisplayName>
                              <b:UserId i:nil="true"/>
                              <b:UserReferenceSystemId>SOAP UI</b:UserReferenceSystemId>
                              <b:UserUid>1152921504607218108</b:UserUid>
                           </b:UserIdentity>
                        </b:PwsInvoiceEmailRecipient>
                     </b:Recipients>
                  </b:InvoiceEmailSettings>
                  <b:InheritRenderReceiptsFlag>false</b:InheritRenderReceiptsFlag>
                  <b:RenderReceiptsFlag>true</b:RenderReceiptsFlag>
                  <b:AutoApplyAvailableBalanceFlag>false</b:AutoApplyAvailableBalanceFlag>
                  <b:InheritAutoApplyAvailableBalanceFlag>true</b:InheritAutoApplyAvailableBalanceFlag>
                  <b:InheritTaxTypesFlag>false</b:InheritTaxTypesFlag>
                  <b:TaxType1Identity i:nil="true"/>
                  <b:TaxType2Identity i:nil="true"/>
                  <b:TaxType3Identity i:nil="true"/>
                  <b:InheritRenderedInvoiceFormatFlag>false</b:InheritRenderedInvoiceFormatFlag>
                  <b:RenderedInvoiceFormat i:nil="true"/>
               </b:EngagementDetail>
               <b:ProjectIdentities/>
               <b:ContractLineItems/>
               <b:Client>
                  <b:ClientId i:nil="true"/>
                  <b:ClientNumber>C000173</b:ClientNumber>
                  <b:ClientUid>1152921504607061713</b:ClientUid>
                  <b:ClientName>SOAP UI A</b:ClientName>
                  <b:InactiveFlag>false</b:InactiveFlag>
                  <b:ParentClientIdentity i:nil="true"/>
               </b:Client>
               <b:EffectiveCurrencySymbol>$</b:EffectiveCurrencySymbol>
               <b:EffectiveCurrencySymbolPlacement>0</b:EffectiveCurrencySymbolPlacement>
               <b:EffectiveDecimalDigits>2</b:EffectiveDecimalDigits>
               <b:EffectiveDefaultOpsCultureIdentity>
                  <b:OpsCultureId i:nil="true"/>
                  <b:OpsCultureName>en-US</b:OpsCultureName>
                  <b:OpsCultureNumber>1033</b:OpsCultureNumber>
               </b:EffectiveDefaultOpsCultureIdentity>
               <b:EffectiveExcelCurrencyFormat>[$$-409]#,##0.00_);[Red]([$$-409]#,##0.00);</b:EffectiveExcelCurrencyFormat>
               <b:EffectiveExcelCurrencyFormatRounded>[$$-409]#,##0_);[Red]([$$-409]#,##0);</b:EffectiveExcelCurrencyFormatRounded>
               <b:Manager>
                  <b:UserDisplayName>Bettina</b:UserDisplayName>
                  <b:UserId i:nil="true"/>
                  <b:UserReferenceSystemId>QA - BB</b:UserReferenceSystemId>
                  <b:UserUid>1152921504607011056</b:UserUid>
                  <b:EmailAddress>bettina@projectorpsa.com</b:EmailAddress>
                  <b:FirstName>Bettina</b:FirstName>
                  <b:LastName>Borces</b:LastName>
                  <b:MiddleName i:nil="true"/>
               </b:Manager>
               <b:BillableFlag>true</b:BillableFlag>
               <b:InvoiceRecipients>
                  <b:PwsUserSummary>
                     <b:UserDisplayName>Bettina</b:UserDisplayName>
                     <b:UserId i:nil="true"/>
                     <b:UserReferenceSystemId>QA - BB</b:UserReferenceSystemId>
                     <b:UserUid>1152921504607011056</b:UserUid>
                     <b:EmailAddress>bettina@projectorpsa.com</b:EmailAddress>
                     <b:FirstName>Bettina</b:FirstName>
                     <b:LastName>Borces</b:LastName>
                     <b:MiddleName i:nil="true"/>
                  </b:PwsUserSummary>
                  <b:PwsUserSummary>
                     <b:UserDisplayName>SOAP UI</b:UserDisplayName>
                     <b:UserId i:nil="true"/>
                     <b:UserReferenceSystemId>SOAP UI</b:UserReferenceSystemId>
                     <b:UserUid>1152921504607218108</b:UserUid>
                     <b:EmailAddress>soapui@revcorp.bb.client</b:EmailAddress>
                     <b:FirstName>SOAP</b:FirstName>
                     <b:LastName>UI</b:LastName>
                     <b:MiddleName i:nil="true"/>
                  </b:PwsUserSummary>
               </b:InvoiceRecipients>
               <b:OverageProjectCandidates/>
               <b:ProductiveFlag>true</b:ProductiveFlag>
               <b:ProjectBillingAdjustedRevenueTimeBudgetAmount>0</b:ProjectBillingAdjustedRevenueTimeBudgetAmount>
               <b:ProjectChargeableMinutesTimeBudgetAmount>0</b:ProjectChargeableMinutesTimeBudgetAmount>
               <b:ProjectClientAmountCostBudgetAmount>0</b:ProjectClientAmountCostBudgetAmount>
               <b:ProjectContractRevenueTimeBudgetAmount>0</b:ProjectContractRevenueTimeBudgetAmount>
               <b:ProjectDisbursedAmountCostBudgetAmount>0</b:ProjectDisbursedAmountCostBudgetAmount>
               <b:ProjectExpenseAmountCostBudgetAmount>0</b:ProjectExpenseAmountCostBudgetAmount>
               <b:ProjectResourceDirectCostTimeBudgetAmount>0</b:ProjectResourceDirectCostTimeBudgetAmount>
               <b:ProjectWorkMinutesTimeBudgetAmount>0</b:ProjectWorkMinutesTimeBudgetAmount>
            </a:Engagement>
            <a:EngagementIdentity xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/">
               <b:EngagementCode>01312024E001001</b:EngagementCode>
               <b:EngagementId i:nil="true"/>
               <b:EngagementUid>1152921504607913740</b:EngagementUid>
            </a:EngagementIdentity>
            <a:EngagementTimestamp>AAAAADPQwQ8=</a:EngagementTimestamp>
            <a:LockStolenFromUserIdentity i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
            <a:StolenLocks i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
            <a:RevalueReport i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
         </PwsSaveEngagementResult>
      </PwsSaveEngagementResponse>
   </s:Body>
</s:Envelope>


PwsSaveEngagement - Common Errors and Warnings

ErrorNumber

ErrorCode

ErrorText

109

AddressAttentionTruncated

Address attention exceeded maximum length (50) and was truncated

113

AddressCityTruncated

Address city exceeded maximum length (20) and was truncated

110

AddressCompanyNameTruncated

Address company name exceeded maximum length (50) and was truncated

116

AddressCountryTruncated

Address country exceeded maximum length (20) and was truncated

111

AddressLine1Truncated

Address line 1 exceeded maximum length (50) and was truncated

112

AddressLine2Truncated

Address line 2 exceeded maximum length (50) and was truncated

114

AddressStateOrProvinceTruncated

Address state or province exceeded maximum length (20) and was truncated

115

AddressZipOrPostalCodeTruncated

Address zip or postal code exceeded maximum length (20) and was truncated

62437

AttemptToDeleteRequiredUdf

An attempt was mode to delete a required UDF value

54640

BilledAmountExceedsContractAmount

The total amount billed to date exceeds the current contract amount

12019

BillingAdjustedRevenueMayNotBeSpecified

Billing adjusted revenue time budget amount specified when time budget metric is not B

12020

BillingAdjustedRevenueOutOfRange

Billing adjusted revenue time budget amount out of range

57659

BillingCycleNotFound

Specified billing cycle not found or inactive

117

BillingInstructionsTruncated

Specified billing instructions exceeded maximum length (1000) and was truncated

12027

ClientAmountMayNotBeSpecified

Client amount cost budget amount specified when cost budget metric is not C

12028

ClientAmountOutOfRange

Client amount cost budget amount out of range

118

ClientMessageTruncated

Specified client message exceeded maximum length (4000) and was truncated

57629

ClientNotFound

Specified client not found or inactive

57631

ClientNotSpecified

Client required for new engagements

12021

ContractRevenueMayNotBeSpecified

Contact revenue time budget amount specified when time budget metric is not C

12022

ContractRevenueOutOfRange

Contact revenue time budget amount out of range

54611

CostCenterCannotBeChangedDueToActivity

Cost center cannot be changed because there has been invoicing or accounting activity

54610

CostCenterNotEnabledForEngagements

Specified cost center not enabled for engagements

57525

CostCenterNotFound

Specified cost center not found

57524

CostCenterNotSpecified

Cost center required for new engagements

12016

CostContractAmountsCannotBeSpecified

Minimum and maximum cost contract amounts may not be specified when CostContractTerms is null

54602

CreateEngagementPermissionDenied

Permission denied to create engagement

57531

CultureCurrencyIncompatibility

Specified billing culture not compatible with engagement currency

57527

CultureNotFound

Specified billing culture not found

57528

CultureNotValidForAccount

Account is not configured to use specified culture

57526

CultureOrCurrencyNotSpecified

Billing culture required for new engagements

57529

CurrencyNotFound

Specified engagement currency not found

57530

CurrencyNotValidForAccount

Account is not configured to use specified currency

12029

DisbursedAmountMayNotBeSpecified

Disbursed amount cost budget amount specified when cost budget metric is not D

12030

DisbursedAmountOutOfRange

Disbursed amount cost budget amount out of range

54617

EngagementBillabilityCannotBeChanged

Engagement cannot be changed from billable to non-billable or vice versa

54636

EngagementClientIsInactive

Specified client is inactive

54603

EngagementCodeAlreadyInuse

Engagement code already in use

54606

EngagementCodeMayNotBeSpecifiedForNewEngagements

Specified engagement not found or engagement code may not be specified because account is configured to use automatic engagement numbering

54605

EngagementCodeRequiredForNewEngagements

Engagement code is required for new engagements because account is configured to use manual engagement numbering

120

EngagementCodeTruncated

Specified engagement code exceeded maximum length (20) and was truncated

54613

EngagementCurrencyCannotBeChanged

Engagement currency cannot be changed

54614

EngagementCurrencyNotFound

Specified engagement currency not found or inactive

54616

EngagementInvoiceTemplateIsInactive

Specified invoice template is inactive

54076

EngagementIsLocked

Engagement is locked by another user (identity of user is returned in SOAP fault)

54635

EngagementManagerIsInactive

Specified engagement manager is inactive

54604

EngagementNameRequiredForNewEngagements

Engagement name required for new engagements

121

EngagementNameTruncated

Specified engagement name exceeded maximum length (255) and was truncated

54061

EngagementNotFound

Specified engagement not found

54059

EngagementNotSpecified

Engagement not specified in service invocation

54615

EngagementPaymentTermIsInactive

Specified payment term is inactive

57537

EngagementStageNotFound

Specified engagement stage not found

57536

EngagementStageNotSpecified

Engagement stage required for new engagements

54612

EngagementTypeNotFound

Specified engagement type not found or inactive

57538

EngagementTypeNotSpecified

Engagement type required for new engagements

12031

ExpenseAmountMayNotBeSpecified

Expense amount cost budget amount specified when cost budget metric is not E

12032

ExpenseAmountOutOfRange

Expense amount cost budget amount out of range

54625

HolbackAmountCannotBeSpecifiedForFpEngagement

Holdback cannot be specified for fixed price engagements

12035

HoldbackAmountCannotBeSpecified

Holdback amount specified when holdback type is N or P

54608

HoldbackAmountMissingOrInvalid

Holdback amount required for holdback type A and must be between 0 and the time contract amount

12040

HoldbackAmountOutOfRange

Holdback amount out of range

54624

HoldbackAmountsCleared

Holdback amount was cleared because contract terms were changed from fixed price.

12036

HoldbackPercentCannotBeSpecified

Holdback percent specified when holdback type is N or A

54607

HoldbackPercentMissingOrInvalid

Holdback percent required for holdback type P and must be between 0% and 100%

12039

HoldbackPercentOutOfRange

Holdback percent out of range

50038

InactiveResourceForResourceValuedUdf

An inactive resource was specified for a resource-valued UDF

55138IncompleteContractTypeAttributesWhen creating a contract line item with a custom contract type, all contract type attributes must be specified.

54620

InvalidFixedPriceContractAmounts

Minimum and maximum time contract amount must be specified and equal for fixed price engagements

54621

InvalidNotToExceedContractAmounts

Minimum time contract amount may not be specified for NTE engagements and maximum contract amount must be specified and non-negative

54622

InvalidTimeAndMaterialsContractAmounts

Neither minimum nor maximum time contract amount may be specified for T&M engagements

10102

InvalidTimestamp

Given timestamp is of invalid format

62436

InvalidUdfValue

Invalid value specified for text list UDF

12004

InvalidValueForCostAlertsBasisType

Invalid value for cost alerts basis type

12018

InvalidValueForCostBudgetMetric

Invalid value for cost budget metric

12011

InvalidValueForCostContractTerms

Invalid cost contract terms

54609

InvalidValueForHoldbackType

Invalid value for holdback type

11032

InvalidValueForInvoiceContent

Invalid value for invoice content

11029

InvalidValueForInvoiceScope

Invalid value for invoice scope

12045

InvalidValueForRevenueEarnedByDate

The specified revenue earned by date is invalid (it must be as of midnight UTC on the given date).

12033

InvalidValueForRevenueRecognitionMethod

Invalid value for revenue recognition method

12003

InvalidValueForTimeAlertsBasisType

Invalid value for time alerts basis type

11026

InvalidValueForTimeBillingType

Invalid value for time billing type

12017

InvalidValueForTimeBudgetMetric

Invalid value for time budget metric

12005

InvalidValueForTimeContractTerms

Invalid time contract terms

10500

InvalidValueForUdfDateValue

A date-valued UDF specified an invalid value (the specified datetime must be as of midnight UTC on the given date)

54781

InvoiceContentRequiredForEngagement

Invoice content must be specified when InheritInvoiceContentFlag is being cleared.

54780

InvoiceScopeRequiredForEngagement

Invoice scope must be specified when InheritInvoiceScopeFlag is being cleared.

50007

ItemHasBeenUpdated

Engagement has been updated

12009

MaxTimeContractAmountRequiredForNte

Maximum time contract amount must be specified for NTE engagements

54618

NewCostCenterHasDifferentFunctionalCurrency

Cost center cannot be changed to a cost center with a different functional currency

54628

NoPermissionToChangeCostCenter

No permission to change engagement cost center

54629

NoPermissionToChangeEngagementType

No permission to change engagement stage

54630

NoPermissionToUpdateBillingInformation

No permission to update billing information

54631

NoPermissionToUpdateContractTerms

No permission to update contract terms

54633

NoPermissionToUpdateEngagement

No permission to update engagement

54632

NoPermissionToUpdateEngagementBudgets

No permission to update engagement budgets

54637

OnlyPercentCompleteMethodIsSupported

Currently, only the percent complete revenue recognition method is supported

119

PurchaseOrderNumberTruncated

Specified purchase order number exceeded maximum length (50) and was truncated

12023

ResourceDirectCostMayNotBeSpecified

Resource direct cost time budget amount specified when time budget metric is not R

12024

ResourceDirectCostOutOfRange

Resource direct cost time budget amount out of range

54638

RevenueEarnedByDateMayNotBeSpecified

Revenue earned by date may not be specified when revenue recognition method is not P

54639

RevenueEarnedByDateOutOfRange

Revenue earned by date may not be prior to last revenue recognition cutoff date

54763

TimeBillingTypeRequiredForEngagement

Time billing type must be specified when InheritTimeBillingTypeFlag is being cleared.

12010

TimeContractAmountsCannotBeSpecified

Minimum and maximum time contract amounts may not be specified when TimeContractTerms is null

54619

TimeContractTermsCannotBeChanged

Time contract terms cannot be changed because there are approved time cards.

50142

UdfNotFound

Specified UDF does not exist

50039

UdfRefRequired

A UDF record was supplied with an incomplete UDF identity

62438

UdfValueUnexpected

An unexpected non-null value was specified for a UDF (e.g. specifying IntegerValue for a string-valued UDF

54601

UnexpectedErrorSavingEngagement

Unexpected error saving engagement

50046

UpdatePermissionDenied

Permission denied

57551

UserNotFound

Specified engagement manager not found

57550

UserNotSpecified

Engagement manager required for new engagements

12025

WorkMinutesMayNotBeSpecified

Work minutes time budget amount specified when time budget metric is not H

12026

WorkMinutesOutOfRange

Work minutes time budget amount out of range