Share via


Tables d’activité de courrier électronique

L’activité de courrier électronique vous permet de suivre et de gérer les communications par courrier électronique avec les clients.

Actions sur une activité de courrier électronique

Avec les services web Dataverse, vous pouvez effectuer les actions suivantes sur une activité de courrier électronique :

  • Créer, extraire, mettre à jour et supprimer l’activité de courrier électronique.

  • Envoyer des messages électroniques ou envoyer des messages électroniques en utilisant les modèles de courrier électronique (Template). Pour plus d’informations sur les modèles de courrier électronique, voir Créer des modèles de courrier électronique.

  • Joindre des fichiers sous forme de documents joints en utilisant l’attribut (ActivityMimeAttachment) dans le message électronique.

  • Envoyer des messages électroniques en publipostage ou en nombre.

  • Configurer les messages électroniques entrants à livrer à un utilisateur ou à une file d’attente depuis Microsoft Exchange Server, ou les messages sortants à envoyer depuis un utilisateur ou une file d’attente à Microsoft Exchange Server.

    Si les attributs d’organisation Organization.RequireApprovalForuserEmail et Organization.RequireApprovalForQueueEmail (traitent les messages électroniques uniquement pour les utilisateurs/files d’attente approuvés) sont définis sur true (1), les comportements suivants surviennent : les messages électroniques sont livrés ou envoyés depuis un utilisateur ou une file d’attente uniquement si l’adresse de messagerie principale de l’utilisateur ou de la file d’attente est approuvée. Les attributs SystemUser.EmailRouterAccessApproval et Queue.EmailRouterAccessApproval indiquent le statut de l’adresse de messagerie principale de l’utilisateur ou de la file d’attente respectivement, et la valeur doit être définie sur 1. Sinon, les messages entrants et sortants sont bloqués. Vous pouvez mettre à jour l’enregistrement d’utilisateur ou de file d’attente pour modifier la valeur d’attribut, si elle n’est pas déjà à l’état Approuvé, si votre compte d’utilisateur possède déjà le privilège prvApproveRejectEmailAddress.

Notes

Dans Dataverse, l’attribut Email.StatusCode ne peut pas être une valeur null.

Envoi en nombre

Dataverse prend en charge l’envoi de courriers électroniques à une grande liste de destinataires via une demande d’envoi en nombre. Lorsqu’une demande d’envoi en nombre est envoyée à Dataverse, une opération asynchrone est créée dans la file d’attente de service asynchrone de service qui envoie les messages électroniques en utilisant un processus en arrière-plan. Les performances système sont ainsi améliorées.

Les messages SendBulkMailRequest et BackgroundSendEmailRequest sont utilisés pour envoyer des messages électroniques en nombre. Le texte suivant répertorie la séquence utilisée pour envoyer des messages électroniques en nombre :

  1. Exécutez la demande SendBulkMail. Cette demande contient une requête qui sélectionne les destinataires cibles de courrier électronique et un modèle de courrier électronique pour composer chaque message.

  2. Le service asynchrone crée les activités de courrier électronique pour chaque destinataire.

  3. Le service asynchrone envoie chaque message électronique. Les messages électroniques ont un statut d’envoi « En attente ».

  4. Le routeur de messagerie, Dynamics 365 for Outlook, ou un composant d’envoi de courriers électroniques tiers interroge Dataverse concernant les messages électroniques en attente, et s’il en trouve un, il le charge à l’aide de la demande BackgroundSendEmail.

  5. La demande BackgroundSendEmail exécute les opérations suivantes : vérifie si des messages électroniques en attente sont présents, télécharge le message électronique vers l’appelant du message BackgroundSendEmailRequest et synchronise les téléchargements s’il y a plusieurs appelants.

    Notes

    Votre fournisseur de services de messagerie peut avoir des limites qui affectent le nombre d’e-mails que vous pouvez envoyer au cours d’une période donnée. Plus d’informations : Limites Exchange Online > Envoi de limites.

  6. L’appelant du message BackgroundSendEmailRequest reçoit le message électronique téléchargé et l’envoie.

