Jagamisviis:


Puhkusetaotluse edastamine töövoogu

Rakendub nendele Dynamics 365 rakendustele:
Human Resources

Rakenduses Microsoft Dynamics 365 Human Resources saate kasutada rakenduse programmeerimisliidest (API) MyLeaveRequests submit(), et esitada töövoole puhkusetaotlusi. Seda API-d pakutakse OData üksuse MyLeaveRequests tegevusena.

Eeltingimused

Puhkusetaotlus peab olema andmebaasi salvestatud ja üksuse MyLeaveRequests kaudu kättesaadav.

Õigused

Selle API kutsumiseks on nõutav üks järgmistest lubadest. Lisateavet õiguste ja nende valiku kohta vt autentimisest.

Loa tüüp Load (kõige vähem privilegeeritust kõige rohkem privilegeerituni)
Delegeeritud (töö- või koolikonto) user_impersonation

HTTPS-i taotlus

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

Taotlus vastab OData standarditele. Parameetrid {requestId}, {leaveType}, {leaveDate} ja {dataArea} viitavad väljadele, millest koosneb üksuse MyLeaveRequests loomulik liitvõti.

Paberraha

Kui üksuse MyLeaveRequests väljad viitavad puhkusetaotluse üksikule reale, siis esitamise API kutsumine esitab töövoole kogu puhkusetaotluse (kõik read).

Päringu päised

Päis Value
Autoriseerimine Kandja {token} (nõutav)
Sisu tüüp application/json

Taotluse kehatekst

Ärge esitage selle meetodi jaoks taotluse kehateksti.

Vastus

Edukas vastus on alati 204 sisuta vastus.

Volitamata helistajad saavad 401 Volitamata või 403 Keelatud vastus.

Kui esitamine ei õnnestu (nt kinnitamise tõttu), on vastus 500 Serveri tõrge ja vastus hõlmab täiendavate üksikasjadega JSON-objekti.

Näide

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()"
    }
  }
}

Kinnitamine ja veateated

API esitamise kutsumise osana teostab rakendus Human Resources enne esitamist äriloogika kinnitamist, mis tagab, et puhkusetaotlus on esitamiseks kehtivas olekus. Võimalikud tõrketeated, mille võite saada vastusena, kui kinnitused siin ei õnnestu, on järgmised.

  • Taotlus langetaks saldo {LeaveTypeId} alla lubatud minimaalset saldot {date}.
  • Lõpetamiste olekus ei saa väljaminev aega esitada.
  • Taotlust ei saa esitada ega salvestada, kuna muudatusi pole tehtud. Lisage või värskendage summat või puhkuse tüüpi ja proovige uuesti.
  • Sisestatud vaba aja taotlus sisaldab olemasolevate ootel taotluste hulgas ühte või mitut päeva, mis on sama kuupäevaga või puhkuse tüübiga. Olemasoleva taotluse muudatuste miseks tagasikutsumine
  • Põhjuse kood '{ReasonCodeId}' ei kehti taotluses olevatele puhkuse tüüpidele.
  • Puhkuse tüüp {LeaveTypeId} nõuab põhjuse koodi. Valige sobiv tüüp ja põhjuse kood.
  • Eemaldaja esitamine ei olnud edukas. Vaba aeg on salvestatud taotluse mustandina.

Vt ka