Søge efter ledige ressourcer og oprette reservationer for kravsgrupper

Brug Hent ressourcetilgængelighed for kravsgruppe-API og Opret kravsgruppereservationer-API til at reservere de ressourcer, der opfylder de behov, du har identificeret i kravsgrupperne.

Du kan overføre oplysningerne om en kravsgruppe i API-kald og hente en liste over tilgængelige ressourcer og deres ledige tidsrubrikker. Denne liste er nyttig i forbindelse med selvplanlægningsscenarier, hvor en bruger ønsker at se tilgængeligheden af ressourcer, eller for portalplanlægningsscenarier, hvor en kunde ønsker at se ressourcetilgængeligheden fra et websted eller en app.

På tidspunktet for skrivning er v1 den nyeste version af msdyn_SearchResourceAvailabilityForRequirementGroup og understøtter web-API-kald.

API'en Hent ressourcetilgængelighed for kravsgruppe

Brug følgende input- og outputparametre til API'en Hent ressourcetilgængelighed for kravsgruppe (msdyn_SearchResourceAvailabilityForRequirementGroup).

Parametre

Navn Type Krævet Beskrivelse
Version Streng Ja Versionsnummeret på API'en. Versionsnummeret identificerer den version af API'en, der skal kaldes. Versionsnummeret er et semantisk versionsnummer i formatet major.minor.patch. Anmodningen behøver ikke at indeholde det fulde versionsnummer.
RequirementGroup Ja En objektreference til objektet kravsgruppe.
RequirementSpecification Integer Nej Hvis den er angivet til null, respekteres som standard den målrettede kravsgruppes varighed.
Indstillinger Entity<InputSettings> Nej Angiver indstillingerne for anmodningen.

Input

Navn Type Krævet Beskrivelse
ConsiderSlotsWithLessThanRequiredDuration Boolean Nej Angiver, om en tidsrubrik med en varighed, der er mindre end den resterende krævede varighed, skal tages i betragtning ved beregning af potentielle tidsrubrikker. Den er som standard falsk.
ConsiderSlotsWithOverlappingBooking Boolean Nej Angiver, om en tidsrubrik med overlappende reservationer skal overvejes ved beregning af potentielle tidsrubrikker. Den er som standard falsk.
ConsiderSlotsWithProposedBooking Boolean Nej Angiver, om tidsrubrikker med de foreslåede reservationer skal tages i betragtning ved beregning af potentielle tidsrubrikker. Den er som standard falsk.
MaxResourceTravelRadius Afstand Nej Angiver den maksimale rejseradius for ressourcer ved beregning af ledige tidsrubrikker.
SortOrder Integer Nej Angiver kravsgrupperækkefølgen for svaret.
PageSize Integer Nej Antallet af elementer, der returneres på en side. Den er som standard 20.
PagingCookie Streng Nej Sidefordelingscookie hentet fra tidligere søgeresultat.
OrganizationUnits Liste<Guid> Nej En samling af organisationsenheds-id'er. En kvalificeret ressource skal være medlem af en af de angivne organisationsenheder.
MustChooseFromResources Liste<Guid> Nej Evaluer og vælg resultater fra ressourcer på denne liste.
RequiredResources Liste<Guid> Nej Evaluer alle ressourcer, og filtrer resultaterne på baggrund af denne liste. Generelt skal du bruge MustChooseFromResources i stedet for forbedret ydeevne.
IgnoreTimeSlots Boolean Nej Angiver, om det returnerede tidsrum skal ignoreres. Når den er sand, er listen over returnerede tidsrubrikker tom. Den er som standard falsk.
ConsiderAppointments Boolean Nej Angiv til sand for søgning i ressourcetilgængeligheds-API for at respektere eksisterende Dataverse-aftaler som reservationer på ressourcen, forudsat at indstillingerne på organisations- og ressourceniveau er angivet. Aftaler med statussen Optaget eller Fuldført betragtes som ikke tilgængelige for planlægningshandlinger.

Output

Returvarer Navn (Type) Beskrivelse
TimeSlots (Liste<OutputTimeSlot>) StartTid (DateTime) Starttidspunktet.
Sluttid (DateTime) Sluttidspunktet.
Ankomsttidspunkt (dato/klokkeslæt) Ankomsttidspunktet.
Travel(OutputTimeSlotTravel)

OutputTimeSlotTravel
  • Afstand (dobbelt)
  • Rejsetid (Dobbelt)
  • DistanceFromStartLocation (Dobbeltværelse)
  • TravelTimeToEndLocation (Dobbeltværelse)
Rejseoplysninger om tidsrubrik. Findes kun, hvis ressourcekravet indeholder værdier for breddegrad og længdegrad.
Indsats (dobbelt) Kapacitet i forhold til indsats.
IsDuplicate (boolesk) En boolesk værdi, der angiver, om tidsrubrikken er en dublet.
Resource(OutputResource)

OutputResource
  • Ressource (BookableResource)
  • TotalAvailableTime (Dobbelt)
Ressourceobjektet som forklaret i denne artikel.
Location(OutputTimeSlotLocation)

