Dynamics do Zero ao PRO · Lição 15 de 48 · Módulo 2

LIÇÃO 15Regras de Negócio Sem Código

Uma Business Rule é uma lógica SE/ENTÃO que roda no formulário, em tempo real, sem JavaScript e sem Plugin. O campo fica obrigatório quando a prioridade é Alta. A seção de diagnóstico aparece só quando o tipo é "Defeito". O alerta aparece quando o produto está fora de garantia. Tudo configurável visualmente.

🎯

Resultado desta lição

Ao final, você terá criado três regras de negócio para o formulário de Caso: uma que torna campos obrigatórios por prioridade, uma que exibe alertas por tipo de problema e uma que oculta seções quando não aplicável.

As 6 ações disponíveis em uma Business Rule

⚠️

Mostrar mensagem

Exibe alerta de erro ou aviso no formulário

📌

Campo obrigatório

Torna o campo obrigatório ou opcional dinamicamente

🔒

Bloquear campo

Deixa o campo somente leitura com base em condição

👁️

Mostrar/ocultar

Exibe ou esconde campo ou seção dinamicamente

✏️

Definir valor

Preenche automaticamente um campo com um valor

🎨

Recomendação

Sugere um valor sem obrigar, com ícone de sugestão


Passo a passo — criando 3 regras de negócio

  1. Acesse o editor de Business Rules

    → make.powerapps.com → Tables → Case → Business rules
    → Clique em + New business rule

    O editor visual abre com um canvas de arrastar e soltar. À esquerda, a condição. À direita, as ações do lado verdadeiro e falso.

    Escopo da regra: Uma Business Rule pode rodar no formulário (Entity escopo) ou somente em um formulário específico. Escolha Entity para que a regra valha em todos os formulários da tabela, incluindo criação via API. Escolha um formulário específico se quiser a regra só na interface.
  2. Regra 1 — Descrição obrigatória para Alta Prioridade

    Nome da regra: Alta Prioridade exige Descrição

    No canvas, configure a condição:

    Condição: Priority → Equals → High

    No lado True (condição verdadeira), arraste a ação Set Field Required:

    Ação True: Description → Business Required
    Ação True: Show message → "Casos de alta prioridade exigem descrição detalhada do problema."

    No lado False (condição falsa):

    Ação False: Description → Optional

    Clique em Save → Activate.

    Ative após salvar: Uma Business Rule salva mas não ativada não funciona. Sempre clique em Activate após salvar — e confirme a ativação no diálogo.
  3. Regra 2 — Alerta quando produto fora de garantia

    Nome da regra: Aviso — Produto fora de garantia

    Esta regra usa a tabela Produto Atendido (não Case). Acesse:

    → Tables → Produto Atendido → Business rules → + New
    Condição: Garantia Vigente → Equals → No
    Ação True: Show message (Error) → "Produto fora de garantia. Verificar cobertura contratual antes de prosseguir com atendimento."

    Clique em Save → Activate.

    Tipos de mensagem: Error bloqueia o salvamento até o usuário reconhecer. Warning exibe o alerta mas permite salvar mesmo assim. Information é informativo sem bloquear. Use Error para validações críticas, Warning para avisos, Information para orientações.
  4. Regra 3 — Ocultar seção de escalonamento quando resolvido

    Nome da regra: Ocultar escalonamento em casos resolvidos
    Condição: Status → Equals → Resolved
    Ação True: Set Visibility → Seção "Escalonamento" → Hide
    Ação True: Set Field Lock → Priority → Locked (somente leitura)
    Ação False: Set Visibility → Seção "Escalonamento" → Show

    Clique em Save → Activate.

    Bloquear campos em casos resolvidos: Isso impede alterações acidentais em campos importantes após o fechamento — sem precisar de JavaScript ou Plugin. Um recurso simples que adiciona muita integridade ao processo.
  5. Teste as regras no formulário

    → Customer Service Hub → abra ou crie um caso
    → Mude o campo Prioridade para High
    → Tente salvar sem preencher a Descrição

    O formulário deve bloquear o salvamento e exibir a mensagem "Casos de alta prioridade exigem descrição detalhada do problema." — sem você ter escrito uma linha de código.

    Teste 2: Abra um caso Resolvido → verifique se a seção de Escalonamento está oculta e os campos bloqueados

Checklist

Business Rule vs. JavaScript vs. Plugin — quando usar cada um

Business Rule: Use para lógica simples de formulário — campo obrigatório, ocultar/mostrar, alertas. Sem código, fácil de manter, qualquer analista funcional consegue editar.

JavaScript (Web Resource): Use quando a lógica é mais complexa — manipular múltiplos campos ao mesmo tempo, chamar APIs externas, interações avançadas de UX que Business Rules não suportam.

Plugin (.NET): Use quando a lógica precisa rodar no servidor — independente de formulário, em qualquer criação/atualização de registro, inclusive via API e Power Automate. É o mais poderoso e o mais complexo.

A ordem de preferência para um analista funcional: Business Rule → JavaScript → Plugin. Quanto menos código, melhor para manutenção. Use código apenas quando não há alternativa declarativa.

Foto de Pablo Maruk
Pablo Maruk
Analista Funcional de Dynamics · 16 anos de TI · EUA & Europa