Show TOC

Syntax*RUNALLOCATION Dieses Dokument in der Navigationsstruktur finden

Mit der Allokation können Daten eines Quellbereichs anhand des angegebenen Faktors auf einen Zielbereich verteilt werden.

Syntax

*RUNALLOCATION

*FACTOR=<driver>

*DIM P_ACCT WHAT=<soure>; WHERE=<target>; USING=<distribution key>; [TOTAL=<distribution key>]

*DIM <other dimensions>

*ENDALLOCATION

WHAT (Quelle)

Der Quellwert stellt den Bereich von Datenwerten dar, die mit der Allokationsfunktion auf den Zielbereich verteilt werden sollen. Dieser Wert wird durch einen oder mehrere Tupel im Cube qualifiziert.

Mögliche WHAT-Optionen sind:

Optionen

Beschreibung

Beispiel

Element

Ein angegebenes Basiselement der Dimension

*DIM Region WHAT = US

[property]=„Eigenschaftswert“

Ein Filter, mit dem Dimensionselemente auf der Grundlage einer angegebenen Eigenschaft und eines angegebenen Werts für diese Eigenschaft ausgewählt werden

*DIM Product_Group = [Fruit] = "apples"

BAS

Alle Elemente der Blattebene eines Vaterelements einer bestimmten Dimension

*DIM Product_Group = BAS(TotalProduct)

dieselben wie bei WHERE

Verwenden Sie dieselben Elemente wie im WHERE-Parameter für die angegebene Dimension definiert.

*DIM Account WHERE = Rent

*DIM Account WHAT = Rent

<> Element

Der Operand <> referenziert alle Elemente, die ungleich einem definierten Element sind.

Im <>-Elementmodus sollte das Element das Basiselement der Dimension sein.

Wenn <> verwendet wird, sollten alle anderen Basiselemente dieser Dimension in den Bereich eingebunden sein.

*DIM Region USING <> Corp

Einschränkung von WHAT
  • Sie können in der WHAT-Bedingung kein Leerzeichen oder [ALL] verwenden.

  • Sie können mit <> keine Nicht-Basiselemente verwenden.

USING und TOTAL (Verteilungsschlüssel)

Grundlage der Allokation ist die Definition eines zu verteilenden Quellwertes. Dieser kann teilweise oder vollständig angegeben werden. Die Basis wird unter Verwendung eines Faktors definiert. Ein Faktor kann der Wert oder die Werte sein, aus denen durch Multiplikation oder Division ein Wert abgeleitet wird (in der Zukunft werden möglicherweise auch Addition und Subtraktion unterstützt).

Mit einem Faktor können Werte auch basierend auf einem definierten Bereich von Daten abgeleitet werden, der als USING bzw. Basisbereich bezeichnet wird.

Mögliche USING- und TOTAL-Optionen sind:

Optionen

Beschreibung

Beispiel

Element

Ein angegebenes Basiselement der Dimension

*DIM Region USING = US

BAS

Alle Elemente der Blattebene eines Vaterelements einer bestimmten Dimension

*DIM Product_Group = BAS(TotalProduct)

dieselben wie bei WHERE

Verwenden Sie dieselben Elemente wie im WHERE-Parameter für die angegebene Dimension definiert. Die Dimension muss für WHERE und USING dieselbe sein.

Hinweis Hinweis

WHERE unterstützt nur das Referenzieren eines einzelnen Elements.

Ende des Hinweises

*DIM Account WHERE = Rent

*DIM Account USING = PercentAcct

<>-Element

Der Operand <> referenziert alle Elemente, die ungleich einem definierten Element sind.

Im <>-Elementmodus sollte das Element das Basiselement der Dimension sein.

Wenn <> verwendet wird, sollten alle anderen Basiselemente dieser Dimension in den Bereich eingebunden sein.

*DIM Region USING <> Corp

[property]=„Eigenschaftswert“

Ein Filter, mit dem Dimensionselemente auf der Grundlage einer angegebenen Eigenschaft und eines angegebenen Werts für diese Eigenschaft ausgewählt werden

