Overview
This web service inserts or updates a single project role based on a detailed project role structure (PwsProjectRoleDetail). The service returns the identity (PwsProjectRoleRef) of the project role that has been inserted or updated.
Request Format
- PwsSaveProjectRole
- serviceRequest: PwsSaveProjectRoleRq
- RequestId: Int32
- SessionTicket: String
- BaseRatesOnTitleClearFlag: Boolean
- CandidatesClearFlag: Boolean
- CostCenterClearFlag: Boolean
- CostCenterCriteriaClearFlag: Boolean
- DescriptionClearFlag: Boolean
- EngagementTimestamp: String **deprecated**
- InitialAllocation: PwsProjectRoleHoursPattern
- KeywordsClearFlag: Boolean
- LocationClearFlag: Boolean
- LocationCriteriaClearFlag: Boolean
- Mode: String (1)
- ProjectIdentity: PwsProjectRef
- ProjectRole: PwsProjectRoleDetail
- ResourceClearFlag: Boolean
- RoleEndDateClearFlag: Boolean
- RoleStartDateClearFlag: Boolean
- ShareCostCenterClearFlag: Boolean
- SkillCriteriaClearFlag: Boolean
- StealLockFlag: Boolean **deprecated**
- TitleClearFlag: Boolean
- TitleCriteriaClearFlag: Boolean
- RdcTransferHourlyRateClearFlag: Boolean
- RevenueTransferHourlyRateClearFlag: Boolean
- RateExceptionsClearFlag: Boolean
- RdcExceptionsClearFlag: Boolean
- ResourceTypeCriteriaClearFlag: Boolean
- FullDetailFlag: Boolean
- LocksToSteal: PwsEntityLockSummary[1.100]
- MakeRoleNameUniqueFlag: Boolean
- NameRoleFlag: Boolean
- ProjectorLockSetId: Int32
- ResourceTypeClearFlag: Boolean
- ShareUserClearFlag: Boolean
- WarnOnPermissionErrorFlag: Boolean
- ExcludeReadNotesFlag: Boolean
- PurchaseOrderNumberClearFlag: Boolean
- ReplaceAllocatedCriteriaWithRequestedFlag: Boolean
- RetrievalMode: String
- RevalueAction: String
- RoleTypeClearFlag: Boolean
- serviceRequest: PwsSaveProjectRoleRq
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. | Ae9v30fDNwFMx833f5Hesg== | |
BaseRatesOnTitleClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', existing base-rate-on-title setting will be cleared (rates will be based on resource's title). | false |
CandidatesClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', existing named candidates will be cleared (candidate identities defined in PwsProjectRoleDetail are ignored). | false |
CostCenterClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', preferred cost center for unnamed candidate is cleared (preferred cost center identity defined in PwsProjectRoleDetail is ignored). | false |
CostCenterCriteriaClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', cost center criteria for unnamed candidate is cleared (cost center criteria defined in PwsProjectRoleDetail is ignored). | false |
DescriptionClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', the existing description will be cleared. | false |
EngagementTimestamp | String | **deprecated** | |||
InitialAllocation | PwsProjectRoleHoursPattern | On Insert: No On Update: No | The allocation set up for the project role upon creation. | ||
KeywordsClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', existing keywords for unnamed candidate is cleared. | false |
LocationClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', preferred location for unnamed candidate is cleared. Please note, if System Settings' Scheduling is set to "Show Location Criteria", then this flag cannot be set to 'true' because location criteria is required. | false |
LocationCriteriaClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', location criteria for unnamed candidate is cleared and location criteria (LocationIdentities) defined in PwsProjectRoleDetail is ignored; If set to 'false', location criteria (LocationIdentities) will be updated if provided in PwsProjectRoleDetail. | false |
Mode | String (1) | On Insert: Yes On Update: Yes | Determine whether specified criteria applies to booked or requested criteria settings. A: booked data for roles R: requested data for roles | A | |
ProjectIdentity | On Insert: Yes On Update: Yes | The identity of the project that contains the project role. Click here for more information. | |||
ProjectRole | On Insert: Yes On Update: Yes | Structure that contains the complete information of the project role. Please click here for more information.. If it refers to an existing project role, this request updates this project role; otherwise, this request creates a new project role. | |||
ResourceClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', existing named resource is cleared. | false |
RoleEndDateClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', existing role end date is cleared. | false |
RoleStartDateClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', existing role start date is cleared. | false |
ShareCostCenterClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', role's shared cost center is cleared. | false |
SkillCriteriaClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', skill criteria for unnamed candidate is cleared (skill criteria defined in PwsProjectRoleDetail is ignored). | false |
StealLockFlag | Boolean | **deprecated** | |||
TitleClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', preferred title for unnamed candidate is cleared. | false |
TitleCriteriaClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', title criteria for unnamed candidate is cleared (title criteria (TitleIdentities) defined in PwsProjectRoleDetail is ignored). | false |
RdcTransferHourlyRateClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', RDC transfer hourly rate is cleared (RdcTransferHourlyRate defined in PwsProjectRoleDetail is ignored). | false |
RevenueTransferHourlyRateClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', revenue transfer hourly rate is cleared (RevenueTransferHourlyRate defined in PwsProjectRoleDetail is ignored). | false |
RateExceptionsClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', overriding rate is cleared (RateExceptions defined in PwsProjectRoleDetail is ignored). | false |
RdcExceptionsClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', overriding RDC rate is cleared (RdcExceptions defined in PwsProjectRoleDetail is ignored). | false |
ResourceTypeCriteriaClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', the resource type criteria will be cleared. Note this will not clear the preferred or allocated resource type. Empty resource type criteria means that any resource type is acceptable. | |
FullDetailFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', the complete project role element structure will be included in the response. | |
LocksToSteal | PwsEntityLockSummary[1.100] | On Insert: No On Update: 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. | ||
MakeRoleNameUniqueFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', and the specified role name is already in use, the service will append a number onto the end of the role name in order to make it unique. Otherwise, the service will fail if the specified role name is in use. | |
NameRoleFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', and no role name is specified, the service will use the resource display name to generate a role name if the role has assigned resource. Either role name or resource has to be specified. If set to 'false' (the default value), then a role name must be supplied. | |
ProjectorLockSetId | Int32 | On Insert: No On Update: No | A projector lock set id is an identifier for a group of one or more locks held as a unit. | ||
ResourceTypeClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', the preferred or allocated resource type is cleared. | |
ShareUserClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', the shared to user is cleared for the role. | |
WarnOnPermissionErrorFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', request will result in warnings instead of errors if user has no permission (on insert only): - Attempt to set sharing (by user or cost center) without permission to share scheduling. | false |
ExcludeReadNotesFlag | Boolean | On Insert: No On Update: No | false | If true, notes that have been marked as read by the current user are excluded from the data returned. Applies only when FullDetailFlag is true. | |
PurchaseOrderNumberClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true', the purchase order number for the role is cleared. | |
ReplaceAllocatedCriteriaWithRequestedFlag | Boolean | On Insert: No On Update: No | false | When in scheduling mode (Mode = 'A') and updating an existing role that has incomplete booked criteria, if this flag is set, any existing booked criteria is overwritten with requested criteria. Note any criteria values specified in this request will overwrite what is copied from the requested criteria. | |
RetrievalMode | String | On Insert: No On Update: No | Required if FullDetailFlag is set, Designate whether assigned (A), requested (R) or effective (E) criteria is returned for the role. | ||
RevalueAction | String | On Insert: No On Update: No | N | This indicates how the service should respond if there are time cards that would become in need of revalue as a result of the changes. The valid values are:
| |
RoleTypeClearFlag | Boolean | On Insert: No On Update: No | false | If set to 'true' the role type for the role will be cleared. |
Request Usage Example(s)
Response Format
- PwsSaveProjectRoleResponse
- PwsSaveProjectRoleResult: PwsSaveProjectRoleRs
- Messages: PwsMessage[]
- ResponseId: Int32
- Status: RequestStatus
- ServerTimestampUtc: DateTime
- ProjectRoleIdentity: PwsProjectRoleRef
- EngagementTimestamp: String **deprecated**
- LockStolenFromUserIdentity: PwsUserRef **deprecated**
- ProjectRole:
- ProjectRoleTimestamp: String
- StolenLocks: PwsEntityLockSummary
- ResourcePartiallyInactiveFlag: Boolean
- RevalueReport: PwsRevalueReport
- TotalApprovedOrFinalizedMinutes: Double
- TotalRequestedOrScheduledMinutes: Double
- PwsSaveProjectRoleResult: PwsSaveProjectRoleRs
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-02-14T15:34:53.8497124Z |
ProjectRoleIdentity | The identity of the project role just created/updated. Click here for more information. | ||
EngagementTimestamp | String | **deprecated** | |
LockStolenFromUserIdentity | **deprecated** | ||
ProjectRole | PwsProjectRoleElement | The full element structure for the role that was saved. This will be populated only if FullDetailFlag is set to 'true' in the request. | |
ProjectRoleTimestamp | 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. | |
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. | |
ResourcePartiallyInactiveFlag | Boolean | If an initial allocation is specified in the input, this will be true if the role is a named role, and the resource was inactive for at least one day during the period of time over which there are requested or booked minutes. | |
RevalueReport | PwsRevalueReport | Information about time cards from the project or project role that were affected by the change. Populated only when RevalueAction is R (Revalue) or C (Check). If RevalueAction is R, the values included in this structure reflect what was done. If RevalueAction is C, the values reflect what would be done if the service were invoked again with RevalueAction set to R. | |
TotalRequestedOrScheduledMinutes | Double | If an initial allocation is specified in the input, this will be the total number of minutes that were requested or booked (depending on Mode) for the role. |
Response Usage Example(s)
PwsSaveProjectRole - Common Errors and Warnings
- For all errors and warnings please refer to the Complete List of Errors and Warnings
ErrorNumber | ErrorCode | ErrorText |
---|---|---|
14009 | RoleResourceMayNotBeSpecifiedWhenClearFlagSet | Resource may not be specified when resouce clear flag is set. |
14010 | RoleCostCenterMayNotBeSpecifiedWhenClearFlagSet | Cost center may not be specified when cost center clear flag is set. |
14011 | RoleLocationMayNotBeSpecifiedWhenClearFlagSet | Location may not be specified when location clear flag is set. |
14012 | RoleTitleMayNotBeSpecifiedWhenClearFlagSet | Title may not be specified when title clear flag is set. |
14013 | RoleKeywordsMayNotBeSpecifiedWhenClearFlagSet | Keywords may not be specified when keywords clear flag is set. |
14014 | ShareCostCenterMayNotBeSpecifiedWhenClearFlagSet | Share cost center may not be specified when share cost center clear flag is set. |
14015 | BaseRatesOnTitleMayNotBeSpecifiedWhenClearFlagSet | Base rates on title may not be specified when base rates on title clear flag is set. |
14016 | RoleStartDateMayNotBeSpecifiedWhenClearFlagSet | Role start date may not be specified when role start date clear flag is set. |
14017 | RoleEndDateMayNotBeSpecifiedWhenClearFlagSet | Role end date may not be specified when role end date clear flag is set. |
14018 | RoleDescriptionMayNotBeSpecifiedWhenClearFlagSet | Role description may not be set when role description clear flag is set. |
14025 | RdcTransferRateIncomplete | RDC transfer hourly rate specified without RDC transfer currency, or vice versa. |
50021 | RefStructureMismatch | Resource (PwsResourceRef) contains mismatched elements. |
50024 | EntityNotFound | Entity PwsProjectRef was not found. |
54199 | RdcTransferDataIncomplete | RDC transfer hourly rate specified without RDC transfer currency, or vice versa. |
54204 | NoPermissionToChangeRdcTransferRate | You do not have permission to change the RDC transfer rate. |
54583 | InvalidValueForMode | The value specified for mode is invalid. Valid values are R for Request, A for Allocate and E for Effective (for retrieval operations only). |
54733 | NoPermissionToCreateBookedRole | You do not have appropriate permission to create this booked role. |
54738 | ShareCostCenterInactive | The specified share cost center is inactive. |
54740 | InvalidResourceOrCriteriaOnInsert | Either a resource or a valid set of criteria are required to create a role. |
54741 | RoleNameNotSpecified | Role name is required for new roles. |
54743 | RoleNameAlreadyInUse | Specified role name is already in use. |
54750 | CannotUpdateDeletedProjectRole | This project role is deleted and cannot be updated. |
54753 | CannotMoveRoleToDifferentProject | Existing roles may not be moved to a different project. |
54776 | MissingPreferredAllocatedCostCenter | Missing preferred or allocated cost center. |
54777 | MissingPreferredAllocatedLocation | Missing preferred or allocated location. |
54875 | MissingValueForCostCenterOrLocationAnyFlags | Resource type, cost center and location any flags are required for new roles. |
55003 | NoPermissionToChangeRatesOrRdcExceptions | You do not have permission to change rates or RDC exceptions. |
55227 | ShareInfoIgnoredNoPermission | WARNING: You do not have permission to share scheduling. Specified share information was ignored |
55228 | TitleOverideIgnoredNoPermission | WARNING: You do not have permission to set billing title override. Specified override was ignored |
55229 | RevenueTransferRateIgnoredNoPermission | WARNING: You do not have permission to set revenue transfer hourly rate. Specified rate was ignored |
55230 | RdcTransferRateIgnoredNoPermission | WARNING: You do not have permission to set RDC transfer hourly rate. Specified rate was ignored |
57535 | TitleNotFound | The specified title does not exist. |