Cette fonction attribue une même valeur de période (par exemple,. P#[Year]) d'un compte source à toutes les périodes d'un compte de destination en fonction d'un profil défini dans un compte de profil (par exemple, profil Produits, 4-4-5, etc.).
Valeur renvoyée
Aucune valeur renvoyée.
Syntaxe
Spread(Destination,Source,Factor,FactorN,FactorD,Temp,Per)
Tableau 12-24 Syntaxe de la fonction Spread
Paramètre | Valeurs valides |
---|---|
Destination |
Un PDV de destination valide qui est une combinaison valide de membres Account, ICP et Custom 1-4. |
Source |
Un PDV source valide qui est une combinaison valide de membres de dimension. Le PDV source doit comporter une seule période, par exemple P#[Year]. Il s'agit du montant à répartir. |
Factor |
Un PDV source valide. Factor est le compte utilisé pour stocker le facteur d'allocation. |
FactorN |
Un PDV source valide. FactorN est le facteur numérateur utilisé comme base pour répartir l'allocation. |
FactorD |
Un PDV source valide. FactorD est le facteur dénominateur utilisé comme base pour répartir l'allocation. |
Temp |
Un compte de destination valide. Temp est le compte qui stocke temporairement la valeur source. |
Per |
Une chaîne de période qui définit le nom de la première période du calendrier, par exemple "January". La valeur Temp est stockée dans la première période et le paramètre est obligatoire pour y faire référence dans le calcul. |
Description détaillée
Cette fonction alloue une même valeur de période (par exemple, P#[Year]) d'un PDV Source à toutes les périodes d'un PDV Destination en fonction d'un profil défini dans un PDV de profil (par exemple, profil Produits, 4-4-5, etc.).
Les allocations temporelles sont particulièrement adaptées aux applications de budgétisation dans lesquelles les montants sont d'abord saisis pour l'année entière, puis répartis entre les périodes en fonction d'un profil pertinent.
Le PDV Source doit comporter une seule période. La période sera généralement P#[Year], mais il peut s'agir de n'importe quelle période unique, telle que P#January.
La valeur dans le PDV Source est stockée par le calcul dans un compte temporaire. Cela est obligatoire car les comptes source et de destination sont généralement le même compte. Lorsque tel est le cas, la valeur de P#[Year] change dès que le calcul passe d'une période à une autre. Par conséquent, vous devez stocker la valeur pour pouvoir y faire référence pour toutes les périodes.
Il est recommandé de définir les variables dans la routine appelante et de les transmettre à la fonction Spread, qui définit les paramètres Destination, Source, Profile, Temp et Period1. Il est également conseillé de définir les mêmes noms de variables dans la routine appelante que dans la fonction Spread.
Exemple
La valeur Year dans le compte Telephone est répartie sur les périodes selon un ratio trimestriel 4- 4- 5.
Le résultat renvoyé par la fonction SPREAD se présente comme suit :
HS.EXP "A#TempTelephone.C1#[None] = A#Telephone.C1#[None].P#[Year]" (Where Period.Number = 1)
HS.EXP "A#Telephone.C1#[None] = A#TempTelephone P#January * E.Globals.A#Profile445.C1#[None].P#Cur / E.Globals.A#Profile445.C1#[None].P#[Year]
Exemple de script
Le script contient les informations suivantes :
Un exemple d'instruction écrit dans la routine appelante.
Des variables définies dans la routine appelante et transmises à la fonction Spread.
Des noms de variables définis de manière identique dans la routine appelante et dans la fonction Spread.
Sub Calculate()
Dim Destination Dim Source Dim Factor Dim FactorN Dim FactorD Dim Temp Dim Per
Source = "A#Telephone.C1#[None].P#[Year]" Destination = "A#Telephone.C1#[None]" Factor = "A#Factor.C1#[None]" FactorN = "E#Globals.A#Profile445.C1#[None].P#CUR" FactorD = "E#Globals.A#Profile445.C1#[None].P#[Year]" Temp = "A#TempTelephone.C1#[None]" Per = "January"
Call Spread(Destination,Source,Factor, FactorN,FactorD,Temp,Per)
End Sub
' Beginning of the Spread function
Sub Spread(Destination,Source,Factor,FactorN,FactorD,Temp,Per)
If HS.Period.Number = 1 Then
HS.Exp Temp & " = " & Source
End If
HS.Clear Factor HS.EXP Factor & " = " & FactorN & " / " & FactorD
HS.Clear Destination HS.EXP Destination & " = " & Temp & ".P#" & Per & " * " & Factor
End Sub