*DIM Product_Group = [Fruit] = "apples"

Einschränkung von USING
  • >0 kann nicht verwendet werden. USING = Amount >0 wird z. B. nicht unterstützt.

  • USING und TOTAL müssen dieselbe Definition aufweisen.

  • Sie können mit <> keine Nicht-Basiselemente verwenden.

  • Sie können übergeordnete Elemente in USING nicht direkt verwenden. BAS(parent) ist dagegen erlaubt, wie oben beschrieben.

FACTOR (Faktor)

Mit FACTOR können Sie arithmetische Ausdrücke definieren, die in den {expression}-Parameter geschrieben wurden. FACTOR kann Operanden, Klammern, Konstanten und eines der Schlüsselwörter USING und TOTAL (oder beide) enthalten, die jeweils den Betrag aus dem Bereich USING, den Betrag des Faktors und den Betrag aus dem Bereich TOTAL, der die Summe der Faktoren darstellt, enthalten.

  • Wenn FACTOR weggelassen wird, wird FACTOR standardmäßig auf 1 gesetzt.

  • Wenn der arithmetische Ausdruck weggelassen wird, wird als Standard Multiplikation verwendet.

Mögliche FACTOR-Optionen sind:

Optionen

Beschreibung

Beispiel

.8

Nur ein fester Betrag darf als Quellwert für die Allokation verwendet werden.

Der Tupel-Wert von WHAT ist 10 für Produkt A.

10*.8 = 8

USING

Der Wert des definierten USING-Bereichs wird als Basis der Allokation verwendet. Damit wird es möglich, Werte zu ändern, ohne dass die Definition der Allokation bearbeitet werden muss.

Der Tupel-Wert von WHAT ist 10 für Produkt A, der Tupel-Wert von USING ist 8.

10*.8 = 8

-1 * USING/100

Oder

1 * USING/100

Bei der Berechnung wird der Wert des Bereichs, der als USING definiert ist, umgekehrt (negativ) und dann durch 100 geteilt.

Der Tupel-Wert des USING-Bereichs ist 70 für Produkt A.

-70/100 = -.7

(-70%) (1-70)/100 = -.69 (-69%)

Hinweis Hinweis

Diese Funktion wird für primäre Konten verwendet und nicht für Berichtswerte.

Ende des Hinweises

USING/TOTAL

Bei der Berechnung wird der Wert des Bereichs, der als USING definiert ist, durch den Gesamtwert des als TOTAL definierten Bereichs geteilt.

Der Tupel-Wert des USING-Bereichs ist 70 für Produkt A. Der Gesamtwert des TOTAL-Bereichs (Tupels) ist 700, vorausgesetzt, dass der USING-Bereich für alle Regionen gilt und nicht nur für US.

70/700 = .1 (10%)

Grundlegende mathematische Ausdrücke mit USING und TOTAL

(Beispiel: 1 + USING, USING -1 und 1 – USING)

Bei der Berechnung werden mit dem Wert des Bereichs, der als USING definiert ist, anhand des Gesamtwertes des als TOTAL definierten Bereichs die notwendigen mathematischen Operationen durchgeführt.

Der Tupel-Wert des USING-Bereichs ist 70 für Produkt A.

1+70 = 71

70 -1 = 69

1-70 = -69

Einschränkung von FACTOR
  • In einem FACTOR-Ausdruck können Sie keine Skriptlogikschlüsselwörter verwenden.

WHERE (Ziel)

Das Ziel identifiziert die Tupel, auf die die Werte verteilt werden sollen. Es stellt Kombinationen von Dimensionselementen dar, auf die die Werte verteilt werden sollen. Das Ziel identifiziert die Dimension, für die der Wert der Elemente im Vergleich zur Quelle verändert wird, und nur ausdrücklich erwähnte und charakterisierte Dimensionen sollten geändert werden.

Das Schlüsselwort WHERE wird in Kombination mit dem Schlüsselwort *DIM zum Identifizieren der Elemente der Zieldimension (der im Vergleich zur Quelle zu ändernden Werte) verwendet.

