In questa pagina

Operatori e precedenza

Le espressioni di ProcessMind supportano diversi operatori per i calcoli aritmetici, i confronti e le operazioni logiche.

Operatori

Operatori aritmetici

Simbolo Name Descrizione Esempio Risultato
+ Addizione Somma due numeri o concatena stringhe 5 + 3 8
- Sottrazione Sottrae il secondo numero dal primo 10 - 4 6
* Moltiplicazione Moltiplica due numeri 6 * 7 42
/ Divisione Divide il primo numero per il secondo 15 / 3 5

Operatori di confronto

Simbolo Name Descrizione Esempio Risultato
== Uguale Verifica se due valori sono uguali Status == "Active" vero o falso
!= Diverso Verifica se due valori sono diversi Status != "Deleted" vero o falso
< Minore di Verifica se il primo valore è minore del secondo Amount < 100 vero o falso
> Maggiore di Verifica se il primo valore è maggiore del secondo Amount > 1000 vero o falso
<= Minore o uguale a Verifica se il primo valore è minore o uguale al secondo Count <= 10 vero o falso
>= Maggiore o uguale a Verifica se il primo valore è maggiore o uguale al secondo Score >= 80 vero o falso
in Presente nell’elenco Verifica se un valore è presente in un elenco di valori Status in ["A", "B", "C"] vero o falso

Operatori logici

Simbolo Name Descrizione Esempio Risultato
&& AND logico Restituisce vero se entrambe le condizioni sono vere Amount > 100 && Status == "Active" vero o falso
e AND logico (parola chiave) Alias di &&. Restituisce vero se entrambe le condizioni sono vere Amount > 100 and Status == "Active" vero o falso
|| OR logico Restituisce vero se almeno una condizione è vera Priority == "High" || Urgent == true vero o falso
o OR logico (parola chiave) Alias di ||. Restituisce vero se almeno una condizione è vera Priority == "High" or Urgent == true vero o falso
! NOT logico Inverte un valore booleano !IsDeleted vero o falso
non NOT logico (parola chiave) Alias di !. Inverte un valore booleano not IsDeleted vero o falso

Precedenza

Gli operatori con precedenza maggiore vengono valutati per primi. È possibile usare le parentesi per modificare l’ordine di precedenza predefinito.

Precedenza Category Operatori Associativity
1 OR logico || , o Da sinistra a destra
2 AND logico && , e Da sinistra a destra
3 Uguaglianza == , != Da sinistra a destra
4 Confronto < , > , <= , >= , in Da sinistra a destra
5 Addizione/Sottrazione + , - Da sinistra a destra
6 Moltiplicazione/Divisione * , / Da sinistra a destra
7 Unario ! , non , - Da destra a sinistra
8 Chiamata di funzione () Da sinistra a destra
9 Parentesi ( ) —

Note sugli operatori

  • Concatenazione di stringhe con +: l’operatore + concatena anche le stringhe quando uno dei due operandi è una stringa:

    "Hello" + " " + "World"  →  "Hello World"
  • L’operatore in equivale a più confronti OR:

    Status in ["Pending", "Active", "Review"]
    // is the same as:
    Status == "Pending" || Status == "Active" || Status == "Review"

Esempi

  • Combinare condizioni:

    // Both conditions must be true
    Amount > 1000 && Region == "Europe"
    
    // At least one condition must be true  
    Priority == "High" or Escalated == true
    
    // Negation
    not IsArchived

Operatore ternario

L’operatore ternario offre una forma abbreviata per esprimere una semplice logica if/else:

  • Sintassi:

    condition ? valueIfTrue : valueIfFalse
  • Esempio:

    Amount > 1000 ? "High" : "Low"
  • Equivalente a:

    if(Amount > 1000, "High", "Low")

Esempi di precedenza

  • Senza parentesi:

    2 + 3 * 4     →  14  (multiplication first)
    10 > 5 && 3 < 7  →  true  (comparisons before AND)
  • Con le parentesi:

    (2 + 3) * 4   →  20  (addition first)

Sintassi speciale

  • Identificatori tra virgolette: se il nome di una colonna contiene spazi o caratteri speciali, racchiudalo tra accenti gravi:

    `Order Amount` * 0.1
    `Customer Name`
    `2024 Revenue`
  • Caratteri di escape nelle stringhe: usi la barra rovesciata per indicare i caratteri speciali nelle stringhe:

    "Line 1\nLine 2"     // newline
    "Tab\there"          // tab
    "Say \"Hello\""      // double quote
    "Path\\to\\file"     // backslash
  • Valori null: null indica un valore mancante e qualsiasi confronto che include null restituisce null anziché true o false. Per verificare se un valore è mancante, usi la funzione isNull():

    if(isNull(Department), "Unknown", Department)

Argomenti correlati

Progettazione. Analisi. Miglioramento. Costruisca un’architettura dei processi integrata e mantenga il controllo.

Acceda subito, senza carta di credito né attese. Trasformi il modo in cui opera la Sua organizzazione in una progettazione dei processi chiara e interconnessa.

Definisca l’architettura dei processi, le responsabilità e i controlli, e allinei ruoli e compiti a ogni livello.

Inizi la prova gratuita e crei una base affidabile per governare, gestire e migliorare costantemente i processi della Sua organizzazione.