Calculer les mouvements d'immobilisations mensuels

Vous pouvez utiliser la fonction @PRIOR pour calculer des valeurs en fonction de la valeur d'un mois précédent.

Par exemple, supposons qu'une base de données contienne des valeurs de données de ressource qui sont stockées mois par mois. Vous pouvez calculer la différence entre les valeurs des immobilisations des mois successifs (le mouvement des immobilisations) en soustrayant la valeur du mois précédent de la valeur du mois actuel.

Supposons que les trois membres suivants gèrent les valeurs de ressource de la base de données :

  • Immobilisations pour les valeurs d'immobilisation mensuelles

  • Asset_MVNT pour les valeurs de mouvement des immobilisations

  • Solde d'ouverture pour la valeur de l'immobilisation au début de l'année

Pour Jan, la valeur Asset_MVNT est calculée en soustrayant la valeur Opening_Balance de la valeur Jan.

Vous ajouteriez cette formule au membre Asset_MVNT :

IF(@ISMBR(Jan)) Asset_MVNT = Assets - Opening_Balance;
   ELSE Asset_MVNT = Assets - @PRIOR(Assets);
ENDIF;

Le tableau suivant présente les résultats lorsque Essbase calcule la différence entre les valeurs des ressources au cours des mois suivants :

Tableau 18-3 Résultats : Exemple de script de calcul pour le calcul des mouvements d'actifs mensuels

Ressources -> Temps Solde d'ouverture Jan Feb Mar

Ressources

1 200

1400

1 300

1 800

Immobilisation_MVNT

 

200

-100

500

Essbase parcourt les mois, en effectuant les calculs suivants :

  1. L'instruction IF et la fonction @ISMBR vérifient si le membre actuel de la dimension Year est Jan. Cette vérification est nécessaire car la valeur Asset_MVNT de Jan ne peut pas être calculée en soustrayant la valeur du mois précédent.

  2. Si le membre actuel de la dimension Year est Jan, Essbase soustrait le solde d'ouverture de la valeur Jan -> Assets et place le résultat dans Jan -> Asset_MVNT.

  3. Si le membre actuel de la dimension Year n'est pas Jan, la fonction @PRIOR obtient la valeur des immobilisations du mois précédent. Essbase soustrait les immobilisations du mois précédent des immobilisations du mois en cours. Il place le résultat dans la valeur Asset_MVNT du mois en cours.