Mögliche WHERE-Optionen sind:

Optionen

Beschreibung

Beispiel

Element

Ein angegebenes Basiselement der Dimension

*DIM Region WHERE = US

BAS

Alle Elemente der Blattebene eines Vaterelements einer bestimmten Dimension

*DIM Product_Group = BAS(TotalProduct)

dieselben wie bei WHAT

Verwenden Sie dieselben Elemente wie im WHAT-Parameter für die angegebene Dimension definiert.

*DIM Account WHAT = Rent

*DIM Account WHERE = Rent

leer oder [All]

Die Möglichkeit, entweder über einen Leer-Parameter oder das Schlüsselwort [ALL] alle Basiselemente einer bestimmten Dimension anzunehmen.

*DIM Entity =

*DIM IntCo = [ALL]

[property]=„Eigenschaftswert“

Ein Filter, mit dem Dimensionselemente auf der Grundlage einer angegebenen Eigenschaft und eines angegebenen Werts für diese Eigenschaft ausgewählt werden

*DIM Product_Group = [Fruit] = "apples"

Allgemeine Einschränkung
  • Die Schlüsselwörter *APP (Möglichkeit, bei Bedarf in eine andere Anwendung zu schreiben), COUNT und LIST in RUNALLOCATION sowie alle anderen Optionen, die oben nicht erwähnt sind, werden nicht unterstützt.

Beispiele
Beispiel 1

Das Konto RENT wird in die Entität GLOBALOPS eingegeben, Intercompany NON_INTERCO. Dieser Betrag muss anhand eines Allokationsprozentsatzes verteilt werden, der vom Benutzer in das Konto PERCENT in den entsprechenden Entitäten und für die gewünschten Elemente der Kategorien CATEGORY, TIME, DATASRC und RPTCURRENCY eingetragen wird.

Diese Allokation weist folgende Merkmale auf:

  • Sie verwendet das Schlüsselwort {dimensiontype}DIM zum Identifizieren der Dimensionen nach Typ.

  • Sie verwendet die Schlüsselwörter <<< und >>> um die Definitionen zu referenzieren, die weiter rechts oder weiter links verwendet werden

Vor der Allokation

Daten des Quellkontos (RENT):

RENT CHINA

China

RENT JAPAN

Japan

RENT INDIA

Indien

RENT ASAREST

restliches Asien

RENT ASA

Asien

50,000,000.00

Faktordaten (Prozentkonto):

PERCENT CHINA

China

10.00

PERCENT JAPAN

Japan

32.00

PERCENT INDIA

Indien

8.00

PERCENT ASAREST

restliches Asien

50.00

Syntax Syntax

  1. *XDIM_MEMBERSET TIME=2006.SEP
  2. *XDIM_MEMBERSET P_ACCT=RENT,PERCENT
  3. *XDIM_MEMBERSET ENTITY=ASA,INDIA,CHINA,JAPAN,ASAREST
  4. *RUNALLOCATION
  5. 	*FACTOR=USING/100
  6. 	*DIM P_ACCT WHAT=RENT; WHERE=<<<; USING=PERCENT
  7. 	*DIM ENTITY WHAT=ASA; WHERE=INDIA,CHINA,JAPAN,ASAREST; USING=<<<
  8. *ENDALLOCATION
Coding-Ende

Nach der Allokation

RENT CHINA

China

5,000,000.00

RENT JAPAN

Japan

16,000,000.00

RENT INDIA

Indien

4,000,000.00

RENT ASAREST

restliches Asien

25,000,000.00

RENT ASA

Asien

50,000,000.00

Beispiel 2

Das Konto RENT wird in die Entität GLOBALOPS eingegeben, Intercompany NON_INTERCO. Dieser Betrag muss auf Grundlage der gemieteten Quadratmeter, die von allen europäischen Entitäten genutzt werden, aufgeteilt werden.

