Wyszukiwanie dostępności zasobów i tworzenie rezerwacji dla grup wymagań

Użyj interfejsu API Wyszukiwanie dostępności zasobów dla grupy wymagań i Tworzenie rezerwacje dla grupy wymagań, aby zarezerwować zasoby zaspokajające potrzeby określone w grupach wymagań.

Użytkownik przekazuje szczegółowe informacje o grupie wymagań w wywołaniach interfejsu API i uzyskujesz listę dostępnych zasobów oraz ich otwarte przedziały czasu.  Jest to przydatne w przypadku scenariuszy samoplanowania, gdzie użytkownik chce wyświetlić dostępność zasobów, lub dla scenariuszy planowania portalu, w których klient chce wyświetlić dostępność zasobów z witryny sieci Web lub aplikacji.

W czasie pisania wersja v1 jest najnowszą wersją msdyn_SearchResourceAvailabilityForRequirementGroup i obsługuje wywołania interfejsów API sieci web.

API Wyszukaj dostępność zasobów dla grupy wymagań

Użyj poniższych parametrów wejściowych i wyjściowych dla API Wyszukaj dostępność zasobów dla grupy wymagań (msdyn_SearchResourceAvailabilityForRequirementGroup).

Parametry

Nazwa Typ Wymagany Opis
Wersja Ciąg Brak Numer wersji interfejsu API identyfikuje wersję interfejsu API, która powinna być wywoływana. Jest to zgodne z formatem major.minor.patch:

  • Jeśli nie ma dostępnej wersji, używa się najnowszej (zalecanej)
  • Jeśli jest podana tylko wersja główna, wywoływana jest najwyższa wersja pomocnicza i poprawka dostępna dla tej wersji głównej.
  • Jeśli jest określona wersja główna i pomocnicza, wywoływana jest najwyższa dostępna wersja poprawka.
  • Jeśli wymienione są wszystkie trzy części wersji, będzie wywoływana dokładna wersja określonego interfejsu API.
  • RequirementGroup Tak Odwołanie encji do encji grupy wymagań.
    RequirementSpecification Integer Brak W przypadku pozostawienia wartości null domyślnie respektuje czas trwania docelowej grupy wymagań.
    Ustawienia Entity<InputSettings> Brak Ustawia ustawienia dla żądania.

    Dane wejściowe

    Nazwa Typ Wymagany Opis
    ConsiderSlotsWithLessThanRequiredDuration logiczny Brak Określa, czy podczas obliczania potencjalnych slotów czasu należy uwzględnić slot czasu o mniejszym niż wymagany pozostałym czasie trwania. Domyślne ustawienie to Fałsz.
    ConsiderSlotsWithOverlappingBooking logiczny Brak Określa, czy podczas obliczania potencjalnych przedziałów czasu mają być uwzględniane przedziały czasu z nakładającymi się rezerwacjami. Domyślne ustawienie to Fałsz.
    ConsiderSlotsWithProposedBooking logiczny Brak Określa, czy podczas obliczania potencjalnych slotów czasu należy uwzględnić sloty czasu z proponowanymi rezerwacjami. Domyślne ustawienie to Fałsz.
    MaxResourceTravelRadius Odległość Brak Określa maksymalny promień podróży dla zasobów podczas obliczania dostępnych slotów czasu.
    SortOrder Integer Brak Określa kolejność grupy wymagań dla odpowiedzi.
    PageSize Integer Brak Liczba zwracanych elementów na stronie. Domyślnie jest to 20.
    PagingCookie Ciąg Brak Plik cookie stronicowania pobrany z poprzedniego wyniku wyszukiwania.
    OrganizationUnits Identyfikator GUID listy<> Brak Kolekcja identyfikatorów jednostek organizacyjnych. Zasób zakwalifikowany musi być członkiem jednej z określonych jednostek organizacyjnych.
    MustChooseFromResources Identyfikator GUID listy<> Brak Ocenianie i wybieranie wyników z zasobów z tej listy.
    RequiredResources Identyfikator GUID listy<> Brak Ocenianie wszystkich zasobów, filtrowanie wyników na podstawie tej listy. Ogólnie w celu uzyskania lepszej wydajności należy użyć usługi MustChooseFromResources.
    IgnoreTimeSlots logiczny Brak Określa, czy zwracane sloty czasu powinny być ignorowane. W przypadku wartości Prawda lista zwróconych przedziałów czasu jest pusta. Domyślne ustawienie to Fałsz.
    ConsiderAppointments logiczny Brak Ustawienie wartości Prawda dla interfejsu API wyszukiwania dostępności zasobu w celu uwzględniania istniejących terminów Dataverse jako rezerwacji zasobu, pod warunkiem, że ustawiono ustawienia na poziomie organizacji i zasobu. Terminy ze stanami Zajęty i Zakończony będą uważane za niedostępne przez operacje planowania.

    Dane wyjściowe

    Powroty Name(Type) Opis
    Przedziały czasowe (lista<OutputTimeSlot>) StartTime (DateTime) Godzina rozpoczęcia.
    EndTime (DateTime) Godzina zakończenia.
    Godzina przyjazdu (data/godzina) Godzina przyjazdu.
    Travel(OutputTimeSlotTravel)

    OutputTimeSlotTravel
    • Odległość (dwukrotnie)
    • TravelTime (dwukrotnie)
    • DistanceFromStartLocation (dwukrotnie)
    • TravelTimeToEndLocation (dwukrotnie)
    Informacje o czasie podróży. Tylko wtedy, gdy wymaganie zasobu zawiera wartości szerokości i długości geograficznej.
    Nakład pracy (Double) Nakład pracy/wydajność.
    IsDuplicate (wartość logiczna) Wartość logiczna wskazująca, czy dany przedział czasu jest duplikatem.
    Resource(OutputResource)

    OutputResource
    • Zasób (BookableResource)
    • TotalAvailableTime (dwukrotnie)
    Encja Zasób, jak wyjaśniono w tym artykule.
    Location(OutputTimeSlotLocation)

    OutputTimeSlotLocation:
    • WorkLocation (wyliczenie):
      • Na miejscu (0)
      • Obiekt (1)
      • Niezależne od lokalizacji (2)

    • LocationSourceSlot (wyliczenie):
      • Typowe (1)
      • Niestandardowa encja GPS (2)
      • Inspekcja mobilna (3)
    Encja zawiera szczegółowe informacje o lokalizacji przedziału czasu. Aby uzyskać więcej informacji, zobacz TimeSlotLocation w tym artykule.
    TimeGroup(TimeSlotTimeGroup)

    OutputTimeSlotTimeGroup:
    • Identyfikator grupy czasu (identyfikator GUID)
    • TimeGroupDetail (EntityReference)
    • TimeGroupSzczegółPoczątekCzas (DataCzas)
    • TimeGroupDetailEndTime (DateTime)
    Encja zawiera szczegółowe informacje o grupie czasowej. Aby uzyskać więcej informacji, zapoznaj się z parametrem TimeSlotTimeGroup w tym artykule.
    DostępneInterwały (List<<Guide>OutputTimeSlot>) Zbiór dostępnych interwałów.
    Zasoby (lista<OutputResource>) Zasób (EntityReference) Odwołanie encji dla zasobu, który można zarezerwować.
    Jednostka biznesowa (EntityReference) Odwołanie encji do grupy zasobów, którą można zarezerwować.
    Jednostka organizacyjna (EntityReference) Odwołanie encji do jednostki organizacyjnej.
    ResourceType (Int) Typ zasobu. W celu uzyskania możliwych wartości należy zapoznać się z atrybutem resourcetype encji BookableResource.
    Identyfikator puli (identyfikator GUID) Identyfikator puli, której członkiem jest dany zasób na czas trwania przedziału czasu.
    Identyfikator załogi (Guid) Identyfikator załoga, której członkiem jest dany zasób na czas trwania przedziału czasu.
    Adres e-mail (ciąg) Adres e-mail zasobu.
    Telefon (String) Numer telefonu zasobu.
    ImagePath (ciąg) Ścieżka do obrazu zasobu.
    Wymagania (List<OutputRequirements>) Wymaganie (EntityReference) Odwołanie encji do rekordu Wymaganie zasobu.
    ConstraintBag (Ciąg) Ograniczenie wymagania w torbie ufx(internal)
    Zasoby (List<<EntityReference>EntityReference>) Lista odwołań encji dla zasobu, który jest dostępny dla wymagań.
    ProposalResourceAssignmentSets (Lista<OutputProposalResourceAssignmentSet>) IntervalStart (DateTime) Godzina rozpoczęcia dla każdego zestawu przydziału zasobów dla propozycji.
    ProposalResourceAssignments (Lista<OutputProposalResourceAssignments>

    OutputProposalResourceAssignments:
    • RequirementId (Guid)
    • Identyfikator zasobu (identyfikator GUID)
    Lista zasobów przypisanych do Wymagania.
    PagingInfos (OutputTopingInfo) MoreResults (wartość logiczna) Czy istnieje więcej wyników.
    PagingCookie (ciąg) Plik cookie dotyczący stronicowania, który może być używany podczas przyszłych wyszukiwań.

    Przykładowy ładunek

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

    Przykładowa odpowiedź

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

    API Utwórz rezerwacje grupy wymagań

    Użyj poniższych parametrów wejściowych i wyjściowych dla API Utwórz rezerwacje grupy wymagań (msdyn_CreateRequirementGroupBookings).

    Parametry

    Nazwa Typ Wymagany Opis
    Wersja Ciąg Tak Numer wersji interfejsu API. Numer wersji identyfikuje wersję interfejsu API, który ma zostać wywołany. Numer wersji jest numerem wersji semantycznej w formacie główna.dodatkowa.poprawka. Żądanie nie musi zawierać pełnego numeru wersji.
    RequirementGroup EntityReference Tak Odwołanie encji do encji Grupa wymagań, zazwyczaj identyfikator GUID, jak to przedstawiono w poniższym przykładzie.
    Zostanie uruchomiony DateTime Tak Godzina rozpoczęcia Przedziału czasu.
    Duration Integer Tak Czas trwania tworzenia rezerwacji.
    ResourceAssignments EntityCollection Tak Jest to kolekcja encji Przypisania zasobów, które mają zostać utworzone dla tworzonych rezerwacji. Aby uzyskać więcej szczegółowych informacji spójrz na tabelę encji Przypisania zasobów

    Przypisania zasobów

    Nazwa Typ Wymagany Opis
    RequirementId Identyfikator GUID Tak Identyfikator wymagania zasobu dotyczący Wymagania, dla którego ma zostać utworzony rekord rezerwacji.
    ResourceId Identyfikator GUID Tak Identyfikator zasobu możliwego do zarezerwowania, dla którego ma zostać utworzona rezerwacja.
    BookingStatusId Identyfikator GUID Tak Identyfikator stanu rezerwacji dla rezerwacji, która ma zostać utworzona.
    Nakład pracy Integer Brak Dyspozycyjność zasobu możliwego do zarezerwowania, która jest zużywana przez tę rezerwację.
    TravelTime Integer Brak Czas podróży w minutach.

    Dane wyjściowe

    Zwraca wartość logiczną HandlerExecuted.