🔢 Counter
Incrementa o decrementa una variabile numerica del workflow di un importo specificato. Progettato per
l'uso all'interno di loop e rami condizionali per tracciare progressi, conteggi e totali progressivi.
Categoria: Manipolazione Dati · Identificatore tipo: counter
Panoramica
Il nodo Counter è un compagno specializzato di Set Variable.
Dove Set Variable crea e sovrascrive variabili, Counter fa una cosa specifica:
prende una variabile numerica esistente e aggiunge o sottrae un valore. Questo è più
espressivo e meno soggetto a errori rispetto all'uso di Set Variable per ricostruire manualmente
un nuovo valore da quello corrente.
Il pattern più comune è:
- Prima di un loop, usa Set Variable per inizializzare una variabile numerica a
0.
- All'interno del corpo del loop, usa Counter (eventualmente dentro un ramo true di Logic Gate) per
incrementare quando una condizione è soddisfatta.
- Dopo il loop, leggi il valore finale della variabile per riportare un conteggio totale.
Counter può essere usato anche al di fuori dei loop — ad esempio, per tracciare quanti tentativi
sono stati effettuati, o per decrementare una variabile di quota residua.
La variabile deve già esistere. Counter modifica una variabile esistente. Se
la variabile indicata non esiste quando Counter viene eseguito, lo step fallirà. Precedi sempre
con un nodo
Set Variable che inizializzi la variabile.
Configurazione
| Campo |
Stato |
Descrizione |
| Variable |
Obbligatorio |
Il nome della variabile numerica da modificare. Inserisci solo il nome della variabile — senza parentesi {{ }}. Esempio: email_count. |
| Operation |
Obbligatorio |
increment — aggiunge l'Amount al valore corrente; decrement — sottrae l'Amount dal valore corrente. |
| Amount |
Opzionale |
Quanto aggiungere o sottrarre. Il valore predefinito è 1 se non specificato. Accetta un numero statico o un riferimento {{ variable }} per importi dinamici. Ad esempio, {{ loop_step.current_item.quantity }} per sommare le quantità anziché contare semplicemente gli elementi. |
Dati di Output
| Variabile |
Tipo |
Descrizione |
value |
number |
Il nuovo valore della variabile dopo l'operazione. |
previous_value |
number |
Il valore della variabile prima dell'operazione. Utile per il logging o il confronto prima/dopo. |
variable_name |
string |
Il nome della variabile che è stata modificata. |
operation |
string |
Può essere "increment" o "decrement". |
{{ counter_step.output.value }}
{{ counter_step.output.previous_value }}
{{ email_count }}
Esempio di Utilizzo
Contare le email inviate con successo all'interno di un loop
-
Aggiungi un nodo Set Variable prima del loop:
Name: sent_count
Type: number
Value: 0
-
Aggiungi un nodo Loop che itera su {{ fetch.output.recipients }}.
-
All'interno del loop, aggiungi un nodo Send Email. Restituisce un
booleano success nel suo output.
-
Dopo il nodo Send Email, aggiungi un Logic Gate. Verifica che
{{ send_email.output.success }} sia uguale a true.
-
Nel ramo true, aggiungi un nodo Counter:
Variable: sent_count
Operation: increment
Amount: 1
-
Dopo la fine del loop, fai riferimento al totale finale:
{{ sent_count }} email sono state inviate con successo su {{ loop_step.output.count }} tentate.
Sommare le quantità degli ordini anziché contare gli elementi
Name: total_quantity
Type: number
Value: 0
Variable: total_quantity
Operation: increment
Amount: {{ loop_step.current_item.quantity }}
Suggerimenti & Note
-
Inizializza sempre prima. Il Counter fallirà se la variabile non esiste
già. Posiziona un nodo Set Variable prima di qualsiasi loop o ramo che usa Counter.
-
Puoi usare Counter fuori dai loop. Funziona ovunque in un workflow — ad
esempio, per contare quanti rami in uno Switch sono stati raggiunti, posizionando un Counter
all'inizio di ogni ramo.
-
Decremento per il tracciamento delle quote. Inizializza una variabile al totale
consentito (ad esempio
5) e decrementa di 1 per ogni azione. Poi usa un Logic Gate
per verificare che {{ remaining_quota }} sia maggiore di 0 prima di continuare.
-
Importi frazionari. Sebbene Counter sia più comunemente usato con interi,
gestisce anche importi decimali — utile per sommare prezzi o pesi.
Nodi Correlati
- Set Variable — inizializza la variabile prima di usare Counter.
- Loop — il contesto più comune per i nodi Counter.
- Logic Gate — verifica il valore del counter per decidere se continuare.