Diese Allokation weist folgende Merkmale auf:

  • Die historische Miete wird als Faktor verwendet

  • Mit dem Schlüsselwort BAS( ) wird eine Elementliste erstellt

Vor der Allokation

Im Folgenden sind die historischen Daten für die Periode 2008.JAN aufgeführt. Der Vaterknoten ist Asien.

ENTITY (Entität)

CATEGORY (Kategorie)

2008.JAN

ganz Asien

ACTUAL

Asien

ACTUAL

China

ACTUAL

1,500.00

Japan

ACTUAL

7,000.00

Indien

ACTUAL

500.00

restliches Asien

ACTUAL

5,000.00

Planung Asien

ACTUAL

Daten des Quellkontos (RENT):

  • 50.000 auf Basisländer verteilen

  • Diese Eingabe kann in der Entität Planung Asien empfangen werden.

Faktordaten:

  • Die historischen Daten sind der Faktor

Syntax Syntax

  1. *XDIM_MEMBERSET TIME=2008.JAN,2009.JAN
  2. *XDIM_MEMBERSET P_ACCT=RENT
  3. *XDIM_MEMBERSET CATEGORY=ACTUAL,PLAN
  4. *XDIM_MEMBERSET ENTITY=ASA,BAS(RASA)
  5.  //Create total rent data to be allocated.
  6. *WHEN ENTITY
  7. *IS "ASA"
  8. 	*REC (EXPRESSION=50000,TIME=2009.JAN,CATEGORY=PLAN)
  9. *ENDWHEN
  10. *COMMIT
  11. //Allocate to base countries.
  12. *RUNALLOCATION
  13. 	*FACTOR=USING/TOTAL
  14. 	*DIM P_ACCT WHAT=RENT; WHERE=<<<; USING=<<<; TOTAL=<<<
  15. 	*DIM ENTITY WHAT=ASA; WHERE=BAS(RASA); USING=<<< TOTAL=<<<
  16. 	*DIM TIME WHAT=>>>; WHERE=2009.JAN; USING=2008.JAN; TOTAL=<<<
  17. 	*DIM CATEGORY WHAT=>>>; WHERE=PLAN; USING=ACTUAL; TOTAL=<<<
  18. *ENDALLOCATION
  19. //Clear the total rent account.
  20. *WHEN ENTITY
  21. *IS "ASA"
  22. 	*REC (EXPRESSION=0,TIME=2009.JAN,CATEGORY=PLAN)
  23. *ENDWHEN
Coding-Ende

Nach der Allokation

ENTITY (Entität)

CATEGORY (Kategorie)

2009.JAN

ganz Asien

PLAN

50,000.00

Asien

PLAN

50,000.00

China

PLAN

7,500.00

Japan

PLAN

35,000.00

Indien

PLAN

2,500.00

restliches Asien

PLAN

5,000.00

Planung Asien

PLAN

2009.JAN wird mit Mieten für einzelne Länder basierend auf deren historischem Anteil gebucht.

Beispiel 3

Die Summe aller ADVERTISING-Ausgaben, die bei allen europäischen Vorgängen angefallen sind, müssen basierend auf ihren externen SALES wieder auf die einzelnen europäischen Vorgänge aufgeteilt werden.

Diese Allokation weist folgende Merkmale auf:

  • Sie verwendet das Schlüsselwort DOT({type}) zum Identifizieren der Dimensionen nach Typ.

  • Sie demonstriert die Möglichkeit, in der WHAT-Region Aggregationen durchzuführen (SALESEUROPE und ALL_INTCO sind Vaterelemente).

  • Sie demonstriert die n-zu-eins-Umleitung einer Dimension (sie liest die Summe der Intercompany-Elemente und schreibt sie in das NON_INTERCO-Element der INTCO-Dimension).

  • Sie demonstriert die Eins-zu-eins-Umleitung einer Dimension (sie liest das INPUT-Element und schreibt das Ergebnis in das ALLOCATED-Element der DATASRC-Dimension).

Vor der Allokation

Quelldaten – Historische Daten für External Sales

Ist – Periodisch

