PwsSaveTimeCardsAndRto

Overview


This web service saves time cards and time off cards. It can create new cards or update existing cards. Depending on the AbortOnFailureFlag setting, the service will either fail completely if any card cannot be saved (AbortOnFailureFlag = 'true'), or it will save the cards it is able to save successfully, and skip the others (AbortOnFailureFlag = 'false'). In either case, the response will include details of any errors. 

Request Format


PwsSaveTimeCardsAndRto Request
  • PwsSaveTimeCardsAndRto
    • serviceRequest: PwsSaveTimeCardsAndRtoRq
      • RequestId: Int32
      • SessionTicket: String
      • AdministratorComments: String
      • CalculateApproverFlag: Boolean *** deprecated ***
      • CalculateRevalueValuesFlag: Boolean *** deprecated ***
      • InsertIfNotFoundOnUpdateFlag: Boolean
      • PreserveTimeCardStatusFlag: Boolean  *** deprecated ***
      • SaveTimeCards: PwsResourceTimeCard[]
      • SaveTimeOffCards: PwsResourceTimeOffCard[]
      • SendNotificationEmailFlag: Boolean
      • AbortOnFailureFlag: Boolean

Request Elements


Element

Data Type

Required?

Default

Description

Sample Data

RequestId

Int32



Click here for more information.

1

SessionTicket

String



Click here for more information.

AdASLLZalvehjm71D72agw==

AdministratorComments

String



Administrator comments for entering time on behalf of others.

Save Time Cards or Reported Time Off

CalculateApproverFlag

Boolean

*** deprecated ***


*** deprecated ***


CalculateRevalueValuesFlag

Boolean

*** deprecated ***


*** deprecated *** 


InsertIfNotFoundOnUpdateFlag

Boolean


false 

If set to 'true', if a card is encountered that attempt to update a time or time off card that does not exist, a new time or time off card wlil be inserted. Otherwise, this will trigger an error.

false 

PreserveTimeCardStatusFlag

Boolean

 *** deprecated ***


*** deprecated *** 


SaveTimeCards

PwsResourceTimecard[]



The details of the time cards to be saved.


SaveTimeOffCards

PwsResourceTimeOffCard[]



The details of the time off time cards to be saved.


SendNotificationEmailFlag

Boolean



If set to 'true', a notification email will be sent to the resource associated with the time card. This is applicable only when entering time on behalf of others.

false

AbortOnFailureFlag

Boolean



If set to 'true' a failure to save or update a time card or time off card, will prevent the saving of other changes.

true

Request Usage Example(s)


Example 01 - time card
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pws="http://projectorpsa.com/PwsProjectorServices/" xmlns:req="http://projectorpsa.com/DataContracts/Requests/" xmlns:tim="http://projectorpsa.com/DataContracts/Shared/TimeAndCost/" xmlns:com="http://projectorpsa.com/DataContracts/Shared/Common/">
   <soapenv:Header/>
   <soapenv:Body>
      <pws:PwsSaveTimeCardsAndRto>
         <pws:serviceRequest>
            <req:RequestId>1</req:RequestId>
            <req:SessionTicket>AdASLLZalvehjm71D72agw==</req:SessionTicket>
            <tim:AdministratorComments>Save Time Cards or Reported Time Off</tim:AdministratorComments>
            <tim:InsertIfNotFoundOnUpdateFlag>false</tim:InsertIfNotFoundOnUpdateFlag>
            <tim:SaveTimeCards>
               <tim:PwsResourceTimecard>
                  <tim:Description>Time Card Insert</tim:Description>
                  <tim:DescriptionClearFlag>false</tim:DescriptionClearFlag>
                  <tim:Status>Submitted</tim:Status>
                  <tim:WorkDate>2018-03-14T00:00:00.000Z</tim:WorkDate>
                  <tim:WorkMinutes>120</tim:WorkMinutes>
                  <tim:CardStatus>S</tim:CardStatus>
                  <tim:LocationClearFlag>false</tim:LocationClearFlag>
                  <tim:LocationIdentity>
                     <com:LocationName>USA</com:LocationName>
                  </tim:LocationIdentity>
                  <tim:ProjectIdentity>
                     <com:ProjectCode>P001396-001</com:ProjectCode>
                  </tim:ProjectIdentity>
                  <tim:ProjectRateTypeIdentity>
                     <com:ProjectRateTypeUid>1152921504607370468</com:ProjectRateTypeUid>
                  </tim:ProjectRateTypeIdentity>
                  <tim:ProjectTaskIdentity>
                     <com:ProjectTaskUid>1152921504608637344</com:ProjectTaskUid>
                  </tim:ProjectTaskIdentity>
                  <tim:RoleClearFlag>false</tim:RoleClearFlag>
                  <tim:RoleIdentity>
                     <com:ProjectRoleUid>1152921504609525049</com:ProjectRoleUid>
                  </tim:RoleIdentity>
                  <tim:Udf1>
                     <com:UdfName>TC-Jira</com:UdfName>
                     <com:RelationValue>
                        <com:CodeValue>SD-23</com:CodeValue>
                     </com:RelationValue>
                  </tim:Udf1>
                  <tim:Udf1ClearFlag>false</tim:Udf1ClearFlag>
                  <tim:Udf2ClearFlag>false</tim:Udf2ClearFlag>
                  <tim:ExternalGroupingIdentifier>1</tim:ExternalGroupingIdentifier>
                  <tim:ExternalGroupingIdentifierClearFlag>false</tim:ExternalGroupingIdentifierClearFlag>
                  <tim:ResourceIdentity>
                     <com:ResourceReferenceSystemId>E123</com:ResourceReferenceSystemId>
                  </tim:ResourceIdentity>
               </tim:PwsResourceTimecard>
            </tim:SaveTimeCards>
            <tim:SendNotificationEmailFlag>false</tim:SendNotificationEmailFlag>
            <tim:AbortOnFailureFlag>true</tim:AbortOnFailureFlag>
         </pws:serviceRequest>
      </pws:PwsSaveTimeCardsAndRto>
   </soapenv:Body>
