无法在 Microsoft Dynamics 365中创建电子邮件,并出现 NoRecipientMatch 同步错误

适用于:Microsoft Dynamics 365
原始 KB 编号: 4339830

症状

查看 Microsoft Dynamics 365 分析的自动促销电子邮件时,会看到无法在 Microsoft Dynamics 365中创建的电子邮件,并显示 NoRecipientMatch 同步错误或错误代码 -2147218683

原因

当 Microsoft Dynamics 365评估邮箱中的电子邮件时,会评估多个条件,以确定该邮件是否应在 Microsoft Dynamics 365 中自动创建为电子邮件活动。 如果评估结果为 NoRecipientMatch 错误,则指示以下条件之一:

  1. 电子邮件的“收件人”或“抄送”行上的电子邮件地址均不是 Microsoft Dynamics 365中的用户或队列。

    • 示例 A:你收到电子邮件是因为该电子邮件已发送到通讯组,并且你是该通讯组的成员。 存储在 Microsoft Dynamics 365 中的电子邮件地址实际上不在电子邮件的“收件人”或“抄送”行中。
    • 示例 B:例如,你有多个电子邮件地址 (,John@contoso.com) John.David@contoso.com 同一个邮箱,但电子邮件的“收件人”或“抄送”行上的电子邮件地址与 Microsoft Dynamics 365 用户记录中存储的任何电子邮件地址都不匹配。
  2. 电子邮件的“收件人”或“抄送”行上存在用户或队列,但存在以下条件:

    • 用户或队列使用的电子邮件地址存在于 Microsoft Dynamics 365 中的其他记录上。 例如:用户具有电子邮件地址 John@contoso.com ,但该电子邮件地址也存在于另一个已启用电子邮件的实体(例如用户、队列、联系人、潜在顾客或帐户)的某个电子邮件地址字段上。

    • 你的组织配置为在找到多个匹配项时将电子邮件地址值保留为未解析。

      上述两个条件的组合将导致电子邮件无法解析为用户或队列记录。

  3. 用户或队列的电子邮件地址位于电子邮件的密件抄送上。

    示例:你收到电子邮件是因为电子邮件地址位于电子邮件的密件抄送行上。 除非 Microsoft Dynamics 365中的个人选项配置为跟踪所有电子邮件,否则不会跟踪电子邮件。

    除非电子邮件的“收件人”或“抄送”行上的电子邮件地址与 Microsoft Dynamics 365中存储的电子邮件地址匹配,或者 Microsoft Dynamics 365 中的个人选项配置为跟踪所有电子邮件,否则不会跟踪电子邮件。

  4. 收到电子邮件的用户或队列邮箱的 EmailSearchBase 表中没有一行。

    查找匹配的用户或队列记录时,Microsoft Dynamics 365查询名为 EmailSearchBase 的表。 对于每个已启用电子邮件的记录(包括用户和队列)的电子邮件地址,此表应自动有一行。 在极少数情况下,此表可能缺少一行,这可能会导致 Microsoft Dynamics 365在查询此表时找不到匹配的行,以查找电子邮件上的用户或队列。

    可以打开 Web 浏览器并使用 Microsoft Dynamics 365 Web API 来验证是否存在接收电子邮件的用户或队列电子邮件地址的行。 使用以下语法:

    https://<Your Organization URL>/api/data/v9.1/emailsearches?$filter=emailaddress eq '<email address of user or queue>'

    例如:https://contoso.crm.dynamics.com/api/data/v9.1/emailsearches?$filter=emailaddress eq 'John@contoso.com'

    如果未返回任何记录,则表示 EmailSearchBase 表中不存在该电子邮件地址的行。

解决方案

查看电子邮件的特征,以及你在电子邮件跟踪的个人选项中配置了哪个选项。

  1. 若要验证 Microsoft Dynamics 365中存储的电子邮件地址,请执行以下操作:

    1. 导航到“设置”,然后选择“Email配置”。

    2. 选择 “邮箱”。

    3. 打开邮箱记录,并验证电子邮件的“收件人”或“抄送”行上的电子邮件地址是否与邮箱记录中找到的电子邮件地址匹配。

      注意

      如果邮箱有多个电子邮件地址,则可以选择“关于查找”,并将另一个电子邮件地址添加到用户记录上的另一个电子邮件地址字段。

  2. 如果用户或队列的电子邮件地址存在于多个记录上, (例如,其他用户、队列、潜在顾客、帐户、联系人等) ,则删除其他记录中的电子邮件地址,或者 将“设置为”、“抄送”、“密件抄送”字段设置为“未解析”值(如果在“传入电子邮件”中找到多个匹配项 )更改为 “否”。 可以通过导航到“设置”Email“配置”,然后选择“Email配置设置”来找到此设置。 在“设置Email窗体选项”部分中,如果“传入电子邮件”中找到多个匹配项,则找到名为“设置为”、“抄送”、“密件抄送”字段的设置作为未解析的值。

  3. 若要查看或更改电子邮件跟踪设置,请执行以下操作:

    1. 通过选择右上角) 齿轮图标 (设置,然后选择“选项”,访问 Microsoft Dynamics 365中的个人选项

    2. 选择“Email”选项卡。

    3. “选择要在 Microsoft Dynamics 365中跟踪的电子邮件”部分下,找到“跟踪”设置。

    4. 根据需要调整选项,以控制应在 Microsoft Dynamics 365中自动跟踪哪些电子邮件。

      例如:如果希望收到的每封电子邮件(不考虑发件人)在 Microsoft Dynamics 365中自动创建为电子邮件活动,请选择“所有电子邮件”选项。

    有关电子邮件关联的详细信息,请参阅Email邮件筛选和关联

  4. 如果在使用原因 4 中的步骤时未找到任何记录,请执行以下步骤:

    1. 在 Microsoft Dynamics 365中打开用户或队列记录。
    2. 将电子邮件地址值更改为其他值,然后选择“ 保存”。
    3. 然后,将电子邮件地址值改回正确的值,然后选择“ 保存”。 这通常会重新创建缺少的行。