Del via


Sende en orlovsanmodning til arbejdsproces

Gælder for disse Dynamics 365-apps:
Human Resources

I Microsoft Dynamics 365 Human Resources kan du bruge MyLeaveRequests submit() Application Programming Interface (API) til at sende en orlovsanmodning til arbejdsgangen. Denne API vises som en handling i MyLeaveRequests OData-enheden.

Forudsætninger

Orlovsanmodningen skal gemmes i databasen og skal kunne hentes via MyLeaveRequests-enheden.

Tilladelser

En af følgende tilladelser kræves for at kalde denne API. Du kan finde flere oplysninger om tilladelser, og hvordan du vælger dem, i Godkendelse.

Tilladelsestype Tilladelser (fra færrest til flest rettigheder)
Delegeret (arbejds- eller skolekonto) user_impersonation

HTTPS-anmodning

POST https://{cluster}.hr.talent.dynamics.com/namespaces/{namespace_guid}/data/MyLeaveRequests(RequestId='{requestId}', LeaveType='{leaveType}', LeaveDate={leaveDate}, dataAreaId={dataArea})/Microsoft.Dynamics.DataEntities.submit?cross-company=true

Anmodningen er i overensstemmelse med OData-standarder. Parametrene {requestId}, {leaveType}, {leaveDate} og {dataArea} refererer til de felter, der udgør den sammensatte naturlige nøgle for MyLeaveRequests-enheden.

Bemærk!

Mens felterne for MyLeaveRequests-enheden refererer til en enkelt linje i orlovsanmodningen, vil kald af submit-API'en sende hele orlovsanmodningen (alle linjer) til arbejdsgangen.

Overskrifter til anmodning

Header Value
Godkendelse Bærer {token} (obligatorisk)
Indholdstype program/json

Anmodningstekst

Du skal ikke angive en anmodningstekst for denne metode.

Svar

Et vellykket svar er altid svaret 204 intet indhold.

Uautoriserede opkald modtager en 401 uautoriseret eller en 403 forbudt svar.

Hvis indsendelsen mislykkes (f.eks. på grund af validering), er svar en 500-serverfejl, og den svar brødtekst medtager et JSON-objekt med yderligere oplysninger.

Eksempel

POST https://aos-rts-sf-550e5c091f6-prod-westus2.hr.talent.dynamics.com/namespaces/b2eb8003-334f-4a84-ab63-edbe23569090/data/MyLeaveRequests(RequestId='USMF-000065', LeaveType='Vacation', LeaveDate=2019-10-04T12:00:00Z, dataAreaId='USMF')/Microsoft.Dynamics.DataEntities.submit
{
  "error": {
    "code": "",
    "message": "An error has occurred.",
    "innererror": {
      "message": "Exception occurred while executing action submit on Entity MyLeaveRequest: The request would put the 'Vacation' balance below the allowed minimum balance on 9/10/2019.",
      "type": "System.InvalidOperationException",
      "stacktrace": "   at Microsoft.Dynamics.Platform.Integration.Services.OData.Action.ActionInvokable.Invoke()   at Microsoft.Dynamics.Platform.Integration.Services.OData.Update.UpdateProcessor.ActionInvocation(ChangeOperationContext context, ActionInvokable action)   at Microsoft.Dynamics.Platform.Integration.Services.OData.Update.UpdateManager.<>c__DisplayClass13_0.<ScheduleInvokable>b__0(ChangeOperationContext context)   at Microsoft.Dynamics.Platform.Integration.Services.OData.Update.ChangeInfo.ExecuteActionsInCompanyContext(IEnumerable`1 actionList, ChangeOperationContext operationContext)\r\n   at Microsoft.Dynamics.Platform.Integration.Services.OData.Update.ChangeInfo.ExecuteActions(ChangeOperationContext context)   at Microsoft.Dynamics.Platform.Integration.Services.OData.Update.UpdateManager.SaveChanges()   at Microsoft.Dynamics.Platform.Integration.Services.OData.AxODataDelegatingHandler.<SaveChangesAsync>d__3.MoveNext()"
    }
  }
}

Validering og fejlmeddelelser

Som led i kaldet til submit-API'en udfører Human Resources validering af forretningslogik før afsendelse, hvilket sikrer, at orlovsanmodningen er i en gyldig tilstand for afsendelse. De mulige fejlmeddelelser, du kan modtage i svaret, hvis valideringer ikke lykkes, er:

  • Anmodningen ville bringe saldoen '{LeaveTypeId}' ned under den tilladte minimumsaldo på {date}.
  • Anmodning om fravær i fuldført tilstand kan ikke sendes.
  • Anmodningen kan ikke sendes eller gemmes, da der ikke er foretaget ændringer. Tilføj eller opdater beløbet eller orlovstypen, og prøv igen.
  • Den angivne anmodning om fridage indeholder en eller flere dage med samme dato og orlovstype som en eksisterende ventende anmodning. Husk den eksisterende anmodning om at foretage ændringer.
  • Årsagskoden '{ReasonCodeId}' kan ikke anvendes til nogen af orlovstyperne i anmodningen.
  • Orlovstypen '{LeaveTypeId}' kræver en årsagskode. Vælg den relevante type og årsagskode.
  • Fridagen blev ikke sendt. Anmodningen om fridage er gemt som en kladdeanmodning.

Se også