Custom_Alloc

Questa funzione alloca un punto di vista Origine a un punto di vista Destinazione, utilizzando un punto di vista Fattore come base dell'allocazione, con l'opzione di contabilizzazione dello storno dell'importo totale allocato a un punto di vista Eliminazione. Questa funzione è progettata per allocazioni a dimensione custom.

Valore restituito

Nessun valore restituito.

Sintassi

Custom_Alloc(Destination,Source,Factor,FactorN,FactorD,
Elimination)

Tabella 12-18 Sintassi della funzione Custom_Alloc

Parametro Valori validi

Destinazione

Punto di vista di destinazione valido costituito da una combinazione valida di conto, ICP e membri custom 1-4.

Origine

Punto di vista origine valido costituito da una combinazione valida di membri dimensione. Origine è l'importo da allocare.

Fattore

Punto di vista origine valido. Fattore è il conto utilizzato per memorizzare il fattore di allocazione.

FattoreN

Punto di vista origine valido. FattoreN è il fattore numeratore utilizzato come base per l'allocazione.

FattoreD

Punto di vista origine valido. FattoreD è il fattore denominatore utilizzato come base per l'allocazione.

Eliminazione

Punto di vista origine valido. Eliminazione può essere una stringa vuota ("") e in tale caso questo parametro viene ignorato. Se il parametro Eliminazione è impostato, l'importo contabilizzato in Punto di vista Destinazione viene moltiplicato per -1 e contabilizzato nel punto di vista Eliminazione.

Descrizione dettagliata

Questa funzione alloca un punto di vista Origine a un punto di vista Destinazione, utilizzando un punto di vista Fattore come base dell'allocazione, con l'opzione di contabilizzazione dello storno dell'importo totale allocato a un punto di vista Eliminazione. Questa funzione è progettata per allocazioni a dimensione custom.

Il parametro Factor memorizza il risultato della divisione di FattoreN per FattoreD. È obbligatorio per abilitare il fattore al riferimento a entità diverse dall'identità corrente.

Se l'entità nel punto di vista Origine è un padre, tale padre deve essere consolidato prima dell'esecuzione del calcolo a livello di figlio. Se la valuta padre è diversa dalla valuta figlio, sarà necessario eseguire anche una traduzione di tutte le valute rilevanti prima di eseguire il calcolo a livello figlio.

È consigliabile che le variabili vengano impostate nella routine chiamante e vengano passate alla funzione Custom_Alloc, che definisce i punti di vista Destinazione, Origine, Fattore, FattoreN, FattoreD ed Eliminazione. È inoltre consigliabile che i nomi di variabile nella routine chiamante vengano impostati in modo da essere uguali a quelli della funzione Custom_Alloc.

Il parametro Eliminazione può essere una stringa vuota ("") e in tale caso questo parametro viene ignorato. Se il parametro Eliminazione è impostato, l'importo contabilizzato nel punto di vista Destinazione verrà moltiplicato per -1 e verrà contabilizzato nel punto di vista Eliminazione.

Esempio

Il conto telefono è allocato a prodotti in base a un rapporto tra vendite prodotti e totale vendite. L'inverso dell'importo allocato viene contabilizzato nel conto allocazioni.

Tabella 12-19 Esempio di funzione Custom_Alloc

Conto Jan2014 Feb2014 Mar2014

A#Telephone.C1#[None]

100

300

400

A#Sales.C1#Product1

1000

1000

1000

A#Sales.C1#Product2

1000

2000

3000

A#Sales.C1#TotalProducts

2000

3000

4000

Custom_Alloc(A#Telephone","A#Telephone.C1#[None]", "A#Factor", A#Sales", "A#Sales.C1#TotalProducts", "A#ProductAllocations.C1#[None])

N/D

N/D

N/D

A#Factor.C1#Product1

0.50

0.33

0.25

A#Factor.C1#Product2

0.50

0.66

0.75

A#Telephone.C1#Product1

50

100

100

A#Telephone.C1#Product2

50

200

300

A#ProductAllocations.C1#[None]

-100

-300

-400

Il risultato restituito dalla funzione CUSTOM_ALLOC è il seguente:

HS.EXP "A#Factor = A#Sales / A#Sales.C1#TotalProducts"
HS.EXP "A#Telephone = A#Telephone.C1#[None] * A#Factor"
HS.EXP "A#Allocations.C1#[None] = (A#Telephone.C1#[None] * -1)" 

Script campione

Questo script include le informazioni seguenti:

  • Una istruzione campione scritta nella routine chiamante.

  • Variabili impostate nella routine chiamante e passate alla funzione Custom_Alloc.

  • Nomi di variabili nella routine chiamante impostati in modo da essere uguali a quelli della funzione Custom_Alloc.

    Sub Calculate()
    Dim Destination
    Dim Source
    Dim Elimination
    Dim Factor
    Dim FactorN
    Dim FactorD
    Dim C1list
    Dim C1item
    C1list = HS.Custom1.List("Alloc")
    For Each C1item in C1list  
    Source = "A#Telephone.C1#[None]"
    Destination = "A#Telephone.C1#" & C1item
    Factor = "A#Factor.C1#" & C1item
    FactorN = "A#Sales.C1#" & C1item
    FactorD = "A#Sales.C1#TotalProducts"
    Elimination = "A#ProductAllocations.C1#" & C1item 
    Call Custom_Alloc(Destination,Source,Factor,FactorN,
    FactorD,Elimination)
    Next 
    End Sub
    ' Beginning of the Custom_Alloc function 
    Sub Custom_Alloc(Destination,Source,FactorN,FactorD,
    Elimination)
    HS.Clear Factor
    HS.Exp Factor & " = " & FactorN & "/" & FactorD
    HS.EXP Destination & " = " & Source & " * " & Factor 
    If Elimination <> "" Then
    HS.EXP Elimination & " = " & Source & " * -1 * " & Factor
    End If
    End Sub