Tabelas de atividades de e-mail

A tabela de atividades de email ajuda-o a acompanhar e gerir as comunicações por email com os clientes.

Ações em uma atividade de e-mail

Ao utilizar os serviços web do Dataverse, pode realizar as seguintes ações numa atividade de email:

  • Crie, obtenha, atualize e elimine a atividade de e-mail.

  • Envie mensagens de email ou envie mensagens de email usando modelos de email (Template). Para obter mais informações sobre modelos de email, consulte Criar modelos de email.

  • Anexe arquivos como anexos usando o atributo (ActivityMimeAttachment) na mensagem de email.

  • Enviar mensagens de e-mail em massa.

  • Configure as mensagens de e-mail recebidas a serem entregues a partir do Microsoft Exchange Server para qualquer utilizador ou fila, ou mensagens a enviar a partir de qualquer utilizador ou fila para o Microsoft Exchange Server.

    Se os atributos da Organization.RequireApprovalForuserEmail organização e Organization.RequireApprovalForQueueEmail (processar e-mails somente para usuários/filas aprovados) estiverem definidos como true (1), ocorrerá o seguinte: as mensagens de email serão entregues ou enviadas de um usuário ou fila somente se o endereço de e-mail principal do usuário ou fila for aprovado. Os atributos SystemUser.EmailRouterAccessApproval e Queue.EmailRouterAccessApproval indicam o status do endereço de e-mail principal do usuário e da fila, respectivamente, e o valor deve ser definido como 1. Caso contrário, as mensagens recebidas e enviadas ficam bloqueadas. Você pode atualizar o registro de usuário ou fila para alterar o valor do atributo, se ele ainda não estiver no estado aprovado, desde que sua conta de usuário tenha o privilégio prvApproveRejectEmailAddress atribuído.

Observação

No Dataverse, o Email.StatusCode atributo não pode ser nulo.

E-mail em massa

O Dataverse suporta o envio de e-mails para uma grande lista de destinatários por meio de uma solicitação de e-mail em massa. Quando envia um pedido de envio de e-mail em massa para o Dataverse, o Dataverse cria uma operação assíncrona na fila do serviço assíncrono que envia as mensagens de e-mail através de um processo em segundo plano. Este processo melhora o desempenho do sistema.

Utilize as mensagens SendBulkMailRequest e BackgroundSendEmailRequest para enviar mensagens de correio eletrónico em massa. A lista seguinte descreve a sequência usada para enviar emails em massa:

  1. Executar o pedido SendBulkMail. Esta solicitação contém uma consulta que seleciona os destinatários de e-mail de destino e um modelo de e-mail para compor cada e-mail.

  2. O serviço assíncrono cria as atividades de email para cada destinatário.

  3. O serviço assíncrono envia cada mensagem de email. As mensagens de e-mail têm um status de envio "pendente".

  4. O encaminhador de e-mail, o Dynamics 365 for Outlook ou um componente de terceiros para envio de e-mail consulta periodicamente o Dataverse à procura de mensagens de e-mail pendentes. Se encontrar uma, transfere a mensagem utilizando o pedido BackgroundSendEmail.

  5. A BackgroundSendEmail solicitação executa as seguintes operações: verifica se mensagens de e-mail pendentes estão presentes, baixa o e-mail para o chamador da BackgroundSendEmailRequest mensagem e sincroniza os downloads se houver vários chamadores.

    Observação

    O seu fornecedor de serviços de email pode ter limites que afetam o número de emails que pode enviar num determinado período de tempo. Para mais informações, consulte Exchange Online limites > de envio.

  6. O chamador da mensagem BackgroundSendEmailRequest recebe a mensagem de correio eletrónico descarregada e envia-a.

Anexos de e-mail

Os anexos de email são ficheiros que pode anexar a mensagens ou modelos de email. Um ficheiro anexo pode estar em qualquer formato padrão de ficheiro de computador, como documentos Office Outlook, folhas de cálculo Office Excel, ficheiros CAD e ficheiros PDF. Você pode anexar vários arquivos como anexos de e-mail a um modelo de e-mail ou e-mail. A propriedade Organization.MaxUploadFileSize determina o tamanho máximo dos ficheiros que pode carregar. Defina esta propriedade no separador Email das Definições do Sistema na aplicação Dynamics 365. Esta configuração limita o tamanho dos ficheiros que pode anexar a mensagens de email, notas e recursos web. A configuração padrão é 5 MB.

Para anexar um anexo de correio eletrónico a uma mensagem de correio eletrónico ou a um modelo, utilize as colunas ActivityMimeAttachment.ObjectId e ActivityMimeAttachment.ObjectTypeCode ao criar ou atualizar uma linha de anexo MIME de atividade.

