Funzioni e operatori della formula Maximo

Le formule Maximo ® supportano le funzioni e gli operatori matematici più comuni. Le formule combinano la sintassi dell'espressione della formula con oggetti di business Maximo e attributi MBO ( Maximo business object ).

Operatori supportati

La seguente tabella elenca gli operatori supportati per le formule Maximo .

Tabella 1. Operatori matematici supportati nelle formule Maximo
Operatore matematico Descrizione Esempi di utilizzo
+ Aggiunta purchaseprice + tax
Sottrazione enddate − startdate
* Moltiplicazione unitcost * quantity
Divisione totalcost⁄quantity
Resto a%b
Alimentazione a^2
Tabella 2. Operatori logici supportati nelle formule Maximo
Operatore logico Descrizione Esempi di utilizzo
&& Operatore logico AND if(a>10 && b<20, x,y)
|| Operatore logico OR if(a>10 || b<20, x,y)
>, ≥ Maggiore di, maggiore di uguale if(a≥10 || b>20, x,y)
<,≤ Minore di, minore di uguale a if(a<10 || b≤20, x,y)
=, == Confronto uguale if(a=10 || b==c, x,y)
!=, <> Non uguale if(a<>10 && b!=c, x,y)

Funzioni supportate

Le seguenti tabelle elencano le funzioni supportate per le formule Maximo .
Tabella 3. Funzioni di asset o collocazione
Nome funzione Numero di parametri Descrizione Esempi di utilizzo
meteravgval 2 Calcola il valore del contatore medio in un periodo di tempo. Questa funzione è applicabile solo ai misuratori di misurazione. meteravgval("O_pressur", duration(0,0,30,0,0,0))che fornisce la lettura media del misuratore 0_pressur negli ultimi 30 giorni.
meterexceedcount 3 Calcola il numero di volte in cui le letture del contatore hanno superato il valore di destinazione. meterexceedcount("O_pressur", duration(1,0,0,0,0,0),0.9) che conta le letture del contatore superiori a 0.9 nell'ultimo anno.
meterlowaction 1 Ottiene il valore di azione inferiore del contatore dal punto di misura. Viene comunemente utilizzato nell'applicazione Monitoraggio condizioni . meterlowaction("metername")
meterlowwarning 1 Ottiene il valore di avvertenza inferiore del contatore dal punto di misura. Viene comunemente utilizzato nell'applicazione Monitoraggio condizioni . meterlowwarning("metername")
metermaxval 2 Calcola il valore massimo del contatore in un periodo di tempo. È applicabile solo a contatori numerici. metermaxval("O_pressur", duration(1,0,0,0,0,0)) che fornisce la lettura massima del contatore 0_pressur nell'ultimo anno.
meterminval 2 Calcola il valore minimo del contatore in un arco di tempo. È applicabile solo a contatori numerici. meterminval("O_pressur",duration(1,0,0,0,0,0) che fornisce la lettura minima del contatore 0_pressur nell'ultimo anno.
meterupaction 1 Ottiene il valore di azione superiore del contatore dal punto di misura. Viene comunemente utilizzato nell'applicazione Monitoraggio condizioni . meterupaction("metername")
meterupwarning 1 Ottiene il valore di avvertenza superiore del contatore dal punto di misura. Viene comunemente utilizzato nell'applicazione Monitoraggio condizioni . meterupwarning("metername")
meterval 1 Calcola l'ultima lettura per un contatore associato a un asset o a una collocazione. Può essere utilizzato per leggere qualsiasi tipo di contatore, caratteristica, o indicatore o continuo. if(meterval("oilcolor")=="clear", 1,0) in cui meterval("oilcolor") restituisce un valore stringa come oilcolor.
Tabella 4. Funzioni di data e ora
Nome funzione Numero di parametri Descrizione Esempi di utilizzo
addymd 4 Aggiunge l'anno come secondo parametro, il mese come terzo parametro e il giorno come quarto parametro al primo parametro, che è un campo data e ora. addymd(statusdate,1,5,6). La formula aggiunge 1 anno, 5 mesi e 6 giorni al campo statusdate .
date 3 Specifica una data con anno, mese e giorno in una formula date(2024,11,30) viene utilizzato per specificare 30 novembre 2024 come data.
datetime 6 Specifica una data con anno, mese e giorno e un'ora con ore, minuti e secondi in una formula. L'ora segue il formato di 24 ore. datetime(2024,11,30,6,45,0) viene utilizzato per specificare la data e l'ora del 30 novembre, 6:45 AM.
duration 6 Specifica una durata con anni, mesi, giorni, ore, minuti e secondi in una formula. duration(0,0,0,2,0,0) viene utilizzato per specificare una durata di due ore.
msince 1 Calcola il numero di mesi da un campo data e ora specificato come parametro nella funzione. msince(statusdate) restituisce il valore 6 se la data dello stato è precedente a sei mesi.
now 0 Ottiene la data e l'ora correnti. now()
subymd 4 Sottrae anno come secondo parametro, mese come terzo parametro e giorno come quarto parametro dal primo parametro, che è un campo data e ora. subymd(statusdate,1,5,6). La formula sottrae 1 anno, 5 mesi e 6 giorni dal campo statusdate .
time 3 Specifica l'ora in ore, minuti e secondi. time(6,45,0)
Tabella 5. Funzioni matematiche
Nome funzione Numero di parametri Descrizione Esempi di utilizzo
abs 1 Ottiene il valore assoluto di un numero abs(a)
avgf 4 Calcola il valore medio di un attributo correlato in un periodo. avgf("openwo","wopriority","statusdate",duration(10,0,0,0,0,0))
ceiling 1 Arrotonda un valore al numero intero più vicino. ceiling(3.2) Restituisce 4.
countf 3 Calcola il conteggio di una serie correlata di attributi in un periodo di tempo. countf("openwo","statusdate",duration(0,0,10,0,0,0))
floor 1 Arrotonda un valore al numero intero più vicino. FLOOR(3.2) restituisce 3.
maxf 4 Calcola il valore massimo di un attributo correlato in un periodo di tempo. maxf("relation","attr_to_sum", "timeline_attr", duration(0,0,10,0,0,0)) Il sito timeline_attr è di tipo Date o Date Time.
minf 4 Calcola il valore minimo di un attributo correlato in un periodo di tempo. minf("relation", "attr_to_sum", "timeline_attr", DURATION(1,0,0,0,0,0)) Il sito timeline_attr è di tipo Date o Date Time.
number 1 Converte un valore alfanumerico in un valore numerico. number("lastreading")
nvl 2 Restituisce il valore alternativo se il valore originale è null. nvl(a,b) restituisce b se a è null.
pct 2 Restituisce la percentuale del primo parametro in base al secondo parametro. pct(val,total)
round 2 Arrotonda un numero in base a una precisione o a una scala. round(linecost,2)
sqrt,
sin,
log,
log10,
tan,
cos,
asin,
acos,
atan,
sinh,
cosh,
tanh,
rad,
deg
1 Funzioni matematiche di base sqrt(4) restituisce 2.
sumf 4 Calcola la somma di un attributo correlato in un periodo di tempo. sumf("openwo","estmatcost","statusdate", duration (0,0,10,0,0,0)) La formula si basa sull'oggetto Asset per sommare estmatcost per tutti gli ordini di lavoro aperti, cioè le relazioni openwo, per gli ultimi 10 giorni rispetto alla data di stato.
Tabella 6. Funzioni delle regole di business Maximo
Nome funzione Numero di parametri Descrizione Esempi di utilizzo
ismodified 1 Controlla se un attributo è stato modificato. Restituisce un valore di 0 o 1. ismodified("status")
isnullf 1 Verifica se il valore è nullo. Restituisce un valore di 0 o 1. isnullf(priority)
isreadonly 1 Controlla se un attributo è contrassegnato come di sola lettura. Restituisce un valore di 0 o 1. isreadonly("status")
isrequired 1 Verifica se un attributo è impostato come richiesto. Restituisce un valore di 0 o 1. isrequired("status")
maxcond 1 Verifica la condizione di sistema condname e restituisce TRUE o FALSE. maxcond(condname)
specattrval 1 Restituisce il valore dell'attributo della specifica. if(specattrval("life")>10,10,0)
tobeadded 0 Restituisce TRUE se l'MBO del punto di avvio è contrassegnato per la creazione e FALSE se non lo è. tobeadded()
tobedeleted 0 Restituisce TRUE se il punto di avvio MBO è contrassegnato per l'eliminazione e FALSE se non lo è. tobedeleted()
tobesaved 0 Restituisce TRUE se l'MBO del punto di avvio è contrassegnato per il salvataggio e FALSE se non lo è. tobesaved()
Tabella 7. Funzioni programmatiche
Nome funzione Numero di parametri Descrizione Esempi di utilizzo
if 2 Restituisce il valore valueiftruese la condizione condition assume il valore TRUE. È possibile specificare un valore restituito quando la condizione condition viene valutata come FALSE popolando il parametro valueiffalse . if(condition, valueiftrue[, valueiffalse])
error 2 Crea un errore MXException utilizzando i parametri errgrp e errkey . error("MyGroup","premium_hours")
nullvalue 0 Restituisce un valore null nullvalue()