</soapenv:Envelope>
Example 02 - time off card
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:pws="http://projectorpsa.com/PwsProjectorServices/" xmlns:req="http://projectorpsa.com/DataContracts/Requests/" xmlns:tim="http://projectorpsa.com/DataContracts/Shared/TimeAndCost/" xmlns:com="http://projectorpsa.com/DataContracts/Shared/Common/">
   <soapenv:Header/>
   <soapenv:Body>
      <pws:PwsSaveTimeCardsAndRto>
         <pws:serviceRequest>
            <req:RequestId>1</req:RequestId>
            <req:SessionTicket>AdASLLZalvehjm71D72agw==</req:SessionTicket>
            <tim:AdministratorComments>Save Time Cards or Reported Time Off</tim:AdministratorComments>
            <tim:InsertIfNotFoundOnUpdateFlag>false</tim:InsertIfNotFoundOnUpdateFlag>
            <tim:SaveTimeOffCards>
               <tim:PwsResourceTimeOffCard>
                  <com:TimecardType>T</com:TimecardType>
                  <tim:Description>Spring Vacation</tim:Description>
                  <tim:DescriptionClearFlag>false</tim:DescriptionClearFlag>
                  <tim:Status>Submitted</tim:Status>
                  <tim:WorkDate>2018-03-15T00:00:00.000Z</tim:WorkDate>
                  <tim:WorkMinutes>480</tim:WorkMinutes>
                  <tim:CardStatus>S</tim:CardStatus>
                  <tim:TimeOffReasonIdentity>
                     <com:TimeOffReasonName>Vacation</com:TimeOffReasonName>
                  </tim:TimeOffReasonIdentity>
                  <tim:ResourceIdentity>
                     <com:ResourceReferenceSystemId>E123</com:ResourceReferenceSystemId>
                  </tim:ResourceIdentity>
               </tim:PwsResourceTimeOffCard>
            </tim:SaveTimeOffCards>
            <tim:SendNotificationEmailFlag>false</tim:SendNotificationEmailFlag>
            <tim:AbortOnFailureFlag>true</tim:AbortOnFailureFlag>
         </pws:serviceRequest>
      </pws:PwsSaveTimeCardsAndRto>
   </soapenv:Body>
</soapenv:Envelope>

Response Format


PwsSaveTimeCardsAndRto 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-03-14T14:42:01.0557418Z

TimeOffCardResults

PwsSaveTimeOffCardItemResult[]

The results from saving (or attempting to save) time off cards. For failed saves, this includes details on the specific error.


TimecardResults

PwsSaveTimecardItemResult[]

The results from saving (or attempting to save) time cards. For failed saves, this includes details on the specific error.


Response Usage Example(s)


Example 01 - time card
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <PwsSaveTimeCardsAndRtoResponse xmlns="http://projectorpsa.com/PwsProjectorServices/">
         <PwsSaveTimeCardsAndRtoResult xmlns:a="http://projectorpsa.com/DataContracts/Shared/TimeAndCost/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <Messages xmlns="http://projectorpsa.com/CommonServices/" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
            <ResponseId xmlns="http://projectorpsa.com/CommonServices/">1</ResponseId>
            <Status xmlns="http://projectorpsa.com/CommonServices/">Ok</Status>
            <ServerTimestampUtc xmlns="http://projectorpsa.com/CommonServices/">2018-03-14T14:42:01.0557418Z</ServerTimestampUtc>
            <a:TimeOffCardResults/>
            <a:TimecardResults>
               <a:PwsSaveTimecardItemResult>
                  <a:ErrorDetail i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
                  <a:ReferenceId i:nil="true"/>
               </a:PwsSaveTimecardItemResult>
            </a:TimecardResults>
         </PwsSaveTimeCardsAndRtoResult>
      </PwsSaveTimeCardsAndRtoResponse>
   </s:Body>
