Tutti gli operatori e le funzioni delle Formule di Quire Permalink
Questa guida offre un riferimento completo a tutti gli operatori e alle funzioni supportati nelle Formule di Quire, con spiegazioni chiare ed esempi pratici per aiutarti a costruire calcoli, condizioni e logica delle attività davvero potenti.
Operatori numerici
Gli operatori numerici ti permettono di calcolare i valori memorizzati nei campi di tipo numerico.
| Operatori | A cosa servono | Esempio |
|---|---|---|
| + | Somma valori | timeSpent + 100 |
| - | Sottrae valori | Cost - 100 |
| * | Moltiplica valori | Cost * 100 |
| / | Divide valori | Cost / 100 |
| % | Calcola il resto | Cost % 3 |
| ^ | Calcola la potenza | Cost ^ 3 |
Nota: prima di usarlo nelle Formule, devi creare un campo personalizzato numerico (ad esempio Cost).
Operatori di testo
Gli operatori di testo ti permettono di unire o concatenare stringhe di testo in un unico risultato.
| Operatori | A cosa servono | Esempio |
|---|---|---|
| + | Concatena testo | ‘This is’ + ‘a task’ |
Operatori di confronto
Gli operatori di confronto restituiscono true o false in base alla relazione tra due valori.
| Operatori | Significato | Esempio |
|---|---|---|
| < | Minore di | 3 < 1 -> False |
| > | Maggiore di | 4 > 3 -> True |
| <= | Minore o uguale a | 4 <= 2 -> False |
| >= | Maggiore o uguale a | 5 >= 1 -> True |
| = | Uguale a | 2 = 2 -> True |
| != | Diverso da | 3 != 2 -> True |
Operatori logici
not
Inverte un risultato vero/falso.
Esempio:
Not (Cost > 50)
Se Cost è maggiore di 50, il risultato è false. Altrimenti restituisce true.
Nota: prima di usarlo nelle Formule, devi creare un campo personalizzato numerico (ad esempio Cost).
in
Usa in per verificare se i valori del primo elenco sono interamente contenuti nel secondo.
Esempio:
assignees in subtasks.assignees
Restituisce true se tutti gli assegnatari dell’attività sono assegnati anche alle sue subattività.
&
Trova e restituisce i valori in comune tra due elenchi.
Esempio:
assignees & subtasks.assignees
Restituisce gli assegnatari condivisi tra l’attività e le sue subattività.
and
Valuta tutte le condizioni e restituisce true solo se ognuna è soddisfatta.
Esempio:
(Cost > 50) and (due > <today>)
Nota: prima di usarlo nelle Formule, devi creare un campo personalizzato numerico (ad esempio Cost).
or
Controlla ciascuna condizione e restituisce true se almeno una ha un valore.
Esempio:
Cost or Budget
Nota: prima di usarlo nelle Formule, devi creare un campo personalizzato numerico (ad esempio Cost).
Operatori di elenco
[field, field]
Usa le parentesi quadre per combinare più valori in un elenco.
Esempio:
[me, #23.assignees, subtasks.assignees]
Restituisce un elenco con me stesso, gli assegnatari assegnati all’attività con ID#23 e tutti gli assegnatari delle subattività.
Scopri di più sulle Formule array di Quire, che ti permettono di elencare o eseguire calcoli su una raccolta di dati.
field[index]
Accedi agli elementi dell’elenco tramite indice (a partire da 0).
Esempio:
subtasks[3]
Restituisce la 4ª subattività.
order by
Ordina le attività in base a un campo specificato.
Esempio:
subtasks order by any.Cost
Restituisce un elenco delle subattività ordinate in base al valore del loro campo Cost.
Nota: prima di usarlo nelle Formule, devi creare un campo personalizzato numerico (ad esempio Cost).
Suggerimento: puoi anche indicare la direzione dell’ordinamento aggiungendo asc o desc alla fine dell’espressione. Ad esempio, puoi scrivere qualcosa come: subtasks order by any.Cost asc.
map
Applica un calcolo a ciascun elemento di un elenco.
Esempio:
subtasks map any.Cost * 2
Restituisce un elenco con i valori del campo Cost delle subattività moltiplicati per 2.
Nota: prima di usarlo nelle Formule, devi creare un campo personalizzato numerico (ad esempio Cost).
Suggerimento: puoi usare l’identificatore any insieme all’operatore map per indicare il campo che vuoi calcolare.
Operatori condizionali
??
Verifica se l’attività corrisponde all’espressione prima di ?? e restituisce un valore vero/falso. Se l’attività non corrisponde all’espressione, restituisce invece il valore dell’espressione che segue ??.
Esempio:
(Cost > 10) ?? 'Reconsider'
Se il valore nel campo Cost è maggiore di 10, restituisce true. Se è minore di 10, mostra false. Quando nel campo Cost non è inserito alcun valore, mostra “Reconsider”.
Nota: prima di usarlo nelle Formule, devi creare un campo personalizzato numerico (ad esempio Cost).
?:
Verifica se l’attività corrisponde all’espressione prima di ? e restituisce l’espressione che segue ?. Se l’attività non corrisponde all’espressione prima di ?, restituisce l’espressione che segue :.
Esempio:
(Cost > 10) ? 'Too expensive': 'Reconsider'
Se il valore nel campo Cost è maggiore di 10, mostra “Too expensive”. Se è minore di 10 o se non è inserito alcun valore, mostra “Reconsider”.
Nota: prima di usarlo nelle Formule, devi creare un campo personalizzato numerico (ad esempio Cost).
Filtrare e limitare i risultati
where
Filtra le attività che soddisfano criteri specifici.
Esempio:
subtasks where any.Cost > 10
Verranno elencate le subattività con un valore di cost maggiore di 10.
Nota: prima di usarlo nelle Formule, devi creare un campo personalizzato numerico (ad esempio Cost).
Suggerimento: puoi usare l’identificatore any insieme all’operatore where per specificare il campo che vuoi filtrare.
limit
Limita il numero di attività restituite dopo l’ordinamento.
Esempio:
subtasks order by desc any.timeSpent - any.estimated limit 3
Elenca le prime 3 subattività con un valore di tempo trascorso maggiore del valore di tempo stimato.
Precedenza degli operatori
In alcuni casi, l’ordine dei calcoli può influire sul valore restituito dalla Formula: per questo è importante capire l’ordine delle operazioni in Quire. Se combini operatori diversi in un’unica Formula, Quire eseguirà le operazioni nell’ordine indicato nella tabella seguente. Se la Formula contiene operatori con la stessa priorità, Quire calcolerà da sinistra a destra.
| Operatore | Descrizione |
|---|---|
( ).[ ]( ) |
Parentesi Operatore punto Elenco (Array) Chiamata di funzione |
+ - not |
Operatori unari |
^ |
Elevamento a potenza |
* / % |
Moltiplicazione e divisione |
+ - |
Addizione e sottrazione |
< > <= >= in & |
Operatori di confronto |
= != |
Operatori di uguaglianza |
not |
Operatore logico not |
and |
Operatore logico and |
or |
Operatore logico or |
?? |
Operatore condizionale |
where |
Operatore filtro |
?: |
Operatore condizionale |
Tutte le funzioni integrate
| Funzione | Descrizione | Esempio | Risultato atteso |
|---|---|---|---|
| SUM() | Restituisce la somma dei valori. | SUM(subtasks.estimated) |
Somma tutti i valori nei campi Stima delle subattività dell’attività. |
| MAX() | Restituisce il valore più grande in un insieme di valori. | MAX(subtasks.estimated) |
Mostra il valore più grande presente nei campi Stima delle subattività dell’attività. |
| MIN() | Restituisce il valore più piccolo in un insieme di valori. | MIN(subtasks.estimated) |
Mostra il valore più piccolo presente nei campi Stima delle subattività dell’attività. |
| AVG() | Restituisce il valore medio dei numeri. | AVG(subtasks.estimated) |
Calcola la media dei campi Stima delle subattività dell’attività. |
| COUNT() | Restituisce il numero di elementi. | COUNT(subtasks) |
Mostra il numero totale di subattività. |
| SORT() | Restituisce gli argomenti in ordine. | SORT(subtasks.estimated) |
Mostra in ordine tutti i valori dei campi Stima delle subattività dell’attività. |
| DISTINCT() | Rimuove i valori duplicati e restituisce solo quelli distinti. | DISTINCT(subtasks.estimated) |
Mostra tutti i valori distinti dei campi Stima delle subattività dell’attività, rimuovendo i duplicati. |
| ISEMPTY() | Verifica se gli argomenti di input sono vuoti o meno e restituisce un valore vero/falso. | ISEMPTY(estimated) |
Se il campo Stima dell’attività è vuoto, mostra una casella di controllo selezionata. |
| ISNOTEMPTY() | Verifica se gli argomenti di input sono vuoti o meno e restituisce un valore vero/falso. | ISNOTEMPTY(estimated) |
Se il campo Stima dell’attività non è vuoto, mostra una casella di controllo selezionata. |
Domande frequenti
Quali operatori aritmetici posso usare nelle Formule di Quire?
Quire supporta +, -, *, /, % (resto) e ^ (potenza). Prima di poterlo usare in una Formula, devi creare un campo personalizzato numerico.
Quali funzioni integrate sono disponibili nelle Formule di Quire?
Quire include SUM(), MAX(), MIN(), AVG(), COUNT(), SORT(), DISTINCT(), ISEMPTY() e ISNOTEMPTY(). Consulta il riferimento completo in Tutte le funzioni integrate.
Come funziona la precedenza degli operatori nelle Formule di Quire?
Quire valuta gli operatori in quest’ordine: prima le parentesi e gli operatori punto/elenco, poi l’elevamento a potenza, la moltiplicazione/divisione, l’addizione/sottrazione, il confronto, gli operatori logici e infine quelli condizionali. Usa le parentesi per modificare l’ordine predefinito.
Come si scrive una Formula condizionale (IF) in Quire?
Usa ?: per una condizione a due risultati — (Cost > 10) ? 'Too expensive' : 'Reconsider'. Usa ?? come ripiego solo quando il campo è vuoto.
Come si filtrano le subattività in base al valore di un campo in una Formula di Quire?
Usa l’operatore where — subtasks where any.Cost > 10 restituisce le subattività in cui Cost supera 10. Combinalo con limit per limitare il numero di risultati.
Come si ordina o riorganizza un elenco in una Formula di Quire?
Usa order by — subtasks order by any.Cost ordina in base al campo Cost. Aggiungi asc o desc per impostare la direzione.
Come si applica un calcolo a ogni elemento di un elenco in Quire?
Usa l’operatore map — subtasks map any.Cost * 2 moltiplica per 2 il valore Cost di ogni subattività.