Definir campos calculados
Publicado: novembro de 2016
Aplicável a: Dynamics CRM 2015
No Microsoft Dynamics 365, os campos calculados permitem cálculos manuais automáticos usados em seus processos corporativos. Por exemplo, um vendedor pode querer saber a receita ponderada para uma oportunidade, que se fundamenta na receita estimada de uma oportunidade multiplicada pela probabilidade. Ou, desejam aplicar automaticamente um desconto, se o pedido for maior que $500. Um campo calculado pode conter valores resultando de várias operações simples de matemática ou operações condicionais, como Maior que ou Se-Também e várias outros. Você pode fazer isso usando a interface do usuário do Dynamics 365, sem precisar escrever código.
Os recursos de campos calculados:
Os campos calculados incluem cálculos que usam os campos da entidade atual ou entidades relacionadas principais.
O suporte da expressão está disponível na entidade atual e os campos da entidade primária relacionada nas seções Condição e nas seções Ação. As funções internas incluem:
ADDHOURS, ADDDAYS, ADDWEEKS, ADDMONTHS, ADDYEARS, SUBTRACTHOURS, SUBTRACTDAYS, SUBTRACTWEEKS, SUBTRACTMONTHS, SUBTRACTYEARS, DIFFINDAYS, DIFFINHOURS, DIFFINMINUTES, DIFFINMONTHS, DIFFINWEEKS, DIFFINYEARS, CONCAT, TRIMLEFT e TRIMRIGHT.
Observação
As funções DIFFIN foram introduzidas no Atualização 1 do Microsoft Dynamics CRM Online 2015. Elas não estão disponíveis em Atualização do Microsoft Dynamics CRM 2015 e Microsoft Dynamics CRM Online 2015.
Um suporte condicional avançado fornece várias condições e ramificação. As operações lógicas incluem os operadores E e OU.
As capacidades de edição visual incluem interface do usuário moderna e intellisense na seção AÇÃO.
Uma integração contínua de campos calculados com formulários, exibições, gráficos e relatórios está disponível em tempo real.
Alguns exemplos de campos calculados
Receita ponderada: Receita estimada multiplicada por probabilidade
Líquido valor: Ativo subtraído pelas responsabilidades de uma determinada conta
Custo de trabalho: Taxa base de até 40 horas, mais o tempo adicional estipulado
Número de contatos: Telefone para uma oportunidade com base na conta ou no contato
Contagem de cliente potencial: Campo simples que fornece ideias para a qualidade de um determinado cliente potencial
Acompanhamento por: Acompanhamento de uma atividade por um número especificado de dias com base na prioridade
Importante
Para criar um campo calculado, você deve ter o privilégio Gravação na entidade Perfil de Segurança de Campo. Se o campo calculado usa os campos protegidos no cálculo, considere proteger o campo calculado também, para evitar que os usuários acessem dados para os quais eles não tem permissões suficientes. O editor de campo calculado oferece um aviso, se você estiver criando um campo calculado que usa os campos protegidos em um cálculo, sugerindo a proteção do campo calculado.Para obter mais informações:Segurança no nível do campo.
Neste tópico
Exemplos de campos calculados
A sintaxe das funções do campo calculado
Considerações de campos calculados
Exemplos de campos calculados
Vamos examinar exemplos de campo calculado em mais detalhes. Definiremos os campos calculados com o editor do campo. Para abrir o Editor de Campos:
Vá para Configurações > Personalizações.
Escolha Personalizar dados > Componentes > Entidades.
Selecione a entidade desejada e selecione Campos. Selecione Novo.
No editor, forneça as informações necessárias para o campo, incluindo o Tipo de campo e Tipo de dados. O Tipo de campo é Calculado. Os tipos de dados disponíveis para o campo calculado:
Linha única de texto
Conjunto de Opções
Duas Opções
Número Inteiro
Número Decimal
Moeda
Data e Hora
O botão Editar ao lado de Tipo de Campo leva você para o editor de definição do campo calculado, no qual o novo campo calculado foi criado, mas nenhuma fórmula foi definida. A definição de campo calculado consiste em duas seções: CONDIÇÃO e AÇÃO.
Na seção Condição, é possível especificar uma entidade, campo, operador, tipo e valor. Na caixa suspensa para Entidade, selecione uma entidade atual ou uma entidade relacionada. Na caixa suspensa Campo, você tem uma seleção de todos os campos disponíveis para a entidade. Dependendo do operador você escolher, talvez seja necessário fornecer o tipo e o valor. É possível especificar várias condições usando operadores AND ou OR.
Na seção Ação, você fornece a fórmula para o campo calculado.
Observação
Você pode usar os dados dos registros de pesquisa em sua ação. É preciso primeiro selecionar o campo de pesquisa e então digitar um período. Depois disso, você pode selecionar um dos campos disponíveis na entidade relacionada. Por exemplo, no caso de <LookupFieldName>.<RelatedFieldName>, é possível selecionar: ParentAccountId.AccountNumber.
Observe que a segurança a nível de campo será ignorada na entidade relacionada, portanto, se houver dados confidenciais no campo acessado, sugerimos proteger o campo calculado também.
Receita da oportunidade estimada
Neste exemplo, estamos usando os campos da entidade de oportunidade para calcular a receita ponderada com base na probabilidade da oportunidade. No editor de campo para uma entidade de oportunidade, criamos um campo chamado “Receita Ponderada” e especificamos o tipo de campo como Calculado e o tipo de dados como Moeda. No editor de definição do campo calculado, na seção Condição, especificamos a oportunidade com um Status = Aberta. Em AÇÃO, a fórmula calcula a receita ponderada com base na receita estimada de oportunidade multiplicada pela probabilidade da oportunidade. As capturas de tela a seguir mostram a passo a passo como definir o campo Receita Ponderada calculada.
Criar o campo calculado chamado “Receita Ponderada”:
Definir a condição sobre as oportunidades:
Forneça a fórmula para a receita ponderada:
Completo:
Data de acompanhamento da oportunidade
Neste exemplo, usamos os campos do cliente potencial originado de uma oportunidade, para calcular a data apropriada quando acompanhar na oportunidade. No editor de campo para uma entidade de oportunidade, criamos um campo chamado “Data de acompanhamento” e especificamos o tipo como Calculado e o tipo de dados como Data e Hora. No editor de definição do campo calculado, na seção Condição, especificamos duas condições: o período de compra e o valor estimado de cliente potencial. Em AÇÃO, nós fornecemos duas fórmulas: uma para acompanhar a oportunidade imediata por uma semana e a outra, para acompanhar por um mês se a oportunidade não tem chance de acontecer imediatamente. As capturas de tela a seguir mostram a passo a passo como definir o campo "Data de Acompanhamento" calculada.
Criar o campo calculado chamado “Data de Acompanhamento”:
Defina as duas condições no cliente potencial original:
Forneça a fórmula para acompanhamento em uma semana:
Forneça a fórmula para acompanhamento em um mês:
Completo:
Dias de criação de um registro
Neste exemplo, usaremos a função DIFFINDAYS para calcular a diferença em dias a partir da hora em que um registro foi criado até a data atual.
Criar o campo calculado chamado "Diferença calculada em dias":
Fornecer a fórmula para o cálculo da diferença em dias
Completo:
A sintaxe das funções do campo calculado
A tabela a seguir contém as informações sobre a sintaxe para as funções fornecidas na seção de AÇÃO do campo calculado.
Dica
Os nomes das funções são especificadas em letras maiúsculas.
Sintaxe de função |
Descrição |
Tipo de retorno |
---|---|---|
ADDDAYS (número inteiro, data e hora) |
Retorna uma nova data e hora iguais à data e a hora fornecidas, mais o número de dias especificado. |
Data e Hora |
ADDHOURS (número inteiro, data e hora) |
Retorna uma nova data e hora iguais à data e a hora fornecidas, mais o número de horas especificado. |
Data e Hora |
ADDMONTHS (número inteiro, data e hora) |
Retorna uma nova data e hora iguais à data e a hora fornecidas, mais o número de meses especificado. |
Data e Hora |
ADDWEEKS (número inteiro, data e hora) |
Retorna uma nova data e hora que são iguais à data e a hora fornecidas, mais o número de semanas especificado. |
Data e Hora |
ADDYEARS whole number, date and time) |
Retorna uma nova data e hora iguais à data e a hora fornecidas, mais o número de anos especificado. |
Data e Hora |
SUBTRACTDAYS (número inteiro, data e hora) |
Retorna uma nova data e hora iguais à data e a hora fornecidas, menos o número de dias especificado. |
Data e Hora |
SUBTRACTHOURS (número inteiro, data e hora) |
Retorna uma nova data e hora iguais à data e a hora fornecidas, menos o número de horas especificado. |
Data e Hora |
SUBTRACTMONTHS (número inteiro, data e hora) |
Retorna uma nova data e hora iguais à data e a hora fornecidas, menos o número de meses especificado. |
Data e Hora |
SUBTRACTWEEKS (número inteiro, data e hora) |
Retorna uma nova data e hora que são iguais à data e a hora fornecidas, menos o número de semanas especificado. |
Data e Hora |
SUBTRACTYEARS (número inteiro, data e hora) |
Retorna uma nova data e hora iguais à data e a hora fornecidas, menos o número de anos especificado. |
Data e Hora |
DIFFINDAYS (data e hora, data e hora) |
Retorna a diferença em dias entre dois campos Data e Hora. Se as datas e as horas caírem no mesmo dia, a diferença será zero. |
Número Inteiro |
DIFFINHOURS (data e hora, data e hora) |
Retorna a diferença em horas entre dois campos Data e Hora. |
Número Inteiro |
DIFFINMINUTES (data e hora, data e hora) |
Retorna a diferença em minutos entre dois campos Data e Hora. |
Número Inteiro |
DIFFINMONTHS (data e hora, data e hora) |
Retorna a diferença em meses entre dois campos Data e Hora. Se as datas e as horas caírem no mesmo mês, a diferença será zero. |
Número Inteiro |
DIFFINWEEKS (data e hora, data e hora) |
Retorna a diferença em semanas entre dois campos Data e Hora. Se as datas e as horas caírem na mesma semana, a diferença será zero. |
Número Inteiro |
DIFFINYEARS (data e hora, data e hora) |
Retorna a diferença em anos entre dois campos Data e Hora. Se as datas e as horas caírem no mesmo ano, a diferença será zero. |
Número Inteiro |
CONCAT (linha única de texto, linha única de texto, … linha única de texto) |
Retorna uma sequência que é o resultado da concatenação de duas ou mais sequências. |
Cadeia de caracteres |
TRIMLEFT (linha única de texto, número inteiro) |
Retorna uma sequência que contém uma cópia de sequência especificada sem os primeiros caracteres N. |
Cadeia de caracteres |
TRIMRIGHT (linha única de texto, número inteiro) |
Retorna uma sequência que contém uma cópia de sequência especificada sem os últimos caracteres N. |
Cadeia de caracteres |
Observação
Todas as funções DIFF exigem que o primeiro campo Data e Hora e o segundo campo Data e Hora tenha o mesmo comportamento: Local do Usuário, Somente Data ou Independente de Fuso Horário. Se o comportamento do segundo campo não corresponder ao comportamento do primeiro campo, a mensagem de erro será mostrada, indicando que o segundo campo não poderá ser usado na função atual.Para obter mais informações:Comportamento e formato do campo de data e hora.
Observação
Não é possível inserir uma data, como 01/01/2015, como o valor da data de um campo calculado. Os valores de data e de DataHora podem ser configurados ou comparados somente com outros campos de DataHora.
Na função CONCAT, é possível usar as sequências literais como únicas linhas de texto, os campos de entidades que contenham uma única linha de texto ou uma combinação de ambas. Por exemplo: CONCAT (Nome, Sobrenome, "é um gerente. "). Se uma sequência contiver aspas, preceder cada marca com o caractere de escape de barra invertida (\), como este exemplo: “Esta sequência contém as \ “aspas. \"“, isso garante que às aspas na sequência não são tratadas como os caracteres especiais que separam as sequências.
Os exemplos a seguir mostram como usar as funções TRIMLEFT e TRIMRIGHT. Eles contêm as sequências iniciais e as sequências resultantes, retornadas pelas funções TRIMLEFT e TRIMRIGHT:
TRIMLEFT ("RXX10-3456789”, 3), retorna a sequência "10-3456789”
TRIMRIGHT ("20-3456789RXX”, 3), retorna a sequência ”20-3456789"
Considerações de campos calculados
Você deve estar ciente de determinadas condições e limitações ao trabalhar com os campos calculados:
Consultas salvas, gráficos e visualizações podem ter um máximo de 10 campos calculados exclusivos.
Os valores de campos calculados não são exibidos no modo offline Dynamics 365 Outlook nas exibições de bloco ou no formulário principal da entidade.
Um número máximo de campos calculados encadeados é de 5.
Um campo calculado pode referir a si próprio ou ter cadeias cíclicas.
Se você alterar um dos operadores de condição em várias cláusulas de condição, todos os operadores de condição serão atualizados nessa condição. Por exemplo, na cláusula do IF (x > 50) OR (y ==10) OR (z < 5), se você alterar o operador do OR para o operador do AND, então todos os operadores do OR na cláusula se tornarão operadores do AND.
É possível acessar os campos parentais através do campo Pesquisa para a entidade pai, como <LookupFieldName>.<FieldName>. Isso não é possível com campos Pesquisa de várias entidade, como Customer, que pode ser Account ou Contact. Entretanto, algumas entidades possuem os campos Pesquisa individuais para uma entidade específica, como ParentAccountid.<FieldName> ou ParentContactid.<FieldName>.
A classificação é desabilitada em:
Um campo calculado que contenha um campo de um registro primário.
Um campo calculado que contenha um campo lógico (por exemplo, o campo de endereço).
Um campo calculado que contenha outro campo calculado.
Os campos calculados podem divulgar apenas duas entidades.
Um campo calculado pode conter um campo de outra entidade (que abrange duas entidades – entidade atual e registro primário).
Um campo calculado não tem um campo calculado de outra entidade que contenha também outro campo de uma entidade diferente (divulgação de três entidades):
(Entidade Atual)Campo Calculado <- (Registro Primário) Campo Calculado 1 < - (Registro Primário) Campo calculado 2.
Não é possível disparar plug-ins ou fluxos de trabalho em campos calculados.
Você não pode modificar um campo simples existente para um campo calculado. Se seu aplicativo atual estiver usando JavaScript ou plug-ins para calcular um campo, você não poderá usar o recurso de campos calculados sem criar um novo campo.
As regras de detecção de duplicidades não são acionadas em campos calculados.
Um valor acumulado não pode referenciar um campo calculado que utiliza outro campo calculado, mesmo que todos os campos do outro campo calculado estejam na entidade atual.
Confira Também
Criar e editar campos
Definir campos cumulativos
Vídeo: campos cumulativos e calculados Microsoft Dynamics CRM 2015
© 2016 Microsoft Corporation. Todos os direitos reservados. Direitos autorais