Esempi di test condizionali
Utilizzare i test condizionali nelle formule di Essbase quando è necessario eseguire calcoli per valutare le dipendenze dei dati.
Ad esempio, è possibile applicare la seguente formula a un membro della Commissione nel profilo del cubo per calcolare la commissione all'1% delle vendite se le vendite sono superiori a 500000:
IF(Sales > 500000)
Commission = Sales * .01;
ENDIF;Se si inserisce la formula in uno script di calcolo, è necessario associare la formula al membro della Commissione come indicato di seguito.
Commission (IF(Sales > 500000)
Commission = Sales * .01;
ENDIF;)Essbase esegue cicli nel cubo eseguendo i seguenti calcoli:
-
Il rendiconto IF verifica se il valore di Vendite per la combinazione di membri corrente è maggiore di 500000.
-
Se Sales è maggiore di 500000, Essbase moltiplica il valore in Sales per 0,01 e inserisce il risultato in Commission.
Nell'esempio successivo, la formula esegue il test della discendenza del membro corrente e quindi applica la formula di calcolo ciclo paghe appropriata:
IF(@ISIDESC(East) OR @ISIDESC(West))
Payroll = Sales * .15;
ELSEIF(@ISIDESC(Central))
Payroll = Sales * .11;
ELSE
Payroll = Sales * .10;
ENDIF;Se si inserisce la formula in uno script di calcolo, è necessario associare la formula al membro Ciclo paghe come indicato di seguito.
Payroll(IF(@ISIDESC(East) OR @ISIDESC(West))
Payroll = Sales * .15;
ELSEIF(@ISIDESC(Central))
Payroll = Sales * .11;
ELSE
Payroll = Sales * .10;
ENDIF;)Essbase esegue cicli nel database eseguendo i calcoli riportati di seguito.
-
L'istruzione IF utilizza la funzione @ISIDESC per verificare se il membro corrente nella dimensione Mercato è un discendente di East o West.
-
Se il membro corrente nella dimensione Mercato è un discendente di East o West, Essbase moltiplica il valore in Sales per 0,15 e passa alla combinazione di membri successiva.
-
Se il membro corrente non è un discendente di East o West, l'istruzione ELSEIF utilizza la funzione @ISIDESC per verificare se il membro corrente è un discendente di Central.
-
Se il membro corrente nella dimensione Mercato è un discendente di Central, Essbase moltiplica il valore in Sales per 0.11 e passa alla combinazione di membri successiva.
-
Se il membro corrente non è un discendente di East, West o Central, Essbase moltiplica il valore in Sales per 0,10 e passa alla combinazione di membri successiva.
Fare riferimento anche a Concetti di calcolo multidimensionale.