Em Desenvolvimento
Esta documentação ainda está em desenvolvimento. Agradecemos sua paciência!
Pular para o conteúdo principal
Versão: 03.008.000

Funções

O botão Funções abre um editor de código Ruby onde é possível definir funções reutilizáveis disponíveis em todos os scripts do fluxo de trabalho. É o local ideal para centralizar lógicas que se repetem em vários nodes — validações, formatações, cálculos etc.

As funções são salvas por processo e ficam disponíveis automaticamente em todos os campos de código Ruby do fluxo (entradas, saídas, ações ao exibir/salvar e condições de Gateway).


Interface

O editor é um único bloco de código Ruby com realce de sintaxe (tema escuro). Dois botões estão disponíveis na toolbar do modal:

BotãoAção
BeautifyFormata e organiza o código automaticamente
SalvarSalva as funções para o processo atual

Definindo Funções

Escreva funções Ruby normais com def. Todas as funções definidas aqui estarão disponíveis em qualquer script Ruby configurado nos nodes do fluxo.

def formatar_cpf(valor)
v = valor.to_s.gsub(/\D/, '')
"#{v[0..2]}.#{v[3..5]}.#{v[6..8]}-#{v[9..10]}"
end

def prazo_em_dias(data_str)
data = Date.parse(data_str.to_s)
(data - Date.today).to_i
end

Chamando Funções nos Scripts do Fluxo

Para usar uma função definida aqui em qualquer campo de código Ruby do fluxo, chame-a pelo nome normalmente:

formatar_cpf(getval("cpf_cliente"))
prazo_em_dias(getval("data_vencimento")) > 0

dica

Centralize validações e formatações recorrentes aqui para facilitar a manutenção. Uma correção na função se propaga imediatamente para todos os nodes que a chamam.

informação

O botão Funções requer que um processo esteja aberto no WFDesigner.