OutputTimeSlotLocation:
  • Arbejdssted (Enum):
    • På stedet (0)
    • Lokale (1)
    • Placeringsagnostik (2)

  • LocationSourceSlot (Enum):
    • Almindelig (1)
    • Brugerdefineret GPS-objekt (2)
    • Mobil overvågning (3)
Objektet indeholder detaljer om placeringen af en tidsrubrik. Se TimeSlotLocation i denne artikel for at få flere oplysninger.
TimeGroup(TimeSlotTimeGroup)

OutputTimeSlotTimeGroup:
  • TimeGroupId (GUID)
  • TimeGroupDetail (EntityReference)
  • TimeGroupDetailStartTime (DateTime)
  • TimeGroupDetailEndTime (DateTime)
Objektet indeholder detaljer om en tidsgruppe. Du kan finde flere oplysninger i TimeSlotTimeGroup i denne artikel.
TilgængeligeIntervaller (List<<Guide>OutputTimeSlot>) En samling tilgængelige intervaller.
Ressourcer (Liste<OutputRessource>) Ressource (EntityReference) En objektreference til den reserverbare ressource.
Forretningsenhed (EntityReference) En objektreference til den reserverbare ressourcegruppe.
OrganizationalUnit (EntityReference) En objektreference til afdelingen.
ResourceType (Int) Ressourcetypen. Se attributten resourcetype på objektet BookableResource for at få vist mulige værdier.
PoolId (Guid) Id'et for den pulje, som ressourcen er medlem af, under tidsrubrikkens varighed.
CrewId (Guid) Id'et for det mandskab, som ressourcen er medlem af, under tidsrubrikkens varighed.
E-mail (streng) Ressourcens mailadresse.
Telefon (streng) Ressourcens telefonnummer.
ImagePath (streng) Stien til ressourcens billede.
Krav (Vis<outputkrav>) Krav (EntityReference) En objektreference til posten Ressourcekrav.
ConstraintBag (streng) Kravsbegrænsning i ufx-pose (intern)
Ressourcer (List<<EntityReference>EntityReference>) Objektreferenceliste over ressourcer, der er tilgængelig for kravene.
ProposalResourceAssignmentSets (Liste<OutputProposalResourceAssignmentSet>) IntervalStart (DateTime) Starttidspunkt for hvert tildelingssæt af forslagsressource.
ProposalResourceAssignments (Liste<OutputProposalResourceAssignments>

OutputProposalResourceAssignments:
  • RequirementId (GUID)
  • ResourceId (GUID)
Liste over ressourcer, der er tildelt til Krav.
PagingInfos (OutputPagingInfo) MereResultater (boolesk) Om der er flere resultater eller ej.
PagingCookie (streng) Sideinddelingscookie, der kan bruges til fremtidig søgning.

Eksempel på nyttedata

{
  "RequestName": "msdyn_SearchResourceAvailabilityForRequirementGroup",
  "Parameters": [
    {
      "Key": "Version",
      "Value": "1"
    },
    {
      "Key": "RequirementGroup",
      "Value": {
        "Id": "6927721a-0137-42be-8092-26995625a9d9",
        "LogicalName": "msdyn_requirementgroup",
        "Name": null,
        "KeyAttributes": [],
        "RowVersion": null
      }
    }
  ],
  "RequestId": null
}

Eksempel på svar

{
  "ResponseName": "msdyn_SearchResourceAvailabilityForRequirementGroup",
  "Results": [
    {
      "Key": "TimeSlots",
      "Value": {....}
    },
    {
      "Key": "Requirements",
      "Value": {....}
    },
    {
      "Key": "ProposalResourceAssignmentSets",
      "Value": {....}
    },
    {
      "Key": "PagingInfos",
      "Value": {....}
    }]
}

API'en Opret kravsgruppereservationer

Brug følgende input- og outputparametre til API'en Opret kravsgruppereservationer (msdyn_CreateRequirementGroupBookings).

Parametre

Navn Type Krævet Beskrivelse
Version Streng Ja Versionsnummeret på API'en. Versionsnummeret identificerer den version af API'en, der skal kaldes. Versionsnummeret er et semantisk versionsnummer i formatet major.minor.patch. Anmodningen behøver ikke at indeholde det fulde versionsnummer.
RequirementGroup EntityReference Ja En objektreference til kravsgruppeobjektet, som regel et GUID, som vist i følgende eksempel.
Start Datetime Ja Starttidspunktet for tidsrubrikken.
Duration Integer Ja Varigheden af reservationen, der skal oprettes.
ResourceAssignments EntityCollection Ja Det er en objektsamling af de ressourcetildelinger, der skal foretages for at oprette reservationer. Se objekttabellen Ressourcetildelinger for at få flere oplysninger

Ressourcetildelinger

Navn Type Krævet Beskrivelse
RequirementId GUID Ja Ressourcekravets id for det krav, som reservationsposten skal oprettes for.
ResourceId GUID Ja Det reserverbare ressource-id for den ressource, du vil oprette reservationen for.
BookingStatusId GUID Ja Reservationsstatus-id'et for den reservation, der skal oprettes.
Indsats Integer Nej Kapaciteten af den reserverbare ressource, der forbruges af denne reservation.
TravelTime Integer Nej Rejsetiden i minutter.

Output

Returnerer HandlerExecuted som boolesk type.