PwsDeleteContractLineItem
Overview
This web service deletes a specified contract line item (PwsContractLineItemRef). The service will return the identity of the deleted contract line item (PwsContractLineItemRef). Note, contract line items that are associated with one or more projects cannot be deleted.
Request Format
- PwsDeleteContractLineItem
- serviceRequest: PwsDeleteContractLineItemRq
- RequestId: Int32
- SessionTicket: String
- ContractLineItemIdentity: PwsContractLineItemRef
- EngagementTimestamp: String
- StealLockFlag: Boolean **deprecated**
- ContractLineItemTimestamp: String
- LocksToSteal: PwsEntityLockSummary
- ProjectorLockSetId: Int32
- CascadeDeleteFlag: Boolean
- DeleteEmptyEngagementFlag: Boolean
- serviceRequest: PwsDeleteContractLineItemRq
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. | ARKG+qjBuMq+YMu7gEYnoA== | |
ContractLineItemIdentity | Yes | This is the identity of the contract line item to be deleted | |||
EngagementTimestamp | String | **deprecated** | |||
StealLockFlag | Boolean | **deprecated** | |||
ContractLineItemTimestamp | 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 | 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. | ||
CascadeDeleteFlag | Boolean | No | false | If set to true, associated project(s) will be deleted alongside the contract line item. | |
DeleteEmptyEngagementFlag | Boolean | No | false | If set to true, associated engagement will be deleted if there is no existing project. If the engagement still has project(s), engagement deletion request is ignored. When set to false and the engagement has no existing project, warning 54668 will be included in the response. |
Request Usage Example(s)
Response Format
- PwsDeleteContractLineItemResponse
- PwsDeleteContractLineItemResult: PwsDeleteContractLineItemRs
- Messages: PwsMessage[]
- ResponseId: Int32
- RequestStatus: RequestStatus
- ServerTimestampUtc: DateTime
- ContractLineItemIdentity: PwsContractLineItemRef [1..100]
- EngagementTimestamp: String **deprecated**
- LockStolenFromUserIdentity: PwsUserRef **deprecated**
- StolenLocks: PwsEntityLockSummary
- PwsDeleteContractLineItemResult: PwsDeleteContractLineItemRs
Response Elements
Element | Data Type | Description | Sample Data |
---|---|---|---|
Messages | 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-01-23T18:23:31.9905096Z |
ContractLineItemIdentity | The identity of the deleted contract line item | ||
EngagementTimestamp | String | **deprecated** | |
LockStolenFromUserIdentity | **deprecated** | ||
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)
PwsDeleteContractLineItem - Common Errors and Warnings
- For all errors and warnings please refer to the Complete List of Errors and Warnings
ErrorNumber | ErrorCode | ErrorText |
---|---|---|
54233 | NoPermissionToDeleteContractLineItem | You do not have permission to delete this contract line item. |
54235 | ContractLineItemContainsInvoicedOrAchievedMilestones | A contract line item may not be deleted if it contains invoiced or achieved milestones. |
54668 | EngagementEmpty | Warning - Engagement has no underlying projects. Deleting the engagement is recommended. |
54704 | CannotDeleteReferencedEngagement | Engagement cannot be deleted because it is in use by Invoice. |
54948 | SpecifiedContractLineItemNotFound | Specified contract line item not found. |
54949 | ContractLineItemMustBeSpecified | A contract line item identity must be specified. |
54962 | ContractLineItemInUse | A contract line item may not be deleted if it has projects related to it. |