Zoeken naar beschikbaarheid van resources en boekingen maken voor vereistegroepen

Gebruik de API voor Zoeken naar beschikbaarheid van resources voor vereistegroep en de API voor Boekingen voor vereistegroepen maken om de resources te boeken die voldoen aan de behoeften die u in uw vereistegroepen identificeert.

U geeft de details van een vereistegroep door in uw API-aanroepen en haalt een lijst op met beschikbare resources en hun open tijdvakken. Deze lijst is handig voor scenario's voor zelfplanning, waarbij een gebruiker de beschikbaarheid van resources wil bekijken, of voor scenario's voor portalplanning waarbij een klant de beschikbaarheid van resources vanaf een website of app wil bekijken.

Op het moment van schrijven is v1 de meest recente versie van msdyn_SearchResourceAvailabilityForRequirementGroup en worden web-API-aanroepen ondersteund.

API voor Zoeken naar beschikbaarheid van resources voor vereistegroep

Gebruik de volgende invoer- en uitvoerparameters voor de API voor Zoeken naar beschikbaarheid van resources voor vereistegroep (msdyn_SearchResourceAvailabilityForRequirementGroup).

Parameters

Naam Type Vereist Beschrijving
Versie Tekenreeks Ja Het versienummer van de API. Het versienummer identificeert de versie van de API die moet worden aangeroepen. Het versienummer is een semantisch versienummer met de indeling major.minor.patch. De aanvraag hoeft niet het volledige versienummer te bevatten.
RequirementGroup Ja Een entiteitsverwijzing naar de entiteit van de vereistegroep.
RequirementSpecification Integer Nee Als deze parameter niet is opgegeven, wordt standaard de duur van de beoogde vereistegroep gehanteerd.
Instellingen Entity<InputSettings> Nee Stelt de instellingen voor de aanvraag in.

Invoer

Naam Type Vereist Beschrijving
ConsiderSlotsWithLessThanRequiredDuration Booleaans Nee Geeft aan of een tijdvak met minder dan de vereiste resterende duur moet worden overwogen bij het berekenen van mogelijke tijdvakken. Dit is standaard onwaar.
ConsiderSlotsWithOverlappingBooking Booleaans Nee Geeft aan of tijdsleuven met overlappende boekingen moeten worden overwogen bij het berekenen van potentiële tijdvakken. Dit is standaard onwaar.
ConsiderSlotsWithProposedBooking Booleaans Nee Geeft aan of er rekening moet worden gehouden met tijdvakken met voorgestelde boekingen bij het berekenen van mogelijke tijdvakken. Dit is standaard onwaar.
MaxResourceTravelRadius Afstand Nee Specificeert de maximale reisradius voor resources bij het berekenen van beschikbare tijdvakken.
SortOrder Integer Nee Specificeert de volgorde van de vereistegroep voor de respons.
PageSize Integer Nee Het aantal items dat op een pagina wordt geretourneerd. De standaardwaarde is 20.
PagingCookie Tekenreeks Nee Pagineringscookie wordt opgehaald uit vorig zoekresultaat.
OrganizationUnits Lijst<Guid> Nee Een verzameling van organisatie-eenheids-id's. Een gekwalificeerde resource moet lid zijn van een van de opgegeven organisatie-eenheden.
MustChooseFromResources Lijst<Guid> Nee Evalueer en selecteer resultaten van bronnen in deze lijst.
RequiredResources Lijst<Guid> Nee Evalueer alle resources, filter de resultaten op basis van deze lijst. Gebruik in plaats daarvan MustChooseFromResources voor betere prestaties.
IgnoreTimeSlots Booleaans Nee Geeft aan of de geretourneerde tijdvakken moeten worden genegeerd. Als dit waar is, is de lijst met geretourneerde tijdsloten leeg. Dit is standaard onwaar.
ConsiderAppointments Booleaans Nee Stel deze optie in op Waar zodat de API voor het zoeken naar beschikbaarheid van resources bestaande Dataverse-afspraken als boekingen voor de resource beschouwt, op voorwaarde dat de instellingen voor de organisatie en het resourceniveau zijn ingesteld. Afspraken met de status Bezet of Voltooid worden beschouwd als niet-beschikbaar voor planningsactiviteiten.

Uitvoer

Retouren Name(Type) Beschrijving
TimeSlots (Lijst<OutputTimeSlot>) Starttijd (DateTime) De begintijd.
Eindtijd (DateTime) De eindtijd.
Aankomsttijd (DateTime) De aankomsttijd.
Travel(OutputTimeSlotTravel)

OutputTimeSlotTravel
  • Afstand (Double)
  • Reistijd (dubbel)
  • DistanceFromStartLocation (Dubbel)
  • TravelTimeToEndLocation (Dubbel)
De reisinformatie voor het tijdvak. Is alleen aanwezig als de resourcevereiste waarden voor breedtegraad en lengtegraad bevat.
Inspanning (dubbel) De inspanning/capaciteit.
IsDuplicate (Booleaans) Een booleaanse waarde die aangeeft of het tijdvak een duplicaat is.
Resource(OutputResource)

