Compartilhar via


Atividades personalizadas

 

Publicado: novembro de 2016

Aplicável a: Dynamics CRM 2015

No Microsoft Dynamics 365, você pode criar atividades personalizadas para suportar as necessidades de comunicação de um negócio, tais como mensagens instantâneas (IM) e serviço de mensagens curtas (SMS). Para criar uma atividade personalizada em Dynamics 365, crie uma entidade personalizada e especifique-a como uma entidade de atividade usando a propriedade EntityMetadata.IsActivity.

No entanto, diferente de outras entidades personalizadas, você não pode especificar uma característica primária para uma atividade personalizada, porque, por padrão, cada atividade personalizada deve ter uma característica primária chamada ”Subject”.

Quando você cria uma entidade de atividade personalizada, todas as propriedades e privilégios da entidade activitypointer são herdados para a atividade personalizada. Além disso, todos os tipos de grupos de atividades se tornam disponíveis para a atividade personalizada, e como resultado, as propriedades correspondentes também são herdadas.

Você pode criar de uma a muitas relações (1:N) para uma atividade personalizada assim como qualquer outra atividade, e também atualizar as relações existentes.

Privilégios e direitos de acesso

Você precisa do mesmo conjunto de privilégios e direitos de acesso Dynamics 365 para trabalhar com atividades personalizadas, assim como os que são necessários para trabalhar com entidades personalizadas. Para obter mais informações sobre as entidades personalizadas, consulte Personalizar metadados da entidade.

Criar uma atividade personalizada

Para criar uma entidade de atividade personalizada, defina os valores das propriedades listadas na tabela a seguir.

Nome da propriedade

Valor

Observações

EntityMetadata.IsActivity

true

Especifique a entidade personalizada como uma entidade de atividade.

EntityMetadata.IsAvailableOffline

true

Uma entidade de atividade personalizada deve ter a disponibilidade offline.

EntityMetadata.IsMailMergeEnabled

false

Uma entidade de atividade personalizada não pode ter mala direta habilitada.

EntityMetadata.OwnershipType

OwnershipTypes.TeamOwned
or
OwnershipTypes.UserOwned

Uma entidade de atividade personalizada pode ser de propriedade do usuário ou da equipe.

EntityMetadata.ActivityTypeMask

0 - Nenhum
ou
1 – Atividade de comunicação

(Opcional) Especifique se uma atividade personalizada deve aparecer nos menus de atividade no aplicativo web.

  • Especifique 0 (nenhum) para ocultar nos menus de atividade. A atividade personalizada aparecerá nas grades associadas somente dessas entidades com as quais esteja associada (que tenha relação).

  • Especifique 1 (atividade de comunicação) para fazê-la aparecer nos menus de atividade.

Se você não especificar essa propriedade, a atividade personalizada é criada com o valor de propriedade padrão: 1. Isso é, a atividade personalizada está disponível nos menus da atividade. Além disso, o ActivityTypeMask pode ser definido somente no horário de criação da atividade, e uma vez definido, não pode ser alterado.

CreateEntityRequest.HasActivities

false

Uma entidade de atividade personalizada não deve ter relação com atividades.

CreateEntityRequest.HasNotes

true

Uma entidade de atividade personalizada não deve ter relação com anotações.

CreateEntityRequest.PrimaryAttribute

O SchemaName é “Subject”.

O nome do esquema do PrimaryAttribute para todas as atividades devem ser “Subject”.

Exemplo

O exemplo a seguir mostra como criar uma atividade personalizada usando o SDK do Microsoft Dynamics CRM.


String prefix = "new_";

String customEntityName = prefix + "instantmessage";

// Create the custom activity entity.
CreateEntityRequest request = new CreateEntityRequest
{
    HasNotes = true,
    HasActivities = false,
    PrimaryAttribute = new StringAttributeMetadata
    {
        SchemaName = "Subject",
        RequiredLevel = new AttributeRequiredLevelManagedProperty(AttributeRequiredLevel.None),
        MaxLength = 100,
        DisplayName = new Label("Subject", 1033)
    },
    Entity = new EntityMetadata
    {
        IsActivity = true,
        SchemaName = customEntityName,
        DisplayName = new Label("Instant Message", 1033),
        DisplayCollectionName = new Label("Instant Messages", 1033),
        OwnershipType = OwnershipTypes.UserOwned,
        IsAvailableOffline = true,

    }
};

_serviceProxy.Execute(request);

//Entity must be published

Confira Também

Entidades de atividade
Entidade ActivityPointer (atividade)
Exemplo: Criar uma atividade personalizada
Amostra: Criar e atualizar metadados da entidade

© 2017 Microsoft. Todos os direitos reservados. Direitos autorais