Konzept: Formelbausteine
Begriffe zur Beschreibung von Formeln
Eine Formel hat Folgendes:
- Operanden: Die zu berechnenden Elemente. Sie trennen Operanden durch Operatoren. Zu den Operanden bei Adaptive Planning gehören:
- Referenzen: Konten mit Modifikatoren, Annahmen, Zeilen (Spalten aus modellierten Tabellenblättern).
- Konstanten: Zahlen oder Textwerte, die direkt in eine Formel eingegeben werden.
- Modifikatoren: Zusätzliche Anweisung, die die Referenz auf bestimmte Zeit-, Ebenen-, Dimensions- oder Attributwerte angibt.
- Operatoren: Geben Sie die Art der durchzuführenden Berechnung an. Sie können Folgendes verwenden:
- Symbole Beispiel: Der Operator Sternchen (*) multipliziert Zahlen. Sie finden die meisten Symbole im Formelassistenten oder können sie mit Ihrer Tastatur eingeben.
- Funktionen: Vorlagen mit präziser Syntax, die Operanden und Operatoren kombinieren. Sie müssen die Variablen durch Ihre eigenen Bezüge, Modifikatoren und Ausdrücke ersetzen. Beispiel: Ersetzen Sie für die Rundungsfunktion Runden (N) das N durch eine komplexe Berechnung, und die Funktion rundet es auf die nächste ganze Zahl.
Darüber hinaus beschreiben die folgenden Begriffe Teile einer Formel:
- Ausdruck: Beschreibt einen bestimmten Teil einer Formel. Beispiel: In dieser logischen Formel ist Iff ((ACCT.001 > ACCT.002, 1, 0)) "ACCT > ACCT.002" ein Ausdruck.
- Begriff: Die Referenz in Kombination mit Modifikatoren. Beispiel: ACCT.001 [time = this - 1] ist ein Begriff.
- Syntax: Die Art und Weise, wie Sie Daten in Ihrem Modell referenzieren müssen, um eine gültige Formel zu erstellen. Beispiel: Die Syntax für die Referenzierung eines Kontos lautet ACCT.<account_code>.
- Punktnotation: Ein erweiterter Satz von Syntaxregeln, die auf Elemente Ihres Modells verweisen und zusätzliche Funktionen ermöglichen. Der primäre Anwendungsfall für die Punktnotation sind Iff-Anweisungen. Beispiel: Sie können this.Month.NumberOfDays < 30 zu einer Iff-Anweisung hinzufügen, um eine andere Berechnung für den Monat Februar anzuwenden.
Informationen zur Syntax in der Dokumentation
Einige Anmerkungen zur Syntax in der Dokumentation:
- Wir verwenden Großbuchstaben in Klammern, z. B. (N), oder Text innerhalb von Dreiecken, wie <account_code>, um Variablen anzugeben. Sie müssen die Variablen durch gültige Konstanten, Kontoreferenzen oder Formelausdrücke ersetzen.
- Gemäß dem Standard vieler Länder verwenden wir Kommas, um Begriffe zu trennen. Wenn Ihr Browser Kommas als Dezimalzeichen verwendet, müssen Sie die Begriffe durch Semikolons trennen.
- Wir fügen Leerzeichen hinzu, um die Formeln lesbar zu machen. Dies ist jedoch nicht erforderlich. Sie können auch Leerzeichen hinzufügen oder in Ihren Formeln weglassen.
- Wir schreiben Funktionen wie Divf groß und verwenden nur Großbuchstaben für Elemente wie ACCT, aber Formeln unterscheiden nicht zwischen Groß- und Kleinschreibung.
Beispiel: Die Syntax für das Hinzufügen eines Ebenenmodifikators zu einem Konto lautet ACCT.<code> [level = <level_code>]. Sie müssen:
- ACCT verwenden um ein Konto zu referenzieren.
- Ersetzen Sie <Code> durch einen tatsächlichen Kontocode. Stellen Sie sicher, dass Sie auch die Pfeile entfernen.
- Verwenden Sie eckige Klammern, um Modifikatoren zu definieren.
- Verwenden Sie Ebene =, um nach Ebene zu ändern.
- Ersetzen Sie <level_name> durch den tatsächlichen Code einer Ebene und entfernen Sie die Pfeile.
Operanden: Bezüge und Konstanten
Referenzen sind eine Art von Operanden. In Adaptive Planning lädt die Referenz einen Wert von einer anderen Stelle im Modell in die Formel. Beispiel: Sie können ein Konto referenzieren. Die Kontoreferenz lädt den Wert für dieses Konto für eine bestimmte Version, Ebene und Zeit. Sie können die folgenden grundlegenden Referenzen zu Formeln hinzufügen:
Referenz | Syntax | Beispiel |
|---|---|---|
Hauptbuch-, benutzerdefinierte oder Metrikkonten. | ACCT.<AccountCode> | ACCT.6113 Wobei 6113 der Kontocode ist. |
Cube- und modellierte Konten. | ACCT.<SheetCode.AccountCode> | ACCT.RevenueCube.003 Wobei ErtragCube der Tabellenblattcode und 003 der Kontocode ist. |
Annahmekonten | ASSUM.<AccountCode> | ASSUM.123 Wobei 123 der Kontocode ist. |
Spalten in einem modellierten Tabellenblatt Nur für modellierte berechnete Konten verfügbar. | ROW.<column_code> | ROW.StartDate Wobei Startdatum der Spaltencode für das Feld „Startdatum“ im modellierten Tabellenblatt ist. |
Verteilungs- und Werte-Lookups in modellierten Tabellenblättern
Nur für modellierte berechnete Konten verfügbar. | ROW.<lookup_name> | Row.BenefitLookup Wobei BenefitLookup der Name der Werte-Lookup-Tabelle ist. |
Konstanten | Eine beliebige Zahl | 500 |
Sie können auch mit der Erfassungsmethode auf Zellen in einem Tabellenblatt verweisen, die die Formel mit dem Konto und allen vorhandenen Modifikatoren, z. B. Zeit und Ebenen, ausfüllt. Siehe: Konzept: Einfache Formeln in Tabellenblattzellen eingeben.
Modifikatoren
Sie können mit Modifikatoren Genauigkeit hinzufügen, wenn Sie ein Konto oder eine Zeile referenzieren. Modifikatoren suchen einen bestimmten Slice der Kontodaten. Beispiel: Sie möchten den Wert eines Kontos für eine bestimmte Ebene oder Zeitperiode berechnen.
Sie fügen Modifikatoren hinzu:
- Neben der Kontoreferenz ohne Leerzeichen.
- In eckigen Klammern.
- Mit Kommas oder Semikolon getrennt, wenn Sie Kommas für Dezimalstellen verwenden.
- Verwenden Sie die genauen Codes und Namen, die in Ihrem Modell vorhanden sind.ModifikatorSyntaxBeispielZeit[time = <strata_code>]ACCT.001 [time = 2023]Wobei 2023 die Rollup-Schichten für das Jahr sind. Ruft den Rollup-Wert 2023 des Kontos ab.Ebenen[level = <level_code>]ACCT.001 [level = Sales]Wobei „Vertrieb“ der Ebenencode ist. Ruft den Wert des Kontos nur auf der Vertriebsebene ab.Benutzerdefinierte Dimension[<dimension_code> = <dimension_value_code>]ACCT.001 [produkt = Shirts]Wobei „Produkt“ der Dimensionscode und „Shirts“ der Code des Dimensionswerts ist. Ruft die mit „Hemden“ getaggten Kontodaten ab.Attribute[<attribute_code> =<attribute_value_code>]ACCT.001 [productgroup =tops]Wobei Productgroup das Attribut der Dimension „Product“ und „tops“ der Attributwert ist.Ruft die Kontodaten ab, die mit Dimensionswerten getaggt sind, die dem obersten Attributwert entsprechen.Mehrere Modifikatoren[<modifier1> = <code>, <modifier2> = <code>, <modifier3> = <code>]ACCT.001 [time = 2023, Level = Sales, Produkt = Shirts]Ruft das Zeit-Rollup von 2023 für die Ebene „Vertrieb“ für „Hemden“ ab.
Sie können pro Referenz mehrere Modifikatoren verwenden, aber nur einen Wert pro Modifikator. Wenn Sie also den Wert für mehr als eine Ebene abrufen möchten:
- Falsch: ACCT.001 [level = Sales, Marketing]
- Falsch: ACCT.001 [level = Sales, level = Marketing]
- Richtig: ACCT.001 [level = Sales] + ACCT.001 [level = Marketing]
Für eine ganze Formel reicht möglicherweise nur das Hinzufügen eines Modifikators.
Operatoren: Allgemeine mathematische Symbole
Operatoren sind mathematische Symbole, die Berechnungen ermöglichen. Sie können grundlegende mathematische Formeln mit den Tasten auf Ihrer Tastatur verwenden. Im Formelassistenten stehen Ihnen über die ersten Schaltflächen in der Symbolleiste einfache mathematische Operatoren zur Verfügung, die Sie zwischen Begriffen in die Formel einfügen können.
Die einfachsten Operanden mathematischer Formeln sind Zahlen. Die einfachsten Operatoren sind diejenigen, die Sie auf Ihrer Tastatur finden können. Sie benötigen keine Leerzeichen zwischen Operanden und Operatoren, aber Sie können sie hinzufügen, um die Lesbarkeit der Formel zu verbessern. Sie können auch einfache Berechnungen in komplexere Formeln integrieren, die Konten und Modifikatoren referenzieren.
Hier sind einige Beispiele für einfache mathematische Formeln, die Sie verwenden können:
Mathematischer Operator | Beispielformel |
|---|---|
Addition (+) | ACCT.001 + ACCT.002 |
Subtraktion (-) | ACCT.001 - ACCT.002 |
Multiplikation (*) | ACCT.001 * ACCT.002 |
Division (Divf) | Divf (ACCT.001, ACCT.002) Dividiert ACCT.001 (die Dividende) durch ACCT.002 (den Divisor) |
Modulo (%) | 10 % 3 Berechnet den Rest des Quotienten. Gibt 1 zurück, da 10 geteilt durch 3 = 3 Rest 1 ist. |
Klammer () | (ACCT.001 + ACCT.002) * 12 Gibt die Reihenfolge der Vorgänge vor: Addieren Sie die Konten vor der Multiplikation mit 12. |
Runden(N) | Runden (ACCT.001) Rundet auf die nächste ganze Zahl. Wenn im Beispiel der Wert von ACCT.001 5,75 beträgt, gibt die Formel 6 zurück. |
Formelfunktionen
Eine Formelfunktion ist eine Vorlage, die unterschiedliche Operatoren und Variablen verwendet. Wenn Sie eine Funktion verwenden, ersetzen Sie die Variablen durch Bezüge, Konstanten oder vollständige Formelausdrücke. Funktionen arbeiten selten allein. Stattdessen reihen Sie Funktionen aneinander, um Ihre Formel zu erstellen.
Beispiel: Für das Aufwandskonto möchten Sie den Wert des letzten Jahres verwenden und eine Preisänderungsrate anwenden, die Sie normalerweise in einem Annahmekonto speichern. Um zu vermeiden, dass leere Zellen referenziert werden, können Sie eine IF-Anweisung mithilfe einer logischen Anweisung erstellen. Die Vorlage sieht wie folgt aus: Iff (EXPR, T, F).
So können Sie die Funktion zum Erstellen einer Formel verwenden:
Ersetzen Sie die Variable | Beispiel | Beschreibung |
|---|---|---|
Ersetzen Sie EXPR durch die logische Funktion IsBlank, die eine Funktion innerhalb einer Funktion erstellt. | Iff ( isBlank (N) , T, F) | Die Entweder-oder-Konkonstante, auf der die Berechnungen für Wahr und Falsch basieren. |
Ersetzen Sie N durch die Annahme Umkehrrate, die den Kontocode „inFl“ hat. | Iff (isBlank ( ASSUM.InFl ), T, F) | Wenn die Annahme "Infationsrate" leer ist ... |
Ersetzen Sie T durch eine Berechnung, die getriggert wird, wenn EXPR „true“ ist. | Iff (isBlank (ASSUM.InFl), ACCT.this [time = this - 12] * (1,05) , F) | Wenn die Annahme "Innovationsrate" leer ist, nehmen Sie den Wert dieses Kontos von vor 12 Monaten und multiplizieren Sie ihn mit 1,05. |
Ersetzen Sie F durch eine Berechnung, die ausgelöst wird, wenn EXPR falsch ist. | Iff (isBlank (ASSUM.InFl), ACCT.this [time = this - 12] * (1,05), ACCT.this [time = this - 12] * ASSUM.InFl ) | Wenn die Annahme "Innovationsrate" nicht leer ist, nehmen Sie den Wert dieses Kontos von vor 12 Monaten und multiplizieren Sie ihn mit der Annahme "Innovationsrate". |
Im Formelassistenten werden die Formelfunktionen in folgende Gruppen eingeteilt:
- Mathematisch
- Logisch
- Date
- String
Sie können eine Kategorie auswählen und das Formelfeld dann mit den verfügbaren Vorlagen vorausfüllen. Siehe: Referenz: Formelfunktionen.
Positionierung im Grid
Im Grid von Adaptive Planning ist eine Formel vorhanden. Eine typische Tabelle hat zwei Achsen: Konten und Zeit. Die Konten werden in den Zeilen angezeigt, die Zeit in der Spalte. Jede Zelle stellt einen bestimmten Schnittpunkt zwischen dem Konto und der Zeitperiode dar.
In Adaptive Planning ist das Grid mehrdimensional, was bedeutet, dass es mehr als zwei Achsen über das zweidimensionale Tabellenblatt hinaus gibt, das Sie auf dem Bildschirm sehen. Beispiel: Die Daten für „Ertrag“ befinden sich am Schnittpunkt der Ebene „Vertrieb“, der Version „Budget 2025“, dem Ertragskonto in der Hauptbuch-Hierarchie, dem benutzerdefinierten Dimensionswert „Shirts“ für Produkt, der Zeitperiode „Januar 2025“ usw. Wenn Sie sich auf einen Datenpunkt in einer Formel beziehen, beziehen Sie sich auf jede der Achsen oder Dimensionen. Sofern Sie die Dimension nicht angeben, gelten bestimmte Standardvorgaben, die auf dem Speicherort der Formel basieren. Die folgenden Dimensionen tragen zu jedem Datenschnittpunkt bei:
Dimension | Standard in Referenz |
|---|---|
Zeit und Ebene | Stimmt mit dem aktuellen Standort überein, es sei denn, Sie ändern Ihre Referenz in Bezug auf Zeit oder Ebene. Beispiel: Eine Formel für ACCT.001 lautet ACCT.002 * 10. Für Januar 2024 übernimmt die Formel den Wert ACCT.002 für Januar 2024. Für Februar 2024 wird der Wert vom 24. Februar usw. übernommen, es sei denn, Sie geben in der Formel etwas anderes für die Zeit an. Für Ebenen gilt das Gleiche. Bei Berechnungen werden die Werte auf derselben Ebene abgerufen, die aktuell berechnet wird. |
Currency | Die definierte Währung der aktuellen Ebene. |
Konto | Das aktuelle Konto, es sei denn, Sie referenzieren ein anderes Konto. |
Jede benutzerdefinierte Dimension | Der Dimensionswert am aktuellen Ort. Wenn am aktuellen Standort kein Dimensionswert vorhanden ist, wird als Standardwert Ohne Kategorie verwendet. |