OutputResource
  • Bron (BookableResource)
  • TotalAvailableTime (Dubbel)
De Resource-entiteit zoals in dit artikel wordt uitgelegd.
Location(OutputTimeSlotLocation)

OutputTimeSlotLocation:
  • WorkLocation (enum):
    • Op locatie (0)
    • Faciliteit (1)
    • Locatieagnostisch (2)

  • LocationSourceSlot (enum):
    • Algemeen (1)
    • Aangepaste GPS-entiteit (2)
    • Mobiele audit (3)
De entiteit bevat details over de locatie van een tijdvak. Zie TimeSlotLocation in dit artikel voor meer informatie.
TimeGroup(TimeSlotTimeGroup)

OutputTimeSlotTimeGroup:
  • TimeGroupId (guitte)
  • TimeGroupDetail (EntityReference)
  • TimeGroupDetailStartTime (DateTime)
  • TimeGroupDetailEndTime (DateTime)
De entiteit bevat details over een tijdgroep. Raadpleeg Verwijzen naar TimeSlotTimeGroup in dit artikel voor meer informatie.
Beschikbare intervallen (List<<Guide>OutputTimeSlot>) Een verzameling beschikbare intervallen.
Resources (Lijst<OutputResource>) Bron (EntityReference) Een entiteitsverwijzing naar de boekbare resource.
BusinessUnit (EntityReference) Een entiteitsverwijzing naar de boekbare resourcegroep.
Organisatorische eenheid (EntityReference) Een entiteitsverwijzing naar de organisatie-eenheid.
ResourceType (Int) Het type van de resource. Verwijs naar het kenmerk resourcetype van de entiteit BookableResource voor mogelijke waarden.
PoolId (Gids) De id van de pool waarvan de resource lid is gedurende het tijdvak.
Bemanningsid (leidraad) De id van het team waarvan de resource lid is gedurende het tijdvak.
E-mail (tekenreeks) Het e-mailadres van de resource.
Telefoon (String) Het telefoonnummer van de resource.
ImagePath (tekenreeks) Het pad naar de afbeelding van de resource.
Vereisten (Lijst<OutputRequirements>) Vereiste (EntityReference) Een entiteitsverwijzing naar de resourcevereisterecord.
ConstraintBag (touwtje) Vereistebeperking in ufx-verzameling (intern)
Bronnen (List<<EntityReference>EntityReference>) Lijst met entiteitsverwijzingen van de resource die beschikbaar is voor de vereisten.
ProposalResourceAssignmentSets (Lijst<OutputProposalResourceAssignmentSet>) IntervalStart (Datum/tijd) Begintijd voor elke voorgestelde resourcetoewijzingsset.
ProposalResourceAssignments (Lijst<OutputProposalResourceAssignments>

OutputProposalResourceAssignments:
  • RequirementId (guid)
  • ResourceId (guid)
Lijst met resources die zijn toegewezen aan Vereiste.
PagingInfos (OutputPagingInfo) MeerResultaten (Booleaans) Of er meer resultaten zijn.
PagingCookie (tekenreeks) Pagineringscookie die kan worden gebruikt in de toekomstige zoekopdracht.

Voorbeeld van payload

{
  "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
}

Voorbeeldrespons

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

API voor Boekingen voor vereistegroepen maken

Gebruik de volgende invoer- en uitvoerparameters voor de API voor Boekingen voor vereistegroepen maken (msdyn_CreateRequirementGroupBookings).

Parameters

Naam Type Vereist Beschrijving
Versie Tekenreeks Ja Het versienummer van de API. Het versienummer identificeert de versie van de API die moet worden aangeroepen. Het versienummer is een semantisch versienummer met de indeling major.minor.patch. De aanvraag hoeft niet het volledige versienummer te bevatten.
RequirementGroup EntityReference Ja Een entiteitsverwijzing naar de vereistegroep-entiteit is meestal een GUID, zoals weergegeven in het volgende voorbeeld.
Begin Datum en tijd Ja Begintijd van het tijdvak.
Duration Integer Ja De duur van de boeking die gemaakt moet worden.
ResourceAssignments EntityCollection Ja Het is een entiteitsverzameling van de te maken resourcetoewijzingen voor de boekingen die gemaakt moeten worden. Bekijk de tabel met resourcetoewijzingsentiteiten voor meer informatie

Resourcetoewijzingen

Naam Type Vereist Beschrijving
RequirementId GUID Ja De resourcevereiste-id van de vereiste waarvoor de boekingsrecord moet worden gemaakt.
ResourceId GUID Ja De id van de boekbare resource waarvoor u de boeking wilt maken.
BookingStatusId GUID Ja De status-id van de boeking die gemaakt moet worden.
Effort Integer Nee De capaciteit van de boekbare resource die deze boeking verbruikt.
TravelTime Integer Nee De reistijd in minuten.

Uitvoer

Retourneert HandlerExecuted die van het type booleaans is.