Pièces jointes du courrier électronique

Les pièces jointes du courrier électronique sont des fichiers pouvant être joints à des messages électroniques ou des modèles de courrier électronique. Un fichier joint peut être tout format de fichier informatique standard comprenant des documents Office Outlook, des feuilles de calcul Office Excel, des fichiers CAD et des fichiers PDF. Vous pouvez joindre plusieurs fichiers comme pièces jointes d’un courrier électronique ou d’un modèle de courrier électronique. La taille maximale des fichiers pouvant être chargée est déterminée par la propriété Organization.MaxUploadFileSize. Cette propriété est définie sous l’onglet Courrier électronique des Paramètres système de l’application Dynamics 365. Ce paramètre limite la taille des fichiers pouvant être joints à des messages électroniques, des notes et des ressources web. Le paramètre par défaut est 5 Mo.

Pour joindre un document joint de courrier électronique à un courrier électronique ou un modèle de courrier électronique, utilisez les colonnes ActivityMimeAttachment.ObjectId et ActivityMimeAttachment.ObjectTypeCode quand vous créez ou mettez à jour une activité de ligne de document joint MIME.

L’exemple de code suivant montre comment joindre un document joint de courrier électronique à un courrier électronique :

ActivityMimeAttachment _sampleAttachment = new ActivityMimeAttachment{  
    ObjectId = new EntityReference(Email.EntityLogicalName, _emailId),  
    ObjectTypeCode = Email.EntityLogicalName,  
    Subject = "Sample Attachment",  
    Body = System.Convert.ToBase64String(new ASCIIEncoding().GetBytes("Example Attachment")),  
    FileName = "ExampleAttachment.txt"};  

De même, pour joindre le document joint du courrier électronique à un modèle de courrier électronique au lieu d’un courrier électronique, remplacez les valeurs des attributs ActivityMimeAttachment.ObjectId et ActivityMimeAttachment.ObjectTypeCode comme suit dans le code ci-dessus :

ObjectId = new EntityReference(Template.EntityLogicalName, _templateId), ObjectTypeCode = Template.EntityLogicalName,  

Pour obtenir un exemple de code complet sur la création de pièces jointes au courrier électronique, voir Exemple : créer, mettre à jour et supprimer les pièces jointes au courrier électronique.

Réutilisation de pièces jointes de courrier électronique

Lorsque vous créez un enregistrement de pièce jointe de courrier électronique, le fichier joint est enregistré sous forme d’objet BLOB fichier. L’attribut ActivityMimeAttachment.AttachmentId de l’enregistrement de pièce jointe de courrier électronique identifie de façon unique l’objet BLOB fichier. Cette opération sert à faciliter la réutilisation des pièces jointes de courrier électronique avec d’autres enregistrements de courrier électronique ou de modèle de courrier électronique, sans créer et stocker plusieurs copies du même fichier dans la base de données.

Pour réutiliser une pièce jointe existante :

  1. Extrayez la ligne ActivityMimeAttachment contenant le fichier joint à réutiliser, comme illustré dans l’exemple de code suivant :

    ActivityMimeAttachment retrievedAttachment = 
        (ActivityMimeAttachment)_serviceProxy
        .Retrieve(ActivityMimeAttachment.EntityLogicalName, _emailAttachmentId, new ColumnSet(true));  
    
  2. Créez un enregistrement de document joint de courrier électronique, associez-le à la ligne de courrier électronique ou de modèle de courrier électronique et faites-le pointer vers le fichier joint de la ligne ActivityMimeAttachment extrait, comme le montre l’exemple de code suivant :

    ActivityMimeAttachment _reuseAttachment = new ActivityMimeAttachment{  
      ObjectId = new EntityReference(Email.EntityLogicalName, _emailId),  
      ObjectTypeCode = Email.EntityLogicalName,  
      Subject = "Sample Attachment",  
      AttachmentId = retrievedAttachment.AttachmentId};  
    