O exemplo de código a seguir mostra como anexar um anexo de email a um email:

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 forma semelhante, para anexar o anexo de e-mail a um modelo em vez de a um e-mail, substitua, no código anterior, os valores dos atributos ActivityMimeAttachment.ObjectId e ActivityMimeAttachment.ObjectTypeCode da seguinte forma:

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

Para um exemplo completo de código sobre como criar anexos de email, consulte Exemplo: Criar, recuperar, atualizar e eliminar um anexo de email.

Reutilização de anexos de email

Quando crias um registo de anexo de email, o Dataverse guarda o ficheiro anexo como um ficheiro BLOB. O atributo ActivityMimeAttachment.AttachmentId do registo de anexo de e-mail identifica exclusivamente o BLOB do ficheiro. Este processo facilita a reutilização de anexos de ficheiros juntamente com outros emails e registos de modelos de email, sem criar e armazenar múltiplas cópias do mesmo ficheiro na base de dados.

Para reutilizar um anexo de ficheiro existente:

  1. Recupere a ActivityMimeAttachment linha que contém o arquivo anexo que você deseja reutilizar, conforme mostrado no exemplo de código a seguir:

    ActivityMimeAttachment retrievedAttachment = 
        (ActivityMimeAttachment)_serviceProxy
        .Retrieve(ActivityMimeAttachment.EntityLogicalName, _emailAttachmentId, new ColumnSet(true));  
    
  2. Crie um novo anexo de e-mail, associe-o à linha de e-mail ou modelo de e-mail necessária e aponte-o para o arquivo anexado da linha recuperada ActivityMimeAttachment , conforme mostrado no exemplo de código a seguir:

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

Como se está a reutilizar um arquivo de anexo existente, não precisa especificar os valores de coluna ActivityMimeAttachment.Body e ActivityMimeAttachment.FileName ao criar e associar linhas de anexos a e-mails ou modelos de e-mails.

Armazenamento de e-mail

As descrições de e-mail (corpo do e-mail) foram armazenadas até este ponto no repositório relacional Dataverse. Isso está mudando à medida que a coluna Email.Description na tabela de atividades de email está sendo realocada para o armazenamento de Blob do Azure não estruturado. O armazenamento de Blob do Azure também é usado para armazenamento de anexos, anotações, arquivos e imagens.

Período de transição

Espera-se que a migração de dados do repositório de relações Dataverse para o armazenamento de Blob do Azure para todos os clientes comece em maio de 2023. Esta migração de dados ocorrerá como um processo em segundo plano (trabalho). Espera-se que a movimentação inicial de dados para clientes existentes dure cerca de 6 a 12 semanas, e possivelmente até mais, dependendo do tamanho dos dados. Após a movimentação inicial de dados, qualquer migração restante é um processo contínuo. Todas as descrições de email com mais de doze meses serão movidas automaticamente para o armazenamento de Blob do Azure e esse período de transição de doze meses não pode ser alterado. Os e-mails mais recentes não serão movidos até completarem 12 meses. O trabalho de migração de descrição de e-mail é executado periodicamente - cerca de uma vez a cada 30-60 dias por locatário.

Essa migração de dados será transparente para você, com a exceção de que você verá uma redução no tamanho da tabela ActivityPointer depois que o processo de migração for totalmente concluído. No centro de administração do Power Platform, no relatório de Capacidade, estará disponível um novo item de linha de e-mail em Utilização de ficheiros. O resultado final é um aumento no consumo geral de armazenamento de arquivos e uma redução no armazenamento de banco de dados consumido.

Observação

O aumento no armazenamento de Ficheiros pode ser menor do que o que é removido da tabela ActivityPointer devido à compressão de dados de ficheiros.

As limitações mencionadas na próxima seção começarão a ser aplicadas a todos os dados que já foram movidos para o armazenamento de blobs do Azure gerenciado pelo Dataverse, mesmo que toda a movimentação de dados não esteja concluída.

Limitações de pesquisa e filtragem

Para descrições de email (corpos) armazenadas no armazenamento Azure Blob, aplicam-se certas limitações à filtragem, procura e pesquisa de descrições de email, conforme descrito nas secções seguintes.

Filtering

A filtragem nas descrições dos emails não é suportada. Alguns pontos específicos a considerar são:

  • FetchXML - Não podes pesquisar nos corpos dos emails usando FetchXML.
  • Procura Rápida e Pesquisa Avançada - Não podes filtrar descrições de emails usando estes métodos.

Gorjeta

Para o Quick Find, embora a filtragem não seja suportada, pode adicionar o corpo do email como uma coluna retornada e devolver os dados do corpo no resultado.

A procurar

Você pode habilitar a pesquisa Dataverse em descrições de e-mail para pesquisar descrições de e-mail.

Consulte também

Quadros de atividades
Exemplo: Enviar um e-mail
Tabela de e-mail
Tabela ActivityMimeAttachment