Criar e editar regras de negócios
Publicado: novembro de 2016
Aplicável a: Dynamics CRM 2015
No Microsoft Dynamics 365, é possível aplicar a lógica de formulário sem escrever o código Javascript ou desenvolver plug-ins. As regras comerciais oferecem uma interface declarativa simples para implementar e manter regras de negócios usadas frequentemente e de rápida alteração que serão aplicadas aos formulários principal e de criação rápida e para uma entidade no aplicativo Web e o Microsoft Dynamics CRM para Tablets. É aplicado aos formulários Principal e Rápido no cliente Outlook nos modos online e offline.
Neste tópico
O que são regras de negócios?
O que as regras de negócios podem fazer?
Como posso configurar regras de negócios?
Regras comerciais do servidor e suporte para a lógica IF-Else e E/OU
Limitações de regras comerciais
Localize as mensagens de erro usadas nas regras de negócios
O que são regras de negócios?
As regras comerciais oferecem uma maneira declarativa fácil de avaliar consistentemente a lógica comercial no cliente e servidor, sem precisar escrever código. A avaliação lógica no lado cliente é mais imediata porque é realizada quando você abre e atualiza o formulário do registro, enquanto o lado do servidor oferece avaliação lógica consistente no servidor.
A regra de negócios será executada apenas no cliente, caso o escopo da regra seja definido no nível de formulário (todos os formulários ou um formulário específico). As regras são executadas quando um formulário de registro é carregado e atualizado.
A regra de negócios será executada no servidor e no cliente, caso o escopo da regra seja definido em um nível de entidade. As regras no lado do servidor são executadas quando um registro é criado ou salvo.
O que as regras de negócios podem fazer?
As regras de negócios permitem um subconjunto de funcionalidades fornecidos por scripts de formulário. É possível definir condições e aplicar as seguintes ações:
Definir valores do campo
Limpar valores de campo
Definir níveis de requisito do campo
Exibir ou ocultar campos
Habilitar ou desabilitar campos
Validar dados e exibição de mensagens de erro
As regras de negócios podem ser aplicadas a todos os formulários de entidade principal ou de criação rápida ou formulários principais específicos escolhidos. Também é possível definir uma regra para aplicar a uma entidade.
Você pode encaminhar regras de negócios de uma organização para outra, incluindo-as em uma solução e pode instalar soluções que contém regras de negócios.
Exemplos de como definir ou limpar valores de campo
Vamos considerar alguns exemplos. Na primeira regra, para qualquer compra imediata, você aplica um desconto de 5%. Com a segunda regra, você limpa todos os descontos caso o período de compra seja desconhecido.
A definição de regra a seguir mostra como definir um valor de campo como um desconto de 5% para compras imediatas.
A definição de regra a seguir mostra como limpar um valor de campo – limpa todos os descontos para compras com um período de compra desconhecido.
Como posso configurar regras de negócios?
Primeiro, é necessário ter os privilégios necessários para navegar para Configurações > Personalização. Isso geralmente exige a função de segurança Administrador do Sistema ou Personalizador do Sistema. Para ativar uma regra de negócios, você deve ter o privilégio Ativar Regras de Negócios.
Observação
As regras de negócios funcionarão apenas para o Entidades atualizadas ou entidades personalizadas.
Há quatro maneiras que você pode exibir, criar ou editar regras comerciais:
Solução > Entidade
De uma solução, como a solução padrão, você encontrará um nó Regras de Negócios para todas as entidades.Solução > Entidade > Campo
Ao exibir um campo de entidade, você encontrará um nó Regras de Negócios que irá mostrar somente as regras de negócios que incluem esse atributo.Editor de Formulários
No editor de formulários, você pode usar o botão Regras de Negócios na faixa de opções para mostrar Gerenciador de Regras de Negócios no lado direito. Isso mostrará todas as regras de negócios que serão aplicadas somente para esse formulário.Se você criar uma regra pelo editor de formulários, o escopo padrão é para esse formulário.Para obter mais informações:Definir o escopo
Editor de Formulários > Campo
Ao exibir as propriedades para um campo usado em um formulário, você verá uma guia Regras de Negócios que mostra as regras de negócios que incluem esse atributo.
Se uma regra existente for semelhante a uma regra que você deseja criar, é possível abrir essa regra e usar o botão Salvar Como para copiar uma regra existente como um ponto de partida para uma nova regra.
Definir o escopo
No formulário direito superior, use o campo Escopo para definir o escopo da regra.
Escopo |
Onde executar |
---|---|
Entidade |
Todos os formulários e servidores |
Todos os formulários |
Todos os formulários |
Formulário específico |
Somente esse formulário |
Não é possível selecionar vários formulários específicos. Se você escolher Todos os Formulários, a regra será aplicada a todos os formulários principais e ao formulário de criação rápida, pois o formulário inclui todos os campos referenciados pela regra. Se você criar uma nova regra de negócios usando o editor de formulários, o escopo padrão é apenas para esse formulário.
Regras comerciais do servidor e suporte para a lógica IF-Else e E/OU
Anteriormente, você tiver a capacidade de avaliar as regras comerciais com um cliente individual. Para avaliar a lógica da regra comercial no servidor e aplicar em todos os clientes, você precisa fornecer os plug-ins, que são caros para desenvolver e manter. Definir o escopo da regra comercial no nível da entidade oferece a capacidade de avaliar a regra de negócios uma vez no servidor e aplicar a todos os clientes sem escrever código. Você pode mover a lógica para cenários comumente usados fora de plug-ins em regras de negócios de nível entidade. Além disso, fornecemos suporte para valores padrão em uma regra de negócios. Por exemplo, se Contoso faz negócios nos Estados Unidos, uma regra de negócios simples que pode ser implementada na criação de um novo cliente potencial, o país/região é definido automaticamente para EUA.
Observação
O escopo é definido como uma Entidade e você cria ou edita um registro usando os formulários, a regra é executada no cliente, mas, posteriormente é executada novamente no servidor. Dessa forma, impedimos que você crie uma referência circular para um campo, se você definir o escopo a uma Entidade. Por exemplo, não é possível definir Limite de Crédito = Limite de Crédito + 1000, pois o valor aumentaria uma vez no lado cliente e tentaria executar novamente no servidor.
Para um situações comerciais mais complexas, você precisa usar várias regras de negócios que estamos avaliando usando o operador lógico AND. Todas as condições devem ser verdadeiras antes das ações serem aplicadas. Não houver nenhum suporte do If-Else ou AND/OR. Essa funcionalidade é agora adicionada e permite criar regras de negócios mais elaboradas com menos esforço. O exemplo a seguir de regras de negócios usa a lógica If-Else:
Há algumas limitações que você deve estar ciente:
As instruções If-Else aninhadas não têm suporte.
Agrupamento de expressões em uma condição não tem suporte.
Expressões podem ser combinadas com AND ou com OR, mas não ambos.
Configurar condições
Se você deseja alterar uma regra de negócios ativada, deve desativá-la para poder editar.
Para adicionar uma condição, clique no ícone + e uma nova linha de condição será exibida com os valores padrão definidos. Insira o nome do campo para definir o Campo e escolha o Operador adequado. As opções do operador irão mudar dependendo do tipo de dados do campo.
As condições são verificadas sempre que qualquer campo referenciado na condição for alterado.
É possível escolher três tipos diferentes de condições:
Campo
Use esse tipo para comparar o valor de um campo do formulário com outro.Valor
Use esse tipo para comparar o valor de um campo do formulário com um valor inserido.Fórmula
Essa opção é exibida somente tipos de dados de data ou numérico . Não aparece para os campos que contêm texto. Use esse tipo para comparar o resultado do cálculo simples que pode usar um valor em outro campo de formulário ou um valor inserido.
Quando tiver concluído de inserir ou editar a regra, escolha o ícone de marca de seleção para salvar ou no ícone (X) para rejeitar as alterações. Para remover uma condição salva anteriormente, coloque o cursor sobre a condição e escolha o botão Excluir.
Configurar ações
Para adicionar uma ação, escolha o botão Adicionar+ e você terá as seguintes opções:
Mostrar mensagem de erro
Use essa ação definir uma mensagem de erro em um campo se os dados deles forem inválidos. O texto especificado para a mensagem será exibido com um ícone de erro próximo ao campo.O registro não pode ser salvo quanto essa mensagem for exibida. Depois que os dados no campo forem corrigidos de acordo com as condições definidas na regra, a mensagem desaparecerá e o registro pode ser salvo.
Definir valor do campo
Escolha Campo e Tipo. Há três tipos:Campo
Use esse tipo para definir o valor de um campo do formulário com um valor de outro campo.Valor
Use esse tipo para definir o valor de um campo do formulário com um valor inserido.Fórmula
Essa opção é exibida somente tipos de dados de data ou numérico . Não aparece para os campos que contêm texto. Use esse tipo para definir o valor do resultado de um cálculo simples que pode usar um valor em outro campo de formulário ou um valor inserido.
Definir negócios necessários
Use esse tipo para alterar o nível de requisito do campo. As opções são Nenhum Negócio Necessário e Negócios Necessários. Não há opção para definir isso para necessidade de negócios.Definir visibilidade
Use esse tipo para alterar se o campo é exibido no formulário. Os padrões são Mostrar Campo e Ocultar Campo.Bloquear ou desbloquear campo
Use esse tipo para alterar se o campo está habilitado no formulário. As opções são Bloquear e Desbloquear. Quando o campo estiver bloqueado, os usuários não poderão editar o valor no campo.
Após definir uma ação, você pode alterar a ordem ou excluir usando as opções disponíveis ao colocar seu cursor sobre a ação.
Definir a descrição
Definir uma descrição é opcional. Não são exibidos em algum outro local, exceto no editor de regras de negócios. Mas é uma boa ideia incluir uma descrição do que a regra deve fazer e por que foi adicionada.
Testar e ativar as regras de negócios
Antes que qualquer usuário possa usar as regras de negócios criadas, é necessário ativá-las. Antes de ativar, você deve testá-las. Você pode testar regras de negócios usando o botão Visualizar no editor de formulários.
Limitações de regras comerciais
As regras de negócios são destinadas a resolver ações comuns. Comparado ao que um desenvolvedor pode realizar usando scripts de formulários, as regras de negócios têm limitações. Entretanto, as regras de negócios não são destinadas a substituir scripts de formulário.
Eis algumas limitações ao usar as funções de negócios:
As regras de negócios são executadas apenas quando o formulário carrega e os valores de campo são modificados. Não execute quando um registro é salvo, a menos que o escopo para a regra é definido no nível da entidade.
As regras de negócios funcionam somente com campos. Se você precisa interagir com outros elementos visíveis, como guias e seções, dentro do formulário, é necessário usar scripts de formulário.
Quando você define um valor de campo usando uma regra de negócios, qualquer manipulador de evento OnChange para esse campo não será executado. É possível reduzir o potencial para uma referência circular, que pode resultar em um loop infinito.
Se uma regra de negócios faz referência a um campo que não está presente no formulário, a regra simplesmente não será executada. Não há nenhuma mensagem de erro.
Os campos Número inteiro que usam os formatos para Fuso horário, Duração ou Idioma não aparecerão no editor de funções para condições ou ações, portanto, não podem ser usados com funções de negócios.
Você não pode adicionar mais de dez condições caso outra condição seja uma regra empresarial.
Para o Microsoft Dynamics CRM para Tablets, a definição de regras de negócios foi baixada e armazenada em cache quando o CRM para tablets abre. As alterações feitas nas regras de negócios não são aplicadas até que o CRM para tablets seja fechado e reaberto.
Quando você define o valor de um campo de pesquisa, o texto do valor de campo principal que está definido no formulário sempre corresponderá ao texto que estiver visível na definição de regras. Se o texto representando o valor de campo principal do registro que você estiver definindo nas alterações de pesquisa, o valor definido pela sua regra continuará a usar a próxima parte do valor de campo principal definido pela regra. Para corrigir isso, atualize a definição de regra para usar o valor de campo do nome principal atual.
É importante entender que o valor definido para a pesquisa tem três partes:
Name: O texto do valor de campo principal visto no formulário.
Id: O identificador exclusivo do registro. Estes são os dados salvos. Não ficará visível no formulário.
LogicalName: O nome da entidade, como contact, account ou opportunity.
A regra definirá todas as três partes desse valor. O valor de Id para um registro específico nunca muda, mas o valor de Name pode mudar.
Por exemplo, se você definir uma regra para definir uma consulta para um contato com o Nome completo de “Nome Antigo”, este texto é o Name que será exibido na pesquisa quando for definido pela sua regra de negócios mesmo se alguém alterar posteriormente o Nome Completo do contato para “Novo Nome". O valor de Id de pesquisa será definido corretamente para o registro esperado, mas Name (que não será salvo) refletirá o valor de definição da regra em vez do valor atual de Nome Completo do registro de referência.
Limpar as ações das suas regras
Com exceção da exibição de mensagens de erro, você deve ter certeza de incluir uma regra de negócios separada para desmarcar qualquer ação que você pode ter aplicado. Por exemplo, digamos que você tenha uma regra em uma entidade Conta que diz:
Se Método de Contato Preferido é igual a “Telefone”
Defina Telefone Comercial como Negócio Necessário
Isso funcionará sempre que o campo Forma de Contato Preferido for definido como Telefone. Mas se o campo Forma de Contato Preferido for alterado posteriormente para outra coisa, o campo Telefone permanecerá Requisitos Comerciais. Para desmarcar essa ação, você precisa incluir uma regra separada para aplicar a seguinte lógica:
Se Método de Contato Preferido não é igual a “Telefone”
Defina Telefone Comercial como Não Exigido pelo Negócio
A ação Mostrar Mensagem de Erro é diferente porque avalia automaticamente qualquer condição usada para definir a mensagem de erro e removerá se as condições não forem mais verdadeiras.
Localize as mensagens de erro usadas nas regras de negócios
Se você tiver mais de um idioma provisionados para sua organização, será possível localizar qualquer mensagem de erro definida. Sempre que você define uma mensagem, uma etiqueta é gerada pelo sistema. Se você exportar traduções em sua organização, é possível adicionar versões traduzidas de mensagens e importar as etiquetas de volta para o Microsoft Dynamics 365, de forma que as pessoas que usam idiomas diferentes do idioma base possam ver as mensagens traduzidas.
Confira Também
Video: Novos recursos de personalização do Microsoft Dynamics CRM - Regras empresariais
Criar e editar processos
Criar e desenvolver formulários
Criar e editar exibições
SDK: Criar ou editar como as regras de negócios são iniciadas
© 2016 Microsoft Corporation. Todos os direitos reservados. Direitos autorais