Todos os Operadores e Funções de Fórmula do Quire Permalink
Este guia oferece uma referência completa de todos os operadores e funções suportados nas fórmulas do Quire, com explicações claras e exemplos práticos para ajudar você a construir cálculos, condições e lógica de tarefas poderosos.
Operadores Numéricos
Os operadores numéricos permitem calcular valores armazenados em campos baseados em números.
| Operadores | O que faz | Exemplo |
|---|---|---|
| + | Soma valores | timeSpent + 100 |
| - | Subtrai valores | Cost - 100 |
| * | Multiplica valores | Cost * 100 |
| / | Divide valores | Cost / 100 |
| % | Calcula o resto | Cost % 3 |
| ^ | Calcula a potência | Cost ^ 3 |
Nota: Você precisa criar um campo personalizado numérico (por exemplo, Cost) antes de usá-lo em fórmulas.
Operadores de Texto
Os operadores de texto permitem mesclar ou concatenar cadeias de texto em um único resultado.
| Operadores | O que faz | Exemplo |
|---|---|---|
| + | Concatena texto | ‘This is’ + ‘a task’ |
Operadores de Comparação
Os operadores de comparação retornam true ou false com base em como dois valores se relacionam.
| Operadores | Significado | Exemplo |
|---|---|---|
| < | Menor que | 3 < 1 -> False |
| > | Maior que | 4 > 3 -> True |
| <= | Menor ou igual a | 4 <= 2 -> False |
| >= | Maior ou igual a | 5 >= 1 -> True |
| = | Igual a | 2 = 2 -> True |
| != | Diferente de | 3 != 2 -> True |
Operadores Lógicos
not
Inverte um resultado true/false.
Exemplo:
Not (Cost > 50)
Se Cost for maior que 50, o resultado é false. Caso contrário, retorna true.
Nota: Você precisa criar um campo personalizado numérico (por exemplo, Cost) antes de usá-lo em fórmulas.
in
Use in para verificar se os valores da primeira lista estão totalmente contidos na segunda lista.
Exemplo:
assignees in subtasks.assignees
Retorna true se todos os responsáveis da tarefa também estiverem atribuídos às suas subtarefas.
&
Encontra e retorna valores comuns entre duas listas.
Exemplo:
assignees & subtasks.assignees
Retorna os responsáveis compartilhados pela tarefa e suas subtarefas.
and
Avalia todas as condições e retorna true somente se todas as condições forem atendidas.
Exemplo:
(Cost > 50) and (due > <today>)
Nota: Você precisa criar um campo personalizado numérico (por exemplo, Cost) antes de usá-lo em fórmulas.
or
Verifica cada condição e retorna true se alguma condição tiver valor.
Exemplo:
Cost or Budget
Nota: Você precisa criar um campo personalizado numérico (por exemplo, Cost) antes de usá-lo em fórmulas.
Operadores de Lista
[field, field]
Use colchetes para combinar vários valores em uma lista.
Exemplo:
[me, #23.assignees, subtasks.assignees]
Retorna uma lista com você, os responsáveis atribuídos à tarefa com o ID#23 e todos os responsáveis das subtarefas.
Saiba mais sobre as fórmulas de array do Quire, que permitem listar ou fazer cálculos sobre um conjunto de dados.
field[index]
Acessa os itens de uma lista pelo índice (começando em 0).
Exemplo:
subtasks[3]
Retorna a 4ª subtarefa.
order by
Ordena tarefas com base em um campo especificado.
Exemplo:
subtasks order by any.Cost
Retorna uma lista das subtarefas e as ordena com base nos valores de seus campos Cost.
Nota: Você precisa criar um campo personalizado numérico (por exemplo, Cost) antes de usá-lo em fórmulas.
Dica: Você também pode especificar a ordem da ordenação adicionando asc ou desc no final da expressão. Por exemplo, você pode digitar algo como: subtasks order by any.Cost asc.
map
Aplica um cálculo a cada item de uma lista.
Exemplo:
subtasks map any.Cost * 2
Retorna uma lista dos valores do campo Cost das subtarefas multiplicados por 2.
Nota: Você precisa criar um campo personalizado numérico (por exemplo, Cost) antes de usá-lo em fórmulas.
Dica: Você pode usar o identificador any com o operador map para indicar o campo que deseja calcular.
Operadores Condicionais
??
Verifica se a tarefa atende à expressão antes do ?? e retorna um valor true/false. Se a tarefa não corresponder à expressão, retorna o valor da expressão após o ??.
Exemplo:
(Cost > 10) ?? 'Reconsider'
Se o valor do campo Cost for maior que 10, retorna true. Se for menor que 10, mostra false. Quando não há nenhum valor inserido em Cost, mostra “Reconsider”.
Nota: Você precisa criar um campo personalizado numérico (por exemplo, Cost) antes de usá-lo em fórmulas.
?:
Verifica se a tarefa atende à expressão antes do ? e retorna a expressão após o ?. Se a tarefa não corresponder à expressão antes do ?, retorna a expressão após o :.
Exemplo:
(Cost > 10) ? 'Too expensive': 'Reconsider'
Se o valor do campo Cost for maior que 10, mostra “Too expensive”. Se for menor que 10 ou se não houver nenhum valor inserido, mostra “Reconsider”.
Nota: Você precisa criar um campo personalizado numérico (por exemplo, Cost) antes de usá-lo em fórmulas.
Filtrando e Limitando Resultados
where
Filtra tarefas que atendem a critérios específicos.
Exemplo:
subtasks where any.Cost > 10
Serão listadas as subtarefas com valor de custo maior que 10.
Nota: Você precisa criar um campo personalizado numérico (por exemplo, Cost) antes de usá-lo em fórmulas.
Dica: Você pode usar o identificador any com o operador where para especificar o campo que deseja filtrar.
limit
Limita o número de tarefas retornadas após a ordenação.
Exemplo:
subtasks order by desc any.timeSpent - any.estimated limit 3
Lista as 3 subtarefas com valor de tempo gasto maior que o valor do tempo estimado.
Precedência de Operadores
Em alguns casos, a ordem do cálculo pode afetar o valor retornado pela fórmula, por isso é importante entender a ordem das operações no Quire. Se você combinar diferentes operadores em uma mesma fórmula, o Quire executará a operação na ordem mostrada na tabela abaixo. Se a fórmula tiver operadores com a mesma ordem, o Quire calculará da esquerda para a direita.
| Operador | Descrição |
|---|---|
( ).[ ]( ) |
Parênteses Operador de ponto Lista (Array) Chamada de função |
+ - not |
Operadores unários |
^ |
Exponenciação |
* / % |
Multiplicação e divisão |
+ - |
Adição e subtração |
< > <= >= in & |
Operadores de comparação |
= != |
Operadores de igualdade |
not |
Operador lógico not |
and |
Operador lógico and |
or |
Operador lógico or |
?? |
Operador condicional |
where |
Operador de filtro |
?: |
Operador condicional |
Todas as Funções Incorporadas
| Função | Descrição | Exemplo | Resultados esperados |
|---|---|---|---|
| SUM() | Retorna o total dos valores. | SUM(subtasks.estimated) |
Soma todos os valores dos campos Estimativa das subtarefas da tarefa. |
| MAX() | Retorna o maior valor de um conjunto de valores. | MAX(subtasks.estimated) |
Mostra o maior valor encontrado nos campos Estimativa das subtarefas da tarefa. |
| MIN() | Retorna o menor valor de um conjunto de valores. | MIN(subtasks.estimated) |
Mostra o menor valor encontrado nos campos Estimativa das subtarefas da tarefa. |
| AVG() | Retorna o valor médio dos números. | AVG(subtasks.estimated) |
Calcula a média dos campos Estimativa das subtarefas da tarefa. |
| COUNT() | Retorna o número de itens. | COUNT(subtasks) |
Mostra o número total de subtarefas. |
| SORT() | Retorna os argumentos em ordem. | SORT(subtasks.estimated) |
Mostra todos os valores dos campos Estimativa das subtarefas da tarefa em ordem. |
| DISTINCT() | Remove valores duplicados e retorna apenas valores distintos. | DISTINCT(subtasks.estimated) |
Mostra todos os valores distintos dos campos Estimativa das subtarefas da tarefa, removendo os duplicados. |
| ISEMPTY() | Verifica se os argumentos de entrada estão vazios e retorna um valor true/false. | ISEMPTY(estimated) |
Se o campo Estimativa da tarefa estiver vazio, mostra uma caixa de seleção marcada. |
| ISNOTEMPTY() | Verifica se os argumentos de entrada estão vazios e retorna um valor true/false. | ISNOTEMPTY(estimated) |
Se o campo Estimativa da tarefa não estiver vazio, mostra uma caixa de seleção marcada. |
Perguntas Frequentes
Quais operadores aritméticos posso usar nas fórmulas do Quire?
O Quire suporta +, -, *, /, % (resto) e ^ (potência). Você precisa criar um campo personalizado numérico antes de referenciá-lo em uma fórmula.
Quais funções incorporadas estão disponíveis nas fórmulas do Quire?
O Quire inclui SUM(), MAX(), MIN(), AVG(), COUNT(), SORT(), DISTINCT(), ISEMPTY() e ISNOTEMPTY(). Consulte a referência completa em Todas as Funções Incorporadas.
Como funciona a precedência de operadores nas fórmulas do Quire?
O Quire avalia os operadores nesta ordem: primeiro parênteses e operadores de ponto/lista, depois exponenciação, multiplicação/divisão, adição/subtração, comparação, lógicos e, por fim, operadores condicionais. Use parênteses para sobrepor a ordem padrão.
Como escrevo uma fórmula IF/condicional no Quire?
Use ?: para um condicional com dois resultados — (Cost > 10) ? 'Too expensive' : 'Reconsider'. Use ?? como valor alternativo apenas quando o campo está vazio.
Como filtro subtarefas por um valor de campo em uma fórmula do Quire?
Use o operador where — subtasks where any.Cost > 10 retorna as subtarefas em que Cost é maior que 10. Combine com limit para limitar o número de resultados.
Como ordeno ou reorganizo uma lista em uma fórmula do Quire?
Use order by — subtasks order by any.Cost ordena pelo campo Cost. Adicione asc ou desc para controlar a direção.
Como aplico um cálculo a cada item de uma lista no Quire?
Use o operador map — subtasks map any.Cost * 2 multiplica o valor Cost de cada subtarefa por 2.