Microsoft Dataverse は、管理者がすべてのユーザーが使用できるシステム ビューを作成する方法を提供します。 個々のユーザーは、アプリケーションで再利用するために高度な検索クエリを保存できます。 これらはどちらも、Web API を使用して取得および実行できる定義済みのクエリを表します。
注
OData 構文を使用するクエリとは異なり、定義済みのクエリまたは fetchXml から返されるデータは、 null 値を持つプロパティを返しません。 値が nullされている場合、プロパティは結果に含まれません。
OData 構文を使用してクエリが返されると、レコードには次のような null 値を持つプロパティが含まれます。
{
"@odata.etag": "W/\"46849433\"",
"name": "Contoso, Ltd. (sample)",
"accountnumber": null,
"accountid": "7a4814f9-b0b8-ea11-a812-000d3a122b89"
}
定義済みのクエリまたは FetchXml を使用して取得した場合、同じレコードに accountnumber プロパティは含まれません。これは、次のように nullされるためです。
{
"@odata.etag": "W/\"46849433\"",
"name": "Contoso, Ltd. (sample)",
"accountid": "7a4814f9-b0b8-ea11-a812-000d3a122b89"
}
定義済みのクエリ
Dataverse を使用すると、次に示すように、2 種類のクエリを定義、保存、および実行できます。
| クエリの種類 | Description |
|---|---|
| 保存されたクエリ | テーブル (エンティティ) のシステム定義ビュー。 これらのビューは、 savedquery EntityType に格納されます。 詳細情報: テーブル ビューのカスタマイズ |
| ユーザー クエリ | ユーザーがエンティティ テーブル用に保存した高度な検索条件。 これらのビューは 、userquery EntityType に格納されます。 詳細情報: UserQuery (保存されたビュー) テーブル |
これらの種類のエンティティの両方のレコードには、返されるデータの FetchXML 定義が含まれています。 それぞれのエンティティ型に対してクエリを実行して、主キーの値を取得できます。 主キー値を使用すると、主キー値を渡すことでクエリを実行できます。 たとえば、 アクティブ アカウント に保存されたクエリを実行するには、最初に次のようなクエリを使用して主キーを取得する必要があります。
GET [Organization URI]/api/data/v9.2/savedqueries?$select=name,savedqueryid&$filter=name eq 'Active Accounts'
その後、savedqueryid 値を使用し、それを savedQuery パラメーターの値として、accounts エンティティ セットに渡すことができます。
GET [Organization URI]/api/data/v9.2/accounts?savedQuery=00000000-0000-0000-00aa-000010001002
同じ方法を使用して userqueryid を取得し、 userQuery パラメーターの値として、保存されたクエリの対応する returnedtypecode と一致するエンティティ セットに渡します。
GET [Organization URI]/api/data/v9.2/accounts?userQuery=121c6fd8-1975-e511-80d4-00155d2a68d1
適切な型の任意のコレクションにクエリを適用する
保存されたクエリをメイン エンティティ セット コレクションに適用するだけでなく、保存されたクエリまたはユーザー クエリを使用して、適切な種類のエンティティのコレクションに同じフィルター処理を適用することもできます。 たとえば、特定のエンティティに関連するエンティティのみに対してクエリを適用する場合は、同じパターンを適用できます。 たとえば、次の URL は、コレクション値ナビゲーション プロパティを使用して、特定のアカウントに関連する営業案件に対して opportunity_parent_account クエリを適用します。
GET [Organization URI]/api/data/v9.2/accounts(8f390c24-9c72-e511-80d4-00155d2a68d1)/opportunity_parent_account/?savedQuery=00000000-0000-0000-00aa-000010003001
こちらも参照ください
Web API クエリ データ サンプル (C#)
Web API クエリ データ サンプル (クライアント側 JavaScript)
Web API を使用して操作を実行する
Http 要求を作成し、エラーを処理する
Web API を使用してデータのクエリを実行する
Web API を使用してテーブル行を作成する
Web API を使用してテーブル行を取得する
Web API を使用してテーブル行を更新および削除する
Web API を使用してテーブル行の関連付けと関連付けを解除する
Web API 関数を使用する
Web API アクションの使用
Web API を使用してバッチ操作を実行する
Web API を使用して別のユーザーを偽装する
Web API を使用して条件付き操作を実行する