Exchange フォルダー レベルの追跡ルールの構成
公開日: 2017年1月
対象: Dynamics 365 (online)、Dynamics 365 (on-premises)、Dynamics CRM 2016、Dynamics CRM Online
Microsoft Exchange 受信トレイを Microsoft Dynamics 365 レコードにマップするフォルダー レベルの追跡のルールを構成します。これにより、Exchange フォルダーのすべての電子メールが Dynamics 365 内のマップされたレコードと対照して自動的に追跡されます。 電子メールのフォルダー レベルの追跡は、以下の場合にのみ使用できます。
フォルダー レベルの追跡機能が Dynamics 365 インスタンスに対して有効化されている。 Web クライアントや Outlook 用 Microsoft Dynamics 365 を使用して、フォルダー レベルの追跡を有効にできます。詳細:TechNet: フォルダー レベルの追跡を構成
追跡の対象のフォルダーが、Exchange の 受信トレイ の下にある。受信トレイ の下にないフォルダーの電子メールは追跡されません。
このトピックの内容
フォルダー レベルの追跡のルールの作成と管理
メールボックスのフォルダー レベルの追跡のルールの取得
フォルダー レベルの追跡のルールの作成と管理
フォルダー レベルの追跡のルールをプログラムで構成および管理するには、MailboxTrackingFolder エンティティを使用します。 追跡ルールを設定するには、以下の属性を使用します。
属性 |
説明 |
---|---|
MailboxTrackingFolder.ExchangeFolderId |
マップする Exchange フォルダーの ID を指定します。Exchange Web サービス (EWS) を使用して、受信トレイの下にあるフォルダーの ID を取得できます。 詳細については、「MSDN: Exchange で EWS を使用してフォルダーを操作する方法について」を参照してください。 これは必須の属性です。 |
MailboxTrackingFolder.MailboxId |
ルールを作成する対象の、Dynamics 365 内のメールボックス ID を指定します。 これは必須の属性です。 |
MailboxTrackingFolder.RegardingObjectId |
指定した Exchange フォルダーのマップ先となる、Dynamics 365 内の関連オブジェクトを設定します。 これは任意の属性です。 |
次のサンプル コードは、フォルダー レベルの追跡のルールの作成方法を示しています。
// 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 まで作成できます。Exchange フォルダーのフォルダー ID は、SDK を使用してマッピングの作成時点では検証できません。 ただし、マッピング ルールを作成した時点で、そのフォルダー ID が無効な場合、そのことは、マッピングが無効であることを示すために、Dynamics 365 の UI に表示されます。
フォルダー レベルの追跡のルールの結果、Dynamics 365 内に作成された、追跡対象の活動レコードに含まれる関連オブジェクトに手動で変更を加えた場合、その変更は、次のサーバー側同期が行われたときに上書きされます。 たとえば、Adventure Works フォルダーと Adventure Works 取引先企業との間にマッピングを設定した場合、Adventure Works の Exchange フォルダーにあるすべての電子メールは、Adventure Works 取引先企業レコードとの関連を保った状態で、Dynamics 365 の活動として追跡されます。 他のレコードとのいくつかの活動の関連を変更した場合は、次にサーバー側同期が動作したときにその変更は自動的に上書きされます。
メールボックスのフォルダー レベルの追跡のルールの取得
RetrieveMailboxTrackingFoldersRequest メッセージを使用して、メールボックスのすべてのフォルダー レベルの追跡のルールを取得できます。 ルールを取得する対象のメールボックス ID を、RetrieveMailboxTrackingFoldersRequest.MailboxId プロパティに渡し、メッセージを実行します。
次のサンプル コードは、メールボックスのフォルダー レベルの追跡のルールの取得方法を示しています。
// 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++;
}
関連項目
MailboxTrackingFolder (メールボックス自動追跡フォルダー) エンティティのメッセージおよびメソッド
メールボックス (Mailbox) エンティティのメッセージおよびメソッド
TechNet: フォルダー レベルの追跡を構成
サーバー側の同期エンティティ
Microsoft Dynamics 365
© 2017 Microsoft. All rights reserved. 著作権