2008.JAN

Planung Asien

China

500,000

Japan

600,000

Indien

200,000

restliches Asien

800,000

Asien

2,100,000

ganz Asien

2,100,000

Zu verteilende Daten (ADVERTISING):

Plan – Periodisch

2009.JAN

Planung Asien

500,000

China

Japan

Indien

restliches Asien

Asien

ganz Asien

500,000

Syntax Syntax

Faktor: USING/TOTAL

APP oder (Dim) oder VALUE

WHAT

WHERE

USING

TOTAL

DOT(A)

ADVERTISING

<<<

EXTSALES

<<<

DOT(E)

SALESEUROPE

BAS(SALESEUROPE)

<<<

<<<

DOT(I)

ALL_INTERCO

NON_INTERCO

>>>

BAS(ALL_INTERCO)

DATASRC

INPUT

ALLOCATED

INPUT

<<<

  1. *RUNALLOCATION
  2. 	*FACTOR =USING/TOTAL
  3. 	*DIM P_ACCT WHAT=ADVERTISING; WHERE=<<<; USING=EXTSALES; TOTAL=<<<
  4. 	*DIM ENTITY WHAT=ASA; WHERE=BAS(RASA); USING=<<<; TOTAL=<<<
  5. 	*DIM INTERCO WHAT=WORLD_INTERCO; WHERE=I_NONE; USING=>>>; TOTAL=BAS(World_InterCo)
  6. 	*DIM P_DATASRC WHAT=MANUAL; WHERE=ALLOCATED; USING=MANUAL; TOTAL=<<<
  7. 	*DIM TIME WHAT=2009.JAN; WHERE=2009.JAN; USING=2008.JAN; TOTAL=<<<
  8. *ENDALLOCATION
Coding-Ende

Nach der Allokation

Plan – Periodisch

2009.JAN

Planung Asien

China

119,048

Japan

142,857

Indien

47,619

restliches Asien

190,476

Asien

500,000

ganz Asien

500,000

Beispiel 4

In diesem Beispiel wird dasselbe Szenario implementiert wie in Beispiel 3, aber mit einer Systemvariable für Jahr (%YEAR%). Dabei wird das aktuelle Kalenderjahr zurückgegeben. Es wird angenommen, dass das Skript für das Jahr 2009 vorgesehen ist.

Vor der Allokation

Quelldaten – Historische Daten für External Sales

Ist – Periodisch

2008.JAN

Planung Asien

China

500,000

Japan

600,000

Indien

200,000

restliches Asien

800,000

Asien

2,100,000

ganz Asien

2,100,000

Zu verteilende Daten (ADVERTISING):

Plan – Periodisch

2009.JAN

Planung Asien

500,000

China

Japan

Indien

restliches Asien

Asien

ganz Asien

500,000

Syntax Syntax

Faktor: USING/TOTAL

APP oder (Dim) oder VALUE

WHAT

WHERE

USING

TOTAL

DOT(A)

ADVERTISING

<<<

EXTSALES

<<<

DOT(E)

SALESEUROPE

BAS(SALESEUROPE)

<<<

<<<

DOT(I)

ALL_INTERCO

NON_INTERCO

>>>

BAS(ALL_INTERCO)

DATASRC

INPUT

ALLOCATED

INPUT

<<<

  1. *RUNALLOCATION
  2. 	*FACTOR =USING/TOTAL
  3. 	*DIM P_ACCT WHAT=ADVERTISING; WHERE=<<<; USING=EXTSALES; TOTAL=<<<
  4. 	*DIM ENTITY WHAT=ASA; WHERE=BAS(RASA); USING=<<<; TOTAL=<<<
  5. 	*DIM INTERCO WHAT=WORLD_INTERCO; WHERE=I_NONE; USING=>>>; TOTAL=BAS(World_InterCo)
  6. 	*DIM P_DATASRC WHAT=MANUAL; WHERE=ALLOCATED; USING=MANUAL; TOTAL=<<<
  7. 	*DIM TIME WHAT=%YEAR%.JAN; WHERE=%YEAR%.JAN; USING=%YEAR%(-1).JAN; TOTAL=<<<
  8. *ENDALLOCATION
