Conditional - Switch
Objetivo
O conector Switch é utilizado para criar uma estrutura de controle de fluxo, permitindo que o processo tome diferentes caminhos com base em condições específicas. Ele é especialmente útil para lidar com múltiplas opções ou cenários em um processo.
Principais cenários de uso:
- Roteamento de processos com base em valores de entrada.
- Implementação de lógica condicional complexa.
- Redução de complexidade em processos com múltiplas ramificações.
Configuração
O conector Switch avalia de forma sequencial os casos definidos, comparando o valor de entrada com os valores de comparação em cada caso. O processo seguirá o caminho do primeiro caso que corresponder ao valor de entrada. Se nenhum caso corresponder, o processo seguirá o caminho definido para Default (Opcional) (caso padrão).
O Default não precisa ser configurado na parametrização do conector; ele pode ser adicionado diretamente no canvas, caso seja necessário.
Campos principais
Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
Valor de Entrada | Any | *Sim | Valor constante ou variável a ser utilizado para comparação. |
Tipo de Dado | Dropdown | *Sim | Define o tipo de dado para a comparação (String, Number ou Data e Hora). |
Tipo de Dado O tipo de dado é definido globalmente para o conector. Isso significa que ele é aplicado a todas as comparações dentro dos casos, garantindo consistência na forma como as validações são realizadas em todo o fluxo.
Guia de tipos de dados:
- String: Utilizado para comparação de texto. A comparação pode ser case sensitive ou case insensitive, dependendo da configuração global.
- Number: Utilizado para comparação de valores numéricos, incluindo números inteiros e decimais (sistema monetário).
- Data e Hora: Utilizado para comparação cronológica. O formato pode ser definido globalmente como Date Time, Date, Time ou Detecção Automática.
Campos em cada caso
String (Comparação de Texto)
Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
Case Insensitive | Boolean | Não | Define se as comparações devem ignorar a diferença entre letras maiúsculas e minúsculas. |
Valor para Comparação | String | *Sim | Valor a ser comparado com o valor de entrada. O processo seguirá este caminho se houver correspondência. |

Case Insensitive A configuração de Case Insensitive é aplicada globalmente. Ela afetará todas as comparações de texto do conector, independentemente do caso específico.
- Habilitado: O Switch ignorará diferenças entre maiúsculas e minúsculas. Exemplo: "Texto", "texto" e "TEXTO" são considerados iguais.
- Desabilitado: O Switch considerará as diferenças. Exemplo: "Texto" e "texto" são considerados diferentes.
Number (Comparação Numérica)
Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
Valor para Comparação | Number | *Sim | Valor numérico a ser comparado com o valor de entrada. Aceita inteiros e decimais. |

Data e Hora (Comparação Cronológica)
Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
Formato de Data/Hora | String | *Sim | Define o padrão de interpretação (Date Time, Date, Time ou Detecção Automática). |
Valor para Comparação | String | *Sim | Valor cronológico a ser comparado com o valor de entrada. |

Configuração Global de Formato O formato de data e hora é definido globalmente para o conector, afetando todos os casos configurados para garantir a integridade da comparação.
Guia de formatos suportados:
- Date Time: YYYY-MM-DD HH:mm:ss (Exemplo: 2024-12-31 23:59:59).
- Date: YYYY-MM-DD (Exemplo: 2024-12-31).
- Time: HH:mm:ss (Exemplo: 23:59:59).
- Detecção Automática: O sistema tentará identificar o formato com base nos valores fornecidos. Recomenda-se o uso de padrões ISO (hifens para datas e dois-pontos para horas) para maior precisão.
Na Prática
Roteamento baseado em status de pedido

Roteamento com comparação de texto case insensitive

Roteamento com comparação numérica
- Números inteiros:

- Números decimais (Sistema Monetário):

Roteamento com comparação de data e hora

Roteamento sem caso correspondente (Default)

Observações Finais
- Avaliação Sequencial: O conector Switch avalia os casos na ordem em que estão configurados (de cima para baixo). A organização dos casos pode afetar o resultado final.
- Lógica Clara: Configure os casos de forma mutuamente exclusiva sempre que possível para evitar comportamentos inesperados.
- Uso do Default: Embora opcional, o uso do caminho Default é altamente recomendado para evitar que o processo fique "travado" caso nenhuma condição seja atendida.
Conclusão
O conector Switch é uma ferramenta poderosa para criar processos dinâmicos e flexíveis, permitindo que o fluxo se adapte a diferentes cenários. Com uma configuração adequada, ele simplifica a lógica do processo e melhora significativamente a eficiência operacional.