- Introdução
- Introdução
- Modelagem de processos com o BPMN
- Noções Básicas sobre Modelagem de Processos
- Abertura da tela de modelagem
- Modelagem de seu processo
- Alinhamento e conexão de elementos BPMN
- Autopilot para Maestro (visualização)
- Repositório de processos
- Modelagem de processos com o Case Management
- Projeto de um esquema de entidades de casos persistente
- Definição de chaves de caso (sistema versus externo)
- Estabelecimento de contratos de E/S e de write-back
- Regras de saída e término do estágio inicial
- Modelagem de estágios primário e secundário
- Disparo de um caso a partir do Data Fabric
- Implementação de personas e permissões no nível de estágio
- Configuração de SLAs e regras de escalonamento automatizadas
- Configuração de um loop de retrabalho (reentrada)
- Gerenciamento de instâncias de casos ativas: pausar, migrar e tentar novamente
- Dicionário de componentes de gerenciamento de casos do Maestro
- Modelagem de processos com o Flow
- Implementação de processos
- Depuração
- Simulação
- Publicação e atualização de processos agênticos
- Cenários de implementação comuns
- Extração e validação de documentos
- Operações do processo
- Monitoramento de processo
- Otimização de processos
- Informações de referência
Como os dados fluem entre os nós por meio da saída do nó e de variáveis, com regras de escopo para subfluxos e ramificações.
O que é
Os nós no fluxo não compartilham dados automaticamente. Quando um nó produz saída — como uma resposta HTTP ou um valor computado — os nós subsequentes acessam essa saída explicitamente por meio de expressões. Variáveis e fluxo de dados é como você conecta dados entre nós e persiste valores em seu processo.
Há duas maneiras de mover os dados por um processo:
- Saída de nó — cada nó produz uma saída à qual os nós subsequentes podem fazer referência
- Variáveis — variáveis no nível do processo que você define para armazenar e passar valores entre os nós
Para a gramática de expressões completa, operadores e como escrever $vars , consulte Sintaxe de expressões.
Como funciona
Saída do nó
Cada nó que produz dados os disponibiliza por meio $vars.<nodeName>.output. O nome do nó é atribuído automaticamente com base no tipo de nó — por exemplo, o primeiro nó de Solicitação HTTP é nomeado httpRequest1, o segundo é httpRequest2.
Você pode ver o nome da variável de um nó no painel de propriedades quando o nó é selecionado.
// Access HTTP Request response
$vars.httpRequest1.output.body
$vars.httpRequest1.output.statusCode
// Access Script return value
$vars.script1.output
// Access a second HTTP Request
$vars.httpRequest2.output.body
// Access HTTP Request response
$vars.httpRequest1.output.body
$vars.httpRequest1.output.statusCode
// Access Script return value
$vars.script1.output
// Access a second HTTP Request
$vars.httpRequest2.output.body
A estrutura de saída depende do tipo de nó. Consulte a página de referência de cada nó para seu formato de saída específico.
Variáveis
Variáveis são valores no nível do processo que persistem durante uma única execução. Você as define na aba Variáveis do painel de propriedades.
Cada variável tem:
- Nome — como você faz referência a ele em expressões (por exemplo,
$vars.orderTotal) - Tipo — String, Número, Booleano, Objeto ou Array
- Direção — entrada, saída ou bidirecional
Quando usar variáveis versus saída de nó:
- A saída de nó ajusta-se aos dados que passam de um nó para o próximo. Esse é o padrão mais comum.
- As variáveis ajustam valores que devem ser acessíveis por todo o processo ou valores que definem entradas e saídas para o próprio processo.
Nomear variáveis claramente: nomes descritivos e minúsculos com hifens ou CamelCase — como customerEmail, invoiceTotal, apiResponse — permanecem legíveis em traces de execução ao longo do tempo. Nomes e abreviações com uma letra perdem o significado rapidamente.
Entradas do disparo
As variáveis de entrada são de propriedade de seu gatilho, não do processo. Quando um gatilho é acionado, suas entradas estão disponíveis como $vars.<triggerName>.output.<inputName>:
// Access an input defined on a Manual Trigger named "manualTrigger1"
$vars.manualTrigger1.output.userId
// Access an input defined on a Manual Trigger named "manualTrigger1"
$vars.manualTrigger1.output.userId
Isso se aplica a todos os tipos de gatilhos. Se seu processo tiver vários gatilhos, cada gatilho possui suas próprias entradas — os nós subsequentes fazem referência ao gatilho específico que iniciou a execução.
Definições de Variáveis
As definições de variáveis estão na guia Variáveis do painel de propriedades. Cada definição armazena o nome, o tipo e a direção da variável para que o valor possa ser referenciado de forma consistente durante uma execução.
Atualizações de variáveis
As variáveis podem ser atualizadas pela configuração do nó ou pela saída do nó do Script.
De qualquer nó — seção Atualizar variável
Cada nó tem uma seção Atualizar variável no painel de propriedades. A seção armazena um destino de variável gravável (saída ou direção bidirecional) e a expressão JavaScript atribuída a ela. A expressão é avaliada após a conclusão do nó.
De um nó do Script — retornar valor
O valor de retorno de um nó de Script é acessível como $vars.<scriptName>.output. O nó Script também tem a mesma seção Atualizar variável que outros nós para gravações de variáveis diretas:
// The return value becomes $vars.script1.output
return {
orderTotal: $vars.httpRequest1.output.body.price * $vars.httpRequest1.output.body.quantity
};
// The return value becomes $vars.script1.output
return {
orderTotal: $vars.httpRequest1.output.body.price * $vars.httpRequest1.output.body.quantity
};
Regras de escopo
Um nó pode acessar a saída de:
- Nós upstream no mesmo escopo — nós no mesmo nível que foram executados antes dele.
- Nós de contêiner pai — se o nó estiver dentro de um subfluxo ou loop, ele poderá acessar o escopo do pai.
Um nó não pode acessar a saída de:
- Nós em uma ramificação diferente — se uma Decisão ou Mudar enviou a execução por um caminho diferente, a saída desses nós não estará disponível
- Nós que não foram executados — a saída só existe após a execução de um nó
Escopo de subfluxo
Os subfluxos criam seu próprio escopo de variável. Os nós dentro de um subfluxo podem acessar:
- Outros nós dentro do mesmo subfluxo
- O escopo do processo pai
As variáveis atualizadas dentro de um subfluxo têm namespaces para evitar conflitos com o processo pai. Por exemplo, uma variável counter dentro de um subfluxo chamado subflow1 é referenciada como $vars.subflow1.counter de fora do subfluxo.
O valor de retorno do subfluxo é acessível ao processo pai $vars.<subflowName>.output.
Ramificações paralelas
As ramificações paralelas têm contextos de execução independentes. Mudar uma variável dentro de uma ramificação não torna essa alteração visível em outra ramificação. Um nó Mesclagem consolida saídas de caminhos paralelos quando os caminhos precisam se reconectar.
Padrões
Como criar strings dinâmicas
Os literais de modelo em um nó de Script combinam variáveis e texto estático:
return `Hello ${firstName}, your order #${orderId} has shipped.`;
return `Hello ${firstName}, your order #${orderId} has shipped.`;
Acumulado de valores em um loop
Um padrão de acumulador usa um array inicializado antes do nó Loop e anexado dentro do corpo do loop:
// Script node inside the Loop body
results.push(item.processedValue);
return results;
// Script node inside the Loop body
results.push(item.processedValue);
return results;
Manutenção de valores secretos fora dos logs
Os valores das variáveis secretas são mascarados na interface gráfica, mas podem aparecer em dados de trace exportados. Registrá-los é um risco de exposição de dados.
Exemplo prático
Um processo que busca um usuário de uma API e roteia com base em sua função:
Etapa 1 — Solicitação HTTP (httpRequest1): GET https://api.example.com/users/42
Etapa 2 — Script (script1): extrair a função do usuário
const user = $vars.httpRequest1.output.body;
return {
name: user.name,
role: user.role,
isAdmin: user.role === "admin"
};
const user = $vars.httpRequest1.output.body;
return {
name: user.name,
role: user.role,
isAdmin: user.role === "admin"
};
Etapa 3 — Decisão (decision1): ramificar com status de administrador
Expressão: $vars.script1.output.isAdmin === true
- Verdadeiro → conceder acesso de administrador
- False → conceder acesso padrão
Páginas relacionadas
- Sintaxe de expressões — gramática
$vars, operadores, onde você escreve expressões, erros comuns - Nó de script — escrita de JavaScript, valores de retorno, acesso
$vars - Nó de decisão — ramificação em expressões
- A Tela — painel de propriedades, aba Variáveis
- O que é
- Como funciona
- Saída do nó
- Variáveis
- Entradas do disparo
- Definições de Variáveis
- Atualizações de variáveis
- Regras de escopo
- Escopo de subfluxo
- Ramificações paralelas
- Padrões
- Como criar strings dinâmicas
- Acumulado de valores em um loop
- Manutenção de valores secretos fora dos logs
- Exemplo prático
- Páginas relacionadas