Overview
This web service inserts or updates a single contract line item milestone based on a detailed contract line item milestone structure (PwsContractLineItemMilestoneDetail). The service returns the identity (PwsContractLineItemMilestoneRef) of the contract line item milestone that has been inserted or updated.
Request Format
- PwsSaveContractLineItemMilestone
- serviceRequest: PwsSaveContractLineItemMilestoneRq
- RequestId: Int32
- SessionTicket: String
- AchievedDateClearFlag: Boolean
- ContractLineItemMilestone: PwsContractLineItemMilestoneDetail
- DescriptionClearFlag: Boolean
- EngagementCurrencyIdentity: PwsCurrencyRef
- EngagementTimestamp: String
- PlannedDateClearFlag: Boolean
- ProjectClearFlag: Boolean
- ProjectTaskClearFlag: Boolean
- StealLockFlag: Boolean
- serviceRequest: PwsSaveContractLineItemMilestoneRq
Request Elements
Element | Data Type | Required? | Default | Description | Sample Data |
---|---|---|---|---|---|
Int32 | No | Click here for more information. | 1 | ||
String | Yes | Click here for more information. | AdDMw48w49OxnEUPGUuMSw== | ||
AchievedDateClearFlag | Boolean | No | false | The date the contract line item milestone was achieved | false |
ContractLineItemMilestone | Yes | The detailed contract line item milestone information to be inserted or updated | |||
DescriptionClearFlag | Boolean | No | false | If set to 'true', the contract line item milestone description will be set to null | false |
EngagementCurrencyIdentity | Yes | The currency of the engagement this contract line item milestone resides under | |||
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 PwsSaveEngagement(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. | ||
PlannedDateClearFlag | Boolean | No | false | If set to 'true', the milestone planned date will be set to null | false |
ProjectClearFlag | Boolean | No | false | If set to 'true', the project associated with the contract line item milestone will be set to null | false |
ProjectTaskClearFlag | Boolean | No | false | If set to 'true', the project task associated with the contract line item milestone will be set to null | false |
StealLockFlag | Boolean | No | false | If set to 'true', any locks on the engagement 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 | true |
Request Usage Example(s)
Response Format
- PwsSaveContractLineItemMilestoneResponse
- PwsSaveContractLineItemMilestoneResult: PwsSaveContractLineItemMilestoneRs
- Messages: PwsMessage[]
- ResponseId: Int32
- Status: RequestStatus
- ServerTimestampUtc: DateTime
- ContractLineItemMilestoneIdentity: PwsContractLineItemMilestoneRef
- EngagementTimestamp: String
- LockStolenFromUserIdentity: PwsUserRef
- PwsSaveContractLineItemMilestoneResult: PwsSaveContractLineItemMilestoneRs
Response Elements
Element | Data Type | Description | Sample Data |
---|---|---|---|
Messages | The web service response status and message. Click here for more information | ||
Int32 | Click here for more information. | 1 | |
Status | Click here for more information. | Ok | |
DateTime | Click here for more information. | 2018-01-22T19:30:03.4141326Z | |
ContractLineItemMilestoneIdentity | The unique keys used to identify the contract line item milestone | ||
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 by a call to PwsSaveEngagement(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. | AAAAAA9/798= |
LockStolenFromUserIdentity | If a lock is stolen in the process of updating an engagement, this identifies the user from which the lock was stolen from |
Response Usage Example(s)
PwsSaveContractLineItemMilestone - Common Errors and Warnings
- For all errors and warnings please refer to the Complete List of Errors and Warnings
ErrorNumber | ErrorCode | ErrorText |
---|---|---|
33001 | ContractLineItemMilestoneDescriptionMayNotBeSpecifiedWhenClearFlagSet | Contract Line Item Milestone Description was specified when Clear Flag Was Set. |
33002 | ContractLineItemMilestonePlannedDateMayNotBeSpecifiedWhenClearFlagSet | Contract Line Item Milestone Planned Date was specified when Clear Flag Was Set. |
33003 | ContractLineItemMilestoneAchievedDateMayNotBeSpecifiedWhenClearFlagSet | Contract Line Item Milestone Acheived Date was specified when Clear Flag Was Set. |
54260 | ContractLineItemMilestoneNotFound | Specified contract line item milestone not found. |
54261 | ContractLineItemMilestoneRequired | A contract line item must be specified. |
54976 | CannotClearAchievedDateOnInvoicedMilestone | Achieved date may not be cleared for milestones that are on an invoice. |
54977 | CannotForegoInvoicedMilestone | Achieved milestones may not be marked as foregone. |
54978 | NoPermissionToMaintainMilestones | You do not have permission to maintain milestones. |
54979 | MilestonProjectMismatch | Specified project task does not belong to specified project. |
54981 | CannotLinkMilestoneToInternalOrOpenTask | Milestones cannot be linked to tasks that are open for time or that are parent tasks. |
54982 | CannotLinkMilestoneToTaskWithAssignedRole | Milestones cannot be linked to tasks that have roles assigned. |
54983 | ProjectTaskSpecifiedWithoutProject | Task may not be specified when no project is specified. |
54986 | ContractLineItemMilestoneNameInUse | There is already a milestone in the specified contract line item with the specified name. |
55002 | BillingMilestonesInvalidOnNonbillableEngagements | Billing milestones can only be associated with contract line items on billable engagements. |
55112 | CannotDisableDtmDueToMilestoneOrWatchedTasks | DTM cannot be disabled for this project because there are tasks that are either associated with milestones or are being watched |