要件グループのリソース空き時間検索 API と要件グループの予約の作成 API を使用して、要件グループで特定したニーズを満たすリソースを予約します。
- 要件グループのリソース空き時間検索 API は、要件グループを使用して検索すると、リソースの使用可能な時間帯を返します。
- 要件グループの予約の作成 API は、リソースの使用可能な時間帯を使用して、要件グループの予約レコードを生成します。
要件グループの詳細を API 呼び出しで渡し、使用可能なリソースとそれらのオープン時間帯のリストを取得します。 このリストは、ユーザーがリソースの空き状況を表示したいセルフ スケジューリング シナリオや、顧客が Web サイトやアプリからリソースの空き状況を表示したいポータル スケジューリング シナリオに役立ちます。
現時点では、v1 が msdyn_SearchResourceAvailabilityForRequirementGroup の最新バージョンで、Web API 呼び出しをサポートしています。
要件グループのリソース空き時間検索 API
要件グループのリソース空き時間検索 (msdyn_SearchResourceAvailabilityForRequirementGroup) API の場合、次の入力および出力パラメーターを使用します。
パラメーター
| 名前 | タイプ | 必須出席者 | 説明 |
|---|---|---|---|
| [バージョン] | String | あり | API のバージョン番号。 バージョン番号は、呼び出される API のバージョンを識別します。 バージョン番号は、major.minor.patch 形式のセマンティック バージョン番号です。 要求に完全なバージョン番号を含める必要はありません。 |
| RequirementGroup | あり | 要件グループ エンティティへのエンティティ参照。 | |
| RequirementSpecification | Integer | 無効 | null のままにすると、既定でターゲット要件グループの期間を考慮します。 |
| 設定 | Entity<InputSettings> |
無効 | リクエストの設定を設定します。 |
input
| 名前 | タイプ | 必須出席者 | 説明 |
|---|---|---|---|
| ConsiderSlotsWithLessThanRequiredDuration | ブール値 | 無効 | 潜在的なタイムスロットを計算するときに、必要な残りの期間より短いタイムスロットを考慮する必要があるかどうかを指定します。 これは既定で false です。 |
| ConsiderSlotsWithOverlappingBooking | ブール値 | 無効 | 潜在的な時間帯を計算するときに、予約が重複している時間帯を考慮するかどうかを指定します。 これは既定で false です。 |
| ConsiderSlotsWithProposedBooking | ブール値 | 無効 | 潜在的なタイムスロットを計算するときに、提案された予約のタイムスロットを考慮する必要があるかどうかを指定します。 これは既定で false です。 |
| MaxResourceTravelRadius | Distance | 無効 | 使用可能なタイムスロットを計算するときのリソースの最大移動半径を指定します。 |
| SortOrder | Integer | 無効 | 応答の要件グループの順序を指定します。 |
| PageSize | Integer | 無効 | ページで返されたアイテムの数。 既定では 20 です。 |
| PagingCookie | String | 無効 | 以前の検索結果から取得したページング Cookie。 |
| OrganizationUnits | リスト<ガイド> | 無効 | 組織単位 ID のコレクション。 資格要件を満たすリソースは、指定された組織単位のいずれかのメンバーである必要があります。 |
| MustChooseFromResources | リスト<ガイド> | 無効 | このリストのリソースから結果を評価して選択します。 |
| RequiredResources | リスト<ガイド> | 無効 | すべてのリソースを評価し、このリストに基づいて結果をフィルタリングします。 一般に、パフォーマンスを向上させるには、代わりに MustChooseFromResources を使用してください。 |
| IgnoreTimeSlots | ブール値 | 無効 | 返されたタイム スロットを無視するかどうかを指定します。 true の場合、返されるタイム スロットのリストは空になります。 これは既定で false です。 |
| ConsiderAppointments | ブール値 | 無効 | 組織とリソース レベル設定が設定されている場合、リソース可用性検索 API が既存の Dataverse 予定をリソースの予約として尊重するよう True に設定します。 対応中や完了済みの状態となっている予定は、スケジュール管理に対して利用できないものとみなされます。 |
出力
| 返品 | 名前(タイプ) | 説明 |
|---|---|---|
| タイムスロット (List<OutputTimeSlot>) | 開始時刻 (日時) | 開始時刻。 |
| 終了時刻 (日時) | 終了時刻です。 | |
| 到着時刻 (日時) | 到着時刻。 | |
| Travel(OutputTimeSlotTravel) OutputTimeSlotTravel
|
タイムスロットの移動情報。 リソース要件に緯度と経度の値が含まれる場合にのみ存在します。 | |
| 努力(ダブル) | 工数/容量。 | |
| IsDuplicate (ブール値) | 時間帯が重複しているかどうかを示すブール値。 | |
| Resource(OutputResource) OutputResource
|
この記事で説明するリソース エンティティ。 | |
| Location(OutputTimeSlotLocation) OutputTimeSlotLocation:
|
エンティティには、時間帯の場所に関する詳細が含まれています。 詳細については、この記事の TimeSlotLocation を参照してください。 | |
| TimeGroup(TimeSlotTimeGroup) OutputTimeSlotTimeGroup:
|
エンティティには、時間グループに関する詳細が含まれています。 詳細については、この記事の TimeSlotTimeGroup を参照してください。 | |
利用可能間隔 (List<<Guide>OutputTimeSlot>) |
使用可能な間隔のコレクション。 | |
| リソース (List<OutputResource>) | リソース (EntityReference) | 予約可能リソースへのエンティティ参照。 |
| ビジネスユニット (EntityReference) | 予約可能リソース グループへのエンティティ参照。 | |
| 組織単位 (EntityReference) | 組織単位へのエンティティ参照。 | |
| ResourceType (整数) | リソースの種類。 可能な値については、BookableResource エンティティの resourcetype 属性を参照してください。 | |
| PoolId (ガイド) | 時間帯で、リソースがメンバーであるプールの ID。 | |
| CrewId (ガイド) | 時間帯で、クルーがメンバーであるプールの ID。 | |
| Email (文字列) | リソースのメール アドレス。 | |
| Phone (文字列) | リソースの電話番号。 | |
| ImagePath (文字列) | リソースの画像へのパス。 | |
| 要件 (List<OutputRequirements>) | 要件 (EntityReference) | リソース要件レコードへのエンティティ参照。 |
| ConstraintBag (文字列) | ufx バッグの要件制約(内部) | |
リソース (List<<EntityReference>EntityReference>) |
要件に利用可能なリソースのエンティティ参照リスト。 | |
| ProposalResourceAssignmentSets (List<OutputProposalResourceAssignmentSet>) | IntervalStart (日時) | 各提案リソース割り当てセットの開始時間。 |
| ProposalResourceAssignments (リスト<OutputProposalResourceAssignments> OutputProposalResourceAssignments:
|
要件に割り当てられたリソースのリスト。 | |
| PagingInfos (OutputPagingInfo) | MoreResults (ブール値) | より多くの結果があるかどうか。 |
| PagingCookie (文字列) | 今後の検索で使用できるページング Cookie。 |
ペイロードの例
{
"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
}
応答例
{
"ResponseName": "msdyn_SearchResourceAvailabilityForRequirementGroup",
"Results": [
{
"Key": "TimeSlots",
"Value": {....}
},
{
"Key": "Requirements",
"Value": {....}
},
{
"Key": "ProposalResourceAssignmentSets",
"Value": {....}
},
{
"Key": "PagingInfos",
"Value": {....}
}]
}
要件グループの予約の作成 API
要件グループの予約の作成 (msdyn_CreateRequirementGroupBookings) API の場合、次の入力および出力パラメーターを使用します。
パラメーター
| 名前 | タイプ | 必須出席者 | 説明 |
|---|---|---|---|
| [バージョン] | String | あり | API のバージョン番号。 バージョン番号は、呼び出される API のバージョンを識別します。 バージョン番号は、major.minor.patch 形式のセマンティック バージョン番号です。 要求に完全なバージョン番号を含める必要はありません。 |
| RequirementGroup | EntityReference | あり | 以下のサンプルに示すように、要件グループ エンティティへのエンティティ参照は通常、GUID です。 |
| 先頭 | DateTime | あり | 時間帯の開始時刻。 |
| 長さ | Integer | あり | 作成する予約期間。 |
| ResourceAssignments | EntityCollection | あり | これは、予約を作成するために作成されるリソース割り当てのエンティティ コレクションです。 詳細については、リソース割り当てエンティティ テーブルを参照してください |
リソース割り当て
| 名前 | タイプ | 必須出席者 | 説明 |
|---|---|---|---|
| RequirementId | GUID | あり | 予約レコードを作成する要件のリソース要件 ID。 |
| ResourceId | GUID | あり | 予約を作成するリソースの予約可能リソース ID。 |
| BookingStatusId | GUID | あり | 作成する予約の予約状態 ID。 |
| 工数 | Integer | 無効 | この予約が消費する予約可能リソースの容量。 |
| TravelTime | Integer | 無効 | 移動時間 (分)。 |
出力
ブール型の HandlerExecuted を返します。