Étant donné que vous réutilisez un fichier joint existant, vous n’avez pas besoin de spécifier les valeurs de colonne ActivityMimeAttachment.Body et ActivityMimeAttachment.FileName quand vous créez et associez des enregistrements de documents joints aux courriers électroniques ou modèles de courrier électronique.

Stockage des e-mails

Les descriptions d’e-mail (corps de l’e-mail) ont jusqu’à présent été stockées dans le magasin de relations Dataverse. Cela change, car la colonne Email.Description dans la table activité de messagerie est déplacée vers le stockage Azure Blob non structuré. Le stockage Azure Blob est également utilisé pour le stockage des pièces jointes, des annotations, des fichiers et des images.

Période de transition

La migration des données du magasin de relations Dataverse vers le stockage Azure Blob pour tous les clients devrait commencer en mai 2023. Cette migration de données s’effectuera en arrière-plan (job). Le mouvement initial des données pour les clients existants devrait durer environ 6 à 12 semaines, voire plus selon la taille des données. Après le déplacement initial des données, toute migration restante est un processus continu. Toutes les descriptions d’e-mails datant de plus de douze mois seront automatiquement transférées dans le stockage Azure Blob, et cette période de transition de douze mois ne peut pas être modifiée. Les e-mails les plus récents ne sont pas déplacés avant qu’ils n’aient 12 mois. La tâche de migration de la description de l’e-mail s’exécute périodiquement, environ une fois tous les 30 à 60 jours par locataire.

Cette migration de données sera transparente pour vous, à l’exception du fait que vous constaterez une réduction de la taille de la table ActivityPointer une fois le processus de migration entièrement terminé. Dans le centre d’administration Power Platform au sein du rapport Capacité, un nouvel élément de ligne d’e-mail sera disponible dans Utilisation des fichiers. Le résultat final est une augmentation de la consommation globale de stockage de fichiers et une réduction du stockage de base de données consommé.

Notes

L’augmentation du stockage de fichiers peut être inférieure à ce qui est supprimé de la table ActivityPointer en raison de la compression des données de fichiers.

Les limitations mentionnées dans la section suivante commencent à s’appliquer à toutes les données déjà déplacées vers le stockage Blob Azure géré Dataverse même si tous les déplacements de données ne sont pas terminés.

Limitations de recherche et de filtrage

Pour les descriptions d’e-mail (corps) stockées dans le stockage Azure Blob, certaines limitations s’appliquent au filtrage, à la recherche et à la recherche de descriptions d’e-mail, comme décrit ci-dessous.

Filtering

Le filtrage sur les descriptions d’e-mail n’est pas pris en charge. Certains points spécifiques à considérer sont les suivants.

  • FetchXML - Vous ne pouvez pas effectuer de recherche dans le corps des e-mails à l’aide de FetchXML.
  • Recherche rapide et Recherche avancée - Le filtrage des descriptions d’e-mails à l’aide de ces méthodes n’est pas pris en charge.

Conseil

Pour Recherche rapide, bien que le filtrage ne soit pas pris en charge, le corps de l’e-mail peut être ajouté en tant que colonne renvoyée et les données du corps sont renvoyées dans le résultat.

Recherche

Vous pouvez activer Recherche Dataverse sur les descriptions d’e-mails pour rechercher des descriptions d’e-mails.

Voir aussi

Tables d’activité
Exemple : Envoyer un message électronique
Table de courrier électronique
Table ActivityMimeAttachment

Notes

Pouvez-vous nous indiquer vos préférences de langue pour la documentation ? Répondez à un court questionnaire. (veuillez noter que ce questionnaire est en anglais)

Le questionnaire vous prendra environ sept minutes. Aucune donnée personnelle n’est collectée (déclaration de confidentialité).