Variáveis
Uma variável é um campo específico em uma ordem ou estudo referenciados. São representados por ID de colunas, COLID. A lista de COLID é exibida nas páginas Personalizar rótulos e no Manual de usuário de campos calculados.
Tipos variáveis
Cada variável tem um tipo dependente da informação que o campo transmite. Algumas macros e operadores apenas funcionam se os argumentos forem do tipo exigido. A tabela abaixo lista os tipos de variáveis suportados.
Datetime |
Todos os campos que contêm uma data, hora ou valor data+hora. |
Intervalo |
Exprime um intervalo de tempo entre valores datetime. O formato de exibição desta variável tipo está definido na seção Formato da data na página de configurações. |
Número |
Campos de números binários. |
Cadeia |
Todas as cadeias alfanuméricas. |
Constantes
As constantes são valores literais inseridos na regra de campo calculado. Seu formato é definido da seguinte forma:
Datetime |
Data e hora expressas no formato AAAAMMDD_HHMMSS. Para exprimir apenas a hora, o formato é 00000000_HHMMSS. As constantes apenas com a data têm o formato AAAAMMDD_000000 |
Intervalo |
As constantes de intervalo, expressas em segundos, usando o formato <número>S. Por exemplo, 1200S para 1200 segundos. Usado para adicionar a hora a variáveis datetime. |
Número |
Constantes inteiras expressas como uma cadeia de números. Os valores negativos devem ser expressos como uma operação. Por exemplo, para -5, usar 0-5. |
Estado |
Constantes de estado do estudo, expressas como o rótulo do estado, sem quaisquer aspas. Por exemplo, ordenado, não exibido e final. |
Cadeia |
Constantes de cadeia limitadas por aspas duplas em ambos os lados. |
Macros e operações
Macros e operações aritméticas
add(a,b[,c...]) |
Adicionar os operandos. Se todos os operandos forem do tipo número ou intervalo, o resultado é uma soma aritmética dos valores. Se todos os operandos forem do tipo cadeia, o resultado é a concatenação das cadeias. Se os operandos forem um datetime e uma ou mais variáveis de intervalo, as variáveis de intervalo são adicionadas às variáveis datetime e o resultado é uma variável datetime. Todas as restantes combinações de tipos de variáveis não são suportadas e devolvem NULL. |
div(a,b) |
Dividir os operandos. Se todos os operandos forem do tipo número de intervalo, o resultado é o dividendo aritmético a/b. Todas as restantes combinações de tipos de variáveis não são suportadas e devolvem NULL. A divisão por constantes zero é verificada, mas as variáveis de valor zero poderão falhar e produzir resultados indefinidos. |
mul(a,b[,c...]) |
Multiplicar os operandos. Se todos os operandos forem do tipo número ou intervalo, o resultado é o produto aritmético dos valores. Todas as restantes combinações de tipos de variáveis não são suportadas e devolvem NULL. |
sub(a,b) |
Subtrair os operandos. Se todos os operandos forem do tipo número, intervalo ou datetime, o resultado é a diferença aritmética a-b. Se o operando a for do tipo datetime e o b for do tipo intervalo, o resultado é uma variável datetime a-b. Todas as restantes combinações de tipos de variáveis não são suportadas e devolvem NULL. |
+ |
O mesmo que add() com um limite de dois operandos, no formato a+b. |
- |
O mesmo que sub() usando o formato a-b. |
* |
O mesmo que mul() com um limite de dois operandos, no formato a*b. |
/ |
O mesmo que div() usando o formato a/b. |
Macros e operações booleanas
and (x,y) |
O resultado é "sim" se a expressão booleana x e y forem ambas "sim". Se qualquer uma das expressões booleanas for “não", o resultado é “não”. |
not(x) |
O resultado é "sim" se a expressão booleana x for "não". Senão, o resultado é "sim". |
or(x,y) |
O resultado é "sim" se a expressão booleana x ou y for "sim". Se nenhuma das expressões booleanas for "sim", o resultado é "não". |
xor(x,y) |
O resultado é "sim" se qualquer uma das expressões booleanas x ou y for "sim". Se ambas as expressões booleanas forem "não" ou se ambas forem "sim", o resultado é "não". |
& |
O mesmo que and(), no formato x&y. |
| |
O mesmo que or(), no formato x|y. |
^ |
O mesmo que xor(), no formato x^y. |
Macros e operações condicionais
equals(x,y) |
O resultado é "sim" se os dois valores forem iguais. Senão, o resultado é "não". X e y têm de ser do mesmo tipo: cadeia, número ou intervalo. |
greater(x,y) |
O resultado é "sim" se x for maior do que y. Senão, o resultado é "não". X e y têm de ser do mesmo tipo: número ou intervalo. |
if(test,x,y) |
Devolve x se o resultado do teste da expressão booleana for verdadeiro. Senão, o resultado é y. |
less(x,y) |
O resultado é "sim" se x for menor do que y. Senão, o resultado é "não". X e y têm de ser do mesmo tipo: número ou intervalo. |
= |
O mesmo que equals(), no formato x=y. |
> |
O mesmo que greater(), no formato x>y |
< |
O mesmo que less(), no formato x<y |
Macros e operações de data
age(d1,d2) |
Devolve a diferença d1-d2 em anos civis. |
atleaststatemintime(s) |
Devolve a primeira data e hora em que a ordem ou estudo existiu no estado s ou em qualquer estado posterior. O resultado se apresenta no formato datetime. Disponível somente para as tabelas Informação do estudo . |
atmoststatemaxtime(s) |
Devolve a data e hora mais recente em que a ordem ou estudo esteve no estado s ou em qualquer estado anterior. O resultado se apresenta no formato datetime. Disponível somente para as tabelas Informação do estudo . |
curdatetime() |
Devolve a data e hora atuais no formato datetime. |
minstatetime(s) |
Devolve a primeira data e hora em que a ordem ou estudo existiu no estado, s. O resultado se apresenta no formato datetime. |
maxstatetime(s) |
Devolve a data e hora mais recentes em que a ordem ou estudo entrou no estado, s. O resultado se apresenta no formato datetime. |
Macros e operações de valores múltiplos
avg(id) |
Devolve a média matemática dos valores no campo de valores múltiplos, id, tal como um campo de nível de objeto na tabela de estudo. Apenas variáveis do tipo número e intervalo. |
count(id) |
Devolve o número de entradas no campo de valores múltiplos, id, tal como um campo de nível de objeto na tabela de estudo. |
countif(id,s) |
Devolve o número de entradas no campo de valores múltiplos, id, cujo valor é s. Apenas variáveis do tipo número, intervalo e cadeia. O resultado se apresenta no formato de número. |
hasvalue(<Colid>) |
Verifica se o valor do campo especificado é NULL ou uma cadeia vazia. Devolve "não" se não existir nenhum valor. Senão, devolve "sim". |
max(id) |
Devolve o maior valor no campo de valores múltiplos, id, tal como um campo de nível de objeto na tabela de estudo. A comparação será numérica para os tipos número e intervalo e será lexicográfica para os tipos cadeia e datetime. |
min(id) |
Devolve o menor valor no campo de valores múltiplos, id, tal como um campo de nível de objeto na tabela de estudo. A comparação será numérica para os tipos número e intervalo e será lexicográfica para os tipos cadeia e datetime. |
sum(id) |
Devolve a soma matemática dos valores no campo de valores múltiplos, id, tal como um campo de nível de objeto na tabela de estudo. Apenas variáveis do tipo número e intervalo. |