</s:Envelope>
Example 02 - time off card
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
   <s:Body>
      <PwsSaveTimeCardsAndRtoResponse xmlns="http://projectorpsa.com/PwsProjectorServices/">
         <PwsSaveTimeCardsAndRtoResult xmlns:a="http://projectorpsa.com/DataContracts/Shared/TimeAndCost/" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <Messages xmlns="http://projectorpsa.com/CommonServices/" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
            <ResponseId xmlns="http://projectorpsa.com/CommonServices/">1</ResponseId>
            <Status xmlns="http://projectorpsa.com/CommonServices/">Ok</Status>
            <ServerTimestampUtc xmlns="http://projectorpsa.com/CommonServices/">2018-03-14T15:49:53.1049514Z</ServerTimestampUtc>
            <a:TimeOffCardResults>
               <a:PwsSaveTimeOffCardItemResult>
                  <a:ErrorDetail i:nil="true" xmlns:b="http://projectorpsa.com/DataContracts/Shared/Common/"/>
                  <a:ReferenceId i:nil="true"/>
               </a:PwsSaveTimeOffCardItemResult>
            </a:TimeOffCardResults>
            <a:TimecardResults/>
         </PwsSaveTimeCardsAndRtoResult>
      </PwsSaveTimeCardsAndRtoResponse>
   </s:Body>
</s:Envelope>

PwsSaveTimeCardsAndRto - Common Errors and Warnings

ErrorNumber

ErrorCode

ErrorText

19093UnexpectedTimeCardTypeUnexpected value for TimeCardType. Valid values are T or R.
20001TimeCardStartDateRequiredThe range start date must be specified.
20002TimeCardEndDateRequiredThe range end date must be specified.
20003InvalidValueForTimeCardStartDateThe specified start date must be expressed as midnight UTC on the desired date.
20004InvalidValueForTimeCardEndDateThe specified end date must be expressed as midnight UTC on the desired date.
20028TimeCardErrorsOne or more time cards or time off cards could not be saved.
20033TimeCardIdentitiesRequiredOne or more time card identities must be specified.
20037TimeCardSplitPercentOutOfRangeThe specified split percentage is out of range. Please specify a value greater than 0% and less than 100%.
20050InvalidValueForTimeCardApprovalWorkflowStatusThe specified value for time card approval workflow status is invalid. Valid values are D for Draft, R for Rejected, S for Submitted, A for Approved, I for Invoiced (draft), B for Billed and M for Missing. Values of I, B and M are only valid when querying for existing data.
20051InvalidValueForTimeCardTypeThe specified value for time card type is invalid. Valid values are T for Time Card and R for Reported Time Off.
64161TimeCardResourceMismatchThe specified resource is not the same resource as is currently associated with the time card.
64182TimecardHasBeenChangedTime card has been changed by another user.
64220InvalidTimeCardA specified time card identity was incomplete. Each time card identity must specify either a time card id or time card uid.
64222SpecifiedTimeCardDoesNotExistThe specified time card does not exist.
64237UnexpectedErrorSavingTimeCardThere was an unexpected error while trying to save a time card.
64239TimeCardWorkDateRequiredWork date is required for new time cards.
64240InvalidValueForTimeCardWorkMinutesThe value specified for work minutes must be non-negative.
64244UnableToUpdateTimeCardThis time card could not be updated.
64294UnexpectedTimeCardUdfValueUnexpected UDF value provided (UDF metadata may have changed)
64295TimeCardWorkDateOutOfRangeSpecified work date outside of supported date range.
64299OneOrMoreTimeCardsNotFoundOne or more time cards does not exist.
64314CannotChangeStatusOfFroTimecardsCannot change the status of for reporting only time cards.
64318CannotChangeSubmittedTimecardsApClosedCannot save changes to submitted time card because the accounting period is closed for time.
64332TimeCardHasBeenDeletedReferenced time card is deleted.
64333TimeOffCardHasBeenDeletedReferenced time off card is deleted.
64334SaveCardTimeCardHasBeenDeletedReferenced time card is deleted.
64335NoPermissionToSaveTimeCardYou do not have permission to save time card.
64338SplitCardTimeCardHasBeenDeletedReferenced time card is deleted.
64340SubmitCardTimeCardHasBeenDeletedReferenced time card is deleted.