Coding-Ende

Nach der Allokation

Plan – Periodisch

2009.JAN

Planung Asien

China

119,048

Japan

142,857

Indien

47,619

restliches Asien

190,476

Asien

500,000

ganz Asien

500,000

Beispiel 5

Alle Konten in der GuV von Kategorie ACTUAL, für die drei Entitäten ITALY, FRANCE und UK, werden in die entsprechenden Konten der Entität GLOBALOPS für Kategorie BUDGET übernommen. Diese Allokation ist im Grunde ein Beispiel für einen simplen Kopiervorgang, in dem FACTOR überhaupt nicht verwendet wird. In diesem Beispiel führt die Engine eine Eins-zu-eins-Kopie (ACTUAL nach BUDGET) und viele n-zu-eins-Kopien (ITALY, FRANCE und UK werden addiert und nach GLOBALOPS kopiert) aus.

Vor der Allokation

Ist – Periodisch

2007.DEC

UK (Großbritannien)

30,000

Italien

10,000

Frankreich

10,000

Budget – Periodisch

2008.FEB

Geschäftstätigkeit weltweit

Syntax Syntax

Faktor:

APP oder (Dim) oder VALUE

WHAT

WHERE

ACCOUNT

[GROUP] = ”profit & loss”

<<<

CATEGORY

ACTUAL

BUDGET

ENTITY

SALESITALY; SALESFRANCE; SALESUK

GLOBALOPS

DOT(R)

LC

<<<

Eine in ALLOCATION nicht unterstützte Eigenschaft ersetzt über eine SELECT-Anweisung eine Eigenschaft mit einer Variablen. Stellen Sie sicher, dass die *SELECT-Anweisung nur Basiselemente auswählt.

  1. *XDIM_MEMBERSET ACCOUNT=ADVERTISING,EXTSALES
  2. *XDIM_MEMBERSET ENTITY=UK,ITALY,FRANCE,GLOBAL
  3. *XDIM_MEMBERSET P_DATASRC = INPUT
  4. *XDIM_MEMBERSET TIME = 2007.DEC,2008.JAN
  5. *XDIM_MEMBERSET CATEGORY = ACTUAL,BUDGET
  6. *XDIM_MEMBERSET INTCO= I_NONE
  7. *XDIM_MEMBERSET RPTCURRENCY = LC
  8. *SELECT(%ACCT%, "[ID]",ACCOUNT,"[CALC]='N'","[GROUP]='PL'")
  9. *RUNALLOCATION
  10. 	*FACTOR=
  11. 	*DIM ACCOUNT WHAT=[GROUP]="PL" AND [CALC]="N"; WHERE=<<<
  12. 	*DIM CATEGORY WHAT=ACTUAL; WHERE=BUDGET
  13. 	*DIM ENTITY WHAT=UK,ITALY,FRANCE; WHERE=GLOBAL
  14. 	*DIM DOT(R) WHAT=LC; WHERE=<<<
  15. 	*DIM TIME WHAT=2007.DEC; WHERE=2008.FEB
  16. *ENDALLOCATION
Coding-Ende

Nach der Allokation

Budget – Periodisch

2008.FEB

weltweite Geschäftstätigkeit

50,000

Alle in dieser Dokumentation enthaltenen Software-Quelltextzeilen oder -Strings („Code“) dienen nur als Beispiele und sind nicht für die Anwendung in einem Produktivsystem vorgesehen. Der angegebene Quelltext soll lediglich die Syntax und die Ausdrucksregeln bestimmter Softwarecodes erläutern. SAP übernimmt keine Verantwortung für die Richtigkeit und Vollständigkeit des angegebenen Quelltextes und übernimmt keine Haftung für Fehler oder Schäden, die aus dessen Anwendung entstehen könnten; es sei denn, derartige Schäden wurden von SAP vorsätzlich oder fahrlässig hervorgerufen.