Exchange フォルダー レベルの追跡ルールの構成
フォルダー レベルの追跡ルールを設定して、Microsoft Exchange の受信トレイフォルダを Microsoft Dataverse レコードにマッピングし、Microsoft Exchange フォルダ内のすべての電子メールが Dataverse のマッピングされたレコードに対して自動的に追跡されるようにします。 電子メールのフォルダー レベルの追跡は、以下の場合にのみ使用できます。
フォルダー レベルの追跡機能が Dataverse インスタンスに対して有効化されます。 Web クライアントや Dynamics 365 for Outlook を使用して、フォルダー レベルの追跡を有効にできます。 詳細: フォルダー レベルの追跡
追跡の対象のフォルダーが、Microsoft Exchange の受信トレイの下にあります。 受信トレイ の下にないフォルダーのメールは追跡されません。
フォルダー レベルの追跡のルールの作成と管理
メールボックス自動追跡フォルダー (MailboxTrackingFolder) テーブル を使用して、フォルダー レベルの追跡ルールをプログラムで構成、管理します。 追跡ルールを設定するには、以下の列を使用します。
Column | 内容 |
---|---|
ExchangeFolderId | マッピングする Microsoft Exchange フォルダー ID を指定します。 Exchange Web サービス (EWS) を使用して、受信トレイの下にあるフォルダーの ID を取得できます。 詳細については、「MSDN: Exchange で EWS を使用してフォルダーを操作する方法について」を参照してください。 これは必須の列です。 |
MailboxId | ルールを作成する対象の、Dataverse 内のメールボックス ID を指定します。 これは必須の列です。 |
RegardingObjectId | 指定した Microsoft Exchange フォルダーのマップ先となる、Dataverse 内の関連オブジェクトを設定します。 これは、オプションの列です。 |
次のサンプル コードは、フォルダー レベルの追跡のルールの作成方法を示しています。
// Create a folder-level tracking rule
MailboxTrackingFolder newTrackingFolder = new MailboxTrackingFolder();
// Set the required attributes
newTrackingFolder.ExchangeFolderId = "123456"; // Sample value. Retrieve this value using Exchange Web Services (EWS)
newTrackingFolder.MailboxId = new EntityReference(Mailbox.EntityLogicalName, _mailboxId);
// Set the optional attributes
newTrackingFolder.RegardingObjectId = new EntityReference(Account.EntityLogicalName, _accountId);
newTrackingFolder.RegardingObjectId.Name = _accountName;
newTrackingFolder.ExchangeFolderName = "Sample Exchange Folder";
// Execute the request to create the rule
_folderTrackingId = _serviceProxy.Create(newTrackingFolder);
Console.WriteLine("Created folder-level tracking rule for '{0}'.\n", _mailboxName);
メールボックスごとに、フォルダー レベルの追跡のルールを最大 25 まで作成できます。 Microsoft Exchange フォルダーのフォルダー ID は、SDK を使用してマッピングの作成時点では検証できません。 ただし、マッピング ルールを作成した時点で、そのフォルダー ID が無効な場合、マッピングが無効であることが Dataverse の UI に表示されます。
フォルダー レベルの追跡のルールの結果、Dataverse 内に作成された、追跡対象の活動レコードに含まれる関連オブジェクトに手動で変更を加えた場合、この変更は、次回サーバー側同期が行われた際に上書きされます。 たとえば、Adventure Works
フォルダーと Adventure Works
取引先企業との間にマッピングを設定した場合、Adventure Works
Microsoft Exchange フォルダーにあるすべての電子メールは、Adventure Works
取引先企業レコードとの関連を保った状態で、Dataverse の活動として追跡されます。 他のレコードとのいくつかの活動の関連を変更した場合は、次にサーバー側同期が動作したときにその変更は自動的に上書きされます。
メールボックスのフォルダー レベルの追跡のルールの取得
RetrieveMailboxTrackingFoldersRequest メッセージを使用して、メールボックスのすべてのフォルダー レベルの追跡のルールを取得できます。 RetrieveMailboxTrackingFoldersRequest.MailboxId プロパティでルールを取得するメールボックス ID を渡し、メッセージを実行します。
次のサンプル コードは、メールボックスのフォルダー レベルの追跡のルールの取得方法を示しています。
// Retrieve the folder mapping rules for a mailbox
RetrieveMailboxTrackingFoldersRequest req = new RetrieveMailboxTrackingFoldersRequest
{
MailboxId = _mailboxId.ToString()
};
RetrieveMailboxTrackingFoldersResponse resp = (RetrieveMailboxTrackingFoldersResponse_serviceProxy.Execute(req);
Console.WriteLine("Retrieved folder-level tracking rules for {0}:", _mailboxName);
int n = 1;
foreach (var folderMapping in resp.MailboxTrackingFolderMappings)
{
Console.WriteLine("\tRule {0}: '{1}' is mapped to '{2}'.",
n, folderMapping.ExchangeFolderName, folderMapping.RegardingObjectName);
n++;
}
参照
RetrieveMailboxTrackingFolders Function
メールボックス自動追跡フォルダー (MailboxTrackingFolder) テーブル
Mailbox テーブル
フォルダー レベルの追跡の構成
サーバー側同期のテーブル
注意
ドキュメントの言語設定についてお聞かせください。 簡単な調査を行います。 (この調査は英語です)
この調査には約 7 分かかります。 個人データは収集されません (プライバシー ステートメント)。