Overview
This web service applies a revenue recognition adjustment to a specified contract line item (PwsContractLineItemRef).
Request Format
- PwsApplyRevRecAdjustment
- serviceRequest: PwsApplyRevRecAdjustmentRq
- RequestId: Int32
- SessionTicket: String
- BeginDate: DateTime
- ContractLineItemIdentity: PwsContractLineItemRef
- CutoffDate: DateTime
- EngagementCurrencyIdentity: PwsCurrencyRef
- EngagementTimestamp: String **deprecated**
- FractionComplete: Double
- IncludeRequestsFlag: Boolean
- Notes: String (1000)
- StealLockFlag: Boolean **deprecated**
- TotalRevenueRecognized: Double
- IntervalRevenueRecognized: Double
- ContractLineItemTimestamp: String
- LocksToSteal: PwsEntityLockSummary[1.100]
- serviceRequest: PwsApplyRevRecAdjustmentRq
Request Elements
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. | Af2v8Ie/yFiUtqHqc3felw== | |
BeginDate | DateTime | No | Start Date of the associated engagement | The begin date for your revenue recognition period. If you choose a specific start date, then all recognized revenue on time cards BEFORE that date is left alone and is considered sacrosanct. All time cards after and up to the end date will have their recognized revenue recalculated. | |
ContractLineItemIdentity | Yes | The identity of the contract line item to make the revenue recognition adjustment for. | |||
CutoffDate | DateTime | Yes | The cut off date or end date for your revenue recognition period. If you have run revenue recognition previously, and there is revenue sitting on time cards AFTER this date, that revenue will be zeroed out. | 2017-07-03T00:00:00.000Z | |
EngagementCurrencyIdentity | Yes (if TotalRevenueRecognized is specified) | This identifies the currency for the engagement the contract line item is associated with. | |||
EngagementTimestamp | String | **deprecated** | |||
FractionComplete | Double | One of FractionComplete, IncludeRequestsFlag, TotalRevenueRecognized or IntervalRevenueRecognized is required | The fractional amount of total revenue that should be recognized for the date range provided. | .30 | |
IncludeRequestsFlag | Boolean | See FractionComplete | false | If set to 'true', the basis units the revenue will be recognized against will include requested hours. | |
Notes | String (1000) | No | Notes that are stored with the revenue recognition record. | Recognizing 30% | |
StealLockFlag | Boolean | **deprecated** | true | ||
TotalRevenueRecognized | Double | See FractionComplete | Revenue you want to be recognized from beginning of time through the cutoff date | ||
IntervalRevenueRecognized | Double | See FractionComplete - this is only applicable for contract line items with a revenue schedule | Represents the revenue you want to be recognized from the specified begin date through the cutoff date. (if you leave out the begin date, this acts identical to the TotalRevenueRecognized) | ||
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[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. |
Request Usage Example(s)
Response Format
- PwsApplyRevRecAdjustmentResponse
- PwsApplyRevRecAdjustmentResult: PwsApplyRevRecAdjustmentRs
- Messages: PwsMessage[]
- ResponseId: Int32
- Status: RequestStatus
- ServerTimestampUtc: DateTime
- EngagementTimestamp: String **deprecated**
- LockStolenFromUserIdentity: PwsUserRef **deprecated**
- ContractLineItemTimestamp: String
- StolenLocks: PwsEntityLockSummary
- PwsApplyRevRecAdjustmentResult: PwsApplyRevRecAdjustmentRs
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. | 1 |
Status | RequestStatus | Click here for more information. | Ok |
ServerTimestampUtc | DateTime | Click here for more information. | 2018-02-02T16:30:03.8860867Z |
EngagementTimestamp | String | **deprecated** | |
LockStolenFromUserIdentity | **deprecated** | ||
ContractLineItemTimestamp | 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. | AAAAAA62D3k= |
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)
PwsApplyRevRecAdjustment - Common Errors and Warnings
- For all errors and warnings please refer to the Complete List of Errors and Warnings
ErrorNumber | ErrorCode | ErrorText |
---|---|---|
29000 | NoContractLineItemSpecifiedForRevRec | No Contract Line Item specified on which to apply Revenue Recognition Adjustment. |
29001 | InvalidValueForRevRecCutoffDate | Invalid value for Revenue Recognition Adjustment Cutoff Date. |
29002 | InvalidValueForRevRecBeginDate | Invalid value for Revenue Recognition Adjustment Begin Date. |
29003 | RevRecFractionCompleteOutOfRange | Revenue Recognition Adjustment Fraction Complete out of range. |
29004 | RevRecTotalRevenueRecognizedOutOfRange | Revenue Recognition Adjustment Total Revenue Recognized out of range. |
29005 | RevRecNotesTruncated | Revenue Recognition Adjustment Notes truncated. |
29006 | InvalidRevRecDateCombinationSpecified | Illegal combination of Revenue Recognition Adjustment Dates specified. |
29007 | SpecifyNoMoreThanOneRevRecAxis | May specify at most one of Fraction Complete, Include Requests Flag, and Total Revenue Recognized on Revenue Recognition Adjustment. |
29008 | MustSpecifyRevRecCurrencyIfSpecifyingAmount | When specifying Total Revenue Recognized on Revenue Recognition Adjustment, must also specify Currency. |
29009 | RevRecIntervalRevenueRecognizedOutOfRange | Revenue Recognition Adjustment Interval Revenue Recognized out of range. |
50469 | EntityAlreadyLocked | One or more existing locks prevent acquisition of requested lock. |
55016 | CutoffDateMustBeEligibleBucketDate | For revenue schedules, begin date and cutoff date must identify an eligible bucket. |
55019 | SpecifiedCurrencyMustMatchEngagementCurrency | The specified currency does not match the engagement's currency. |
55022 | RevenueToRecognizeMayNotDifferFromScheduledRevenue | For revenue schedules, revenue to recognize cannot differ from the scheduled revenue amount. |
55023 | NoBasisUnitsAfterCutoffDateUponWhichToAllocateRevenue | There is revenue remaining, but there are no basis units after the cutoff date to which revenue can be allocated. |
55024 | NoAppropriateTimeCardsToReceiveProposedAdjustment | There are no appropriate time cards to receive the proposed revenue recognition adjustment. |
55025 | NoBasisUnitsUponWhichToAllocateRevenue | There are no basis units upon which to allocate revenue. |
55204 | RevRecTimeAndMaterialsWithoutAmount | Revenue recognition for time and materials time contract terms must be based on recognizing a specific revenue amount. |
70101 | RevRecWithEmptyCli | A contract line item must have a project beneath it in order to perform revenue recognition. |
70118 | RevRecCutoffClosedForAdj | The revenue recognition cutoff date is in a period that is not open for adjustments. |