サンプル: 定期的な予定の再スケジュールおよび取り消し

このサンプルでは、RescheduleRequest メッセージを使用して、一連の定期的な予定内の予定インスタンスを再スケジュールおよび取り消す方法を示します。 サンプルは ここ からダウンロードできます。

Note

このサンプルは、Dynamics 365 Customer Engagement (on-premises) と Dataverse の両方に適用されます。

このサンプルを実行する方法

すべてのサンプルのローカル コピーを取得してビルドするには、次の手順を実行します。

  1. サンプル リポジトリをダウンロードまたは複製して、ローカル コピーを用意します。
  2. (オプション) dataverse/App.config ファイルを編集して、接続先のインスタンスまたは組織を指定した接続文字列を定義します。
  3. サンプル ソリューションを Visual Studio で開き、F5 キーを押してサンプルを実行します。 Dataverse/App.config 内に接続文字列を指定した後、サンプルを実行すると、その接続情報が使用されます。

dataverse/App.config ファイル内に接続文字列を指定しない場合は、サンプルを実行するたびにダイアログが開き、接続先のインスタンスまたは組織についての情報と、使用する資格情報についての情報を入力する必要があります。 このダイアログには以前の接続がキャッシュされているため、以前に使用した接続を選ぶことができます。

このサンプルの概要

RescheduleRequest メッセージは、予定、定期的な予定、またはサービスの予定 (サービス活動) を再スケジュールするために必要なデータが含まれているシナリオで使用するためのものです。

このサンプルがどのように動作するか

このサンプルの概要 で説明されているシナリオをシミュレートするために、サンプルは次のことを行います。

セットアップ

  1. 組織の現在のバージョンをチェックします。
  2. 匿名型を定義し、使用可能な定期パターンと曜日の有効値を定義します。
  3. 匿名型を定義し、定期ルール パターンの最後の型の有効値を定義します。
  4. RecurringAppointmentMaster は、新しい定期的な予定を作成します。

使用方法

  1. QueryExpression メッセージは、今日から 10 日後以降の個々の予定インスタンスを照会します。 基本的には、これは定期的な予定シリーズの 2 番目のインスタンスです。
  2. RescheduleRequest メッセージは、予定のスケジュールの開始日と終了日を更新します。
  3. SetStateRequest メッセージは、予定の最後のインスタンスを取り消します。 この予定インスタンスの状態は canceled に設定されます。 All Activities ビューでこの予定インスタンスを表示できます。

クリーン アップ

セットアップで作成されたサンプル データを削除するオプションを表示します。 サンプルで作成されるエンティティおよびデータを検証する場合、削除は任意です。 手動でレコードを削除することで同じ結果を得られます。