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:

  1. Il rendiconto IF verifica se il valore di Vendite per la combinazione di membri corrente è maggiore di 500000.

  2. 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.

  1. L'istruzione IF utilizza la funzione @ISIDESC per verificare se il membro corrente nella dimensione Mercato è un discendente di East o West.

  2. 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.

  3. 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.

  4. 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.

  5. 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.