Condições
Uma condição decide o caminho: se for atendida, o fluxo segue por um ramo; se não, pelo outro.
Como aparece
Na tela de edição, uma condição aparece como um losango com duas saídas:
- Se for atendida: as etapas executadas quando a condição é verdadeira.
- Se não for atendida: as etapas executadas quando ela é falsa.
Qualquer um dos dois ramos pode ficar vazio. Um ramo vazio significa “não faça nada neste caso”. Quando o ramo escolhido termina, o fluxo continua com a etapa que estiver depois da condição, se houver.
Configurar uma condição
- Clique em Adicionar uma etapa › Adicionar condição. Abre-se Editar condição.
- Clique em Adicionar uma condição. Abre-se a busca de campos: digite parte do nome ou percorra a lista, onde cada campo traz o ícone do seu tipo (texto, número, valor, opções, sim ou não, data). Os que dizem “consultado na execução” são lidos no momento de avaliar, não do evento.
- Escolha a Comparação no menu; a escolhida aparece marcada.
- Digite ou escolha o Valor. Em um valor monetário, escolha também a Moeda.
- Para somar outra regra, clique em Adicionar outra condição e escolha E ou Ou. Para tirar uma, clique no X do cartão. Cabem até 10 regras.
- Clique em Concluído.
Cada regra é um cartão. O primeiro diz Se; os que você adiciona com E dizem E, e uma regra adicionada com Ou abre um grupo novo, separado por uma linha que diz Ou.
E, Ou e grupos
| União | É atendida quando | Exemplo |
|---|---|---|
| E | As duas regras são verdadeiras. | Total é maior ou igual a 50.000 USD e Tipo de pagamento é Entrada. |
| Ou | Basta um grupo completo ser atendido. | Tipo de pagamento é Entrada ou Tipo de pagamento é Parcela. |
O E pesa mais que o Ou: as regras unidas com E formam um grupo, e a condição é atendida quando qualquer grupo completo é atendido. “Se Total é maior que 100.000 MXN e Tipo de pagamento é Entrada, ou se Cliente contém ACME” é atendida por uma venda grande com entrada ou por qualquer venda à ACME.
Para “A e (B ou C)”, repita A em cada grupo: “Se A e B, ou se A e C”. Você também pode colocar uma condição dentro do ramo de outra.
Comparações por tipo de dado
O editor só oferece as comparações que fazem sentido para cada campo.
Texto
Número, Cliente, Moeda, Motivo, Mensagem, E-mail, País e similares.
| Comparação | É atendida quando |
|---|---|
| é igual a | O texto é exatamente o valor. |
| não é igual a | O texto é diferente do valor. |
| contém | O valor aparece em qualquer parte do texto. |
| não contém | O valor não aparece no texto. |
| está vazio | O dado não tem conteúdo. |
| não está vazio | O dado tem conteúdo. |
As comparações de texto não diferenciam maiúsculas de minúsculas: “acme” é igual a “ACME”.
Número
Dias de atraso, Dias até expirar, Documentos vencidos, Dados pendentes de verificação, Hora e similares.
| Comparação | É atendida quando |
|---|---|
| é maior ou igual a | O número é igual ou maior que o valor. |
| é maior que | O número é maior que o valor. |
| é menor ou igual a | O número é igual ou menor que o valor. |
| é menor que | O número é menor que o valor. |
| é igual a | O número é exatamente o valor. |
| não é igual a | O número é diferente do valor. |
Digite o valor como número, sem separadores: 30, não 30 dias. Se o evento não trouxer o número, nenhuma comparação numérica é atendida e o fluxo segue por Se não for atendida.
Valor monetário
Total, Saldo pendente, Valor pago, Valor prometido, Valor em disputa, Valor reembolsado, Valor do repasse, Preço de tabela e os totais das consultas.
Um valor monetário é comparado com a moeda dele. Além do valor, você escolhe a Moeda, e a regra fica como “Total é menor que MX$ 50.000,00”. Uma regra nova começa na moeda do seu negócio, e você pode trocá-la.
| Comparação | É atendida quando |
|---|---|
| é maior ou igual a, é maior que, é menor ou igual a, é menor que, é igual a | O valor está na moeda da regra e atende à comparação. |
| não é igual a | O valor é outro ou está em outra moeda. |
O Cord não converte entre moedas para decidir: um orçamento de 49.000 USD não é “menor que 50.000 MXN”, porque são quantias em moedas diferentes, então essa regra não é atendida. Se você vende em várias moedas, adicione uma regra por moeda unida com Ou: “Total é menor que 50.000 MXN” ou “Total é menor que 2.500 USD”.
Digite o valor como número, sem símbolo nem separadores: 50000, não R$ 50.000. Sem moeda, a regra não pode ser publicada: “Escolha a moeda de “Total”.” Os totais das consultas estão na moeda do seu negócio.
Opções
Status no evento, Status atual, Tipo de pagamento, Decisão, Resultado da contestação, Quem originou, Quem escreveu e Condições de pagamento.
| Comparação | É atendida quando |
|---|---|
| é | O dado tem a opção escolhida. |
| não é | O dado tem qualquer outra opção. |
O valor é escolhido em uma lista, então não há erros de digitação.
Sim ou não
Ativo (produtos), Pode receber pagamentos online e Pode receber repasses.
| Comparação | É atendida quando |
|---|---|
| é sim | O dado é verdadeiro. |
| é não | O dado é falso. |
Status no evento versus status atual
Os orçamentos e as faturas têm dois dados de status, e a diferença importa:
| Dado | Que valor tem |
|---|---|
| Status no evento | O status que o documento tinha no momento em que o evento aconteceu. Nunca muda. |
| Status atual do orçamento / Status atual da fatura | O status que o documento tem no momento em que a condição é avaliada. No editor, você o reconhece porque diz “consultado na execução”. |
Logo depois do evento, os dois coincidem. A diferença aparece depois de uma espera: se um workflow espera 3 dias após enviar um orçamento, “Status no evento” continuará dizendo Enviado, mas “Status atual” dirá Visualizado, Aprovado ou o que tiver acontecido nesses dias.
Regra prática: depois de uma espera, use sempre o status atual. É o que permite perguntar “continua sem ser aberto?” ou “continua sem ser pago?”.
Valores possíveis do status de um orçamento: Rascunho, Enviado, Visualizado, Aprovado, Recusado, Expirado, Pago e Faturado. De uma fatura: Rascunho, Em aberto, Paga, Cancelada e Incobrável.
O que mudou, não só quanto vale
Três eventos também trazem o valor anterior, então uma condição pode perguntar pela mudança e não só pelo valor atual:
| Gatilho | Campos com valor anterior |
|---|---|
| Um orçamento é editado e reenviado | Total |
| Um cliente é atualizado | Empresa, E-mail, Condições de pagamento |
| Um produto é atualizado | Preço de tabela, Ativo |
Nesses campos, o editor oferece mais dois operadores: mudou e não mudou. Além disso, você tem o valor anterior como campo próprio (Total anterior, Preço de tabela anterior etc.), que serve tanto em condições quanto nos seus textos.
Exemplo: “quando um orçamento for reenviado, se o Total mudou e o Total é menor que o Total anterior, avise o proprietário”: um desconto de última hora, que uma condição apenas sobre o total não distingue de uma venda que sempre valeu isso.
Se o evento não trouxer o valor anterior, mudou e não mudou respondem que não: um evento anterior a este recurso diria “mudou” para tudo, e isso é pior do que não responder.
Vários caminhos
Quando não são dois caminhos e sim vários, use Adicionar uma etapa › Vários caminhos em vez de aninhar condições. Cada caminho tem seu nome e suas condições, e depois de todos vem Caso contrário.
- O Cord verifica os caminhos em ordem e segue pelo primeiro que for atendido, mesmo que outro também seja. Coloque primeiro o mais exigente: “Grande” (Total é maior que R$ 200.000,00) antes de “Médio” (Total é maior que R$ 100.000,00).
- Se nenhum for atendido, segue por Caso contrário, que pode ficar vazio.
- Cabem até 5 caminhos. Reordene com Mover para cima e Mover para baixo no painel.
- Cada caminho precisa de pelo menos uma condição para publicar.
- Em Execuções, a etapa diz por onde seguiu: “Seguiu por: Grande”.
Condições aninhadas
Você pode colocar uma condição dentro do ramo de outra, até 4 níveis de profundidade. Exemplo com dois níveis, disparado por Um orçamento é aprovado:
- Condição: Total é maior ou igual a 100.000.
- Se for atendida: condição: Moeda é igual a USD.
- Se for atendida: avisar toda a equipe.
- Se não for atendida: avisar o proprietário da conta.
- Se não for atendida: criar uma tarefa de acompanhamento normal.
- Se for atendida: condição: Moeda é igual a USD.
Todas as etapas, em todos os ramos, contam para o máximo de 30 etapas por workflow.
Erros comuns ao publicar
| Aviso | O que fazer |
|---|---|
| Adicione pelo menos uma condição. | A condição não tem regras. Adicione uma ou exclua a etapa. |
| Uma condição usa um campo que não existe para este evento. | Você trocou o gatilho e o novo não traz esse dado. Escolha outro campo. |
| Escolha como comparar “Total”. | Falta a comparação. |
| Preencha o valor de “Total”. | Falta o valor. |
| “Total” precisa ser um número. | Você digitou texto em um campo numérico. Tire símbolos e separadores. |
| Escolha um valor válido para “Tipo de pagamento”. | A opção escolhida não existe para este campo. Escolha-a de novo. |
No histórico
Cada condição avaliada aparece na execução como Atendida ou Não atendida, assim você sabe que ramo ela seguiu. Veja Execuções e erros.