
Formelvariablen in Berichten
Eine Formelvariable steht für eine vom Anwender definierte Formel, durch die ein Wert für die Variable festgelegt wird. Im Gegensatz zur Wertvariable ist der Vorschlagswert einer Formelvariable nicht fix. Das System errechnet automatisch Werte für Formelvariablen, wenn Sie einen Bericht ausführen, der die Formelvariable verwendet (z.B. anhand des Systemdatums oder anderer Variablen).

In Ihrem Bericht werden z.B. Daten für das aktuelle Jahr und das vorige Jahr ausgegeben. Wenn Sie für diese beiden Jahre zwei unabhängige Variablen anlegen, müssen Sie bei der Berichtsausgabe auf dem Selektionsbild beide Jahre eingeben. Wenn Sie die Variable für das vorige Jahr als Formelvariable definieren, die ihren Wert aus der Variable für das aktuelle Jahr ableitet, müssen Sie auf dem Selektionsbild nur das aktuelle Jahr eingeben.
Weitere Informationen zum Anlegen von Formelvariablen finden Sie unter
Formelvariablen anlegen.Wenn Sie Formelvariablen verwenden, können Sie verschiedene neue Berichtstypen anlegen. Den folgenden Beispielen können Sie entnehmen, wie Sie Fomelvariablen in Ihren Berichten verwenden können.
Beispiel 1: Perioden rollen
Siehe hierzu den mit der Anwendungskomponente Spezielle Ledger (FI-SL) ausgelieferten Beispielbericht 0R-FOVAR (Bibliothek 0R1).
Dieser Bericht verwendet Formelvariablen zum Anlegen von Berichtsspalten, die zwölf Perioden enthalten. Wenn Sie die Berichtsperiode und das Berichtsjahr bei der Ausführung des Berichts eingeben, gibt das System Daten für die Berichtsperiode und die vorhergehenden elf Perioden aus.
Um den Beispielbericht mit den rollierenden Perioden zu definieren, müssen Sie zwölf Formelvariablen für die zwölf Perioden und zwölf Formelvariablen für das betreffende Geschäftsjahr anlegen. Sie sollten die Formelvariablen in der Reihenfolge anlegen, in der sie in der folgenden Tabelle aufgelistet sind.
Wenn Sie einen Report-Writer-Bericht anlegen, legen Sie für jedes Variablenpaar eine Kennzahl an. (Zuerst müssen Sie Basic-Sets und Multi-Dimension-Sets anlegen, die die Formelvariablen enthalten.) Wenn Sie einen Report-Painter-Bericht anlegen, können Sie die Variablen direkt in die Berichtsdefinition eingeben.
Im Beispielbericht "Rollierende Perioden" verwendete Formelvariablen
|
Per.-Variable |
Formel |
Jahr.-Variable |
Formel | |
Spalte 12 |
&0R-RP00 |
#S002 |
&0R-RY00 |
#S001 |
Spalte 11 |
&0R-RP01 |
IF 0R-RP00 > 1 THEN 0R-RP00 - 1 ELSE 12 |
&0R-RY01 |
IF 0R-RP01 < 0R-RP00 THEN 0R-RY00 ELSE 0R-RY00 - 1 |
Spalte 10 |
&0R-RP02 |
IF 0R-RP01 > 1 THEN 0R-RP01 - 1 ELSE 12 |
&0R-RY02 |
IF 0R-RP02 < 0R-RP01 THEN 0R-RY01 ELSE 0R-RY01 - 1 |
Spalte 9 |
&0R-RP03 |
IF 0R-RP02 > 1 THEN 0R-RP02 - 1 ELSE 12 |
&0R-RY03 |
IF 0R-RP03 < 0R-RP02 THEN 0R-RY02 ELSE 0R-RY02 - 1 |
Spalte 8 |
&0R-RP04 |
IF 0R-RP03 > 1 THEN 0R-RP03 - 1 ELSE 12 |
&0R-RY04 |
IF 0R-RP04 < 0R-RP03 THEN 0R-RY03 ELSE 0R-RY03 - 1 |
Spalte 7 |
&0R-RP05 |
IF 0R-RP04 > 1 THEN 0R-RP04 - 1 ELSE 12 |
&0R-RY05 |
IF 0R-RP05 < 0R-RP04 THEN 0R-RY04 ELSE 0R-RY04 - 1 |
Spalte 6 |
&0R-RP06 |
IF 0R-RP05 > 1 THEN 0R-RP05 - 1 ELSE 12 |
&0R-RY06 |
IF 0R-RP06 < 0R-RP05 THEN 0R-RY05 ELSE 0R-RY05 - 1 |
Spalte 5 |
&0R-RP07 |
IF 0R-RP06 > 1 THEN 0R-RP06 - 1 ELSE 12 |
&0R-RY07 |
IF 0R-RP07 < 0R-RP06 THEN 0R-RY06 ELSE 0R-RY06 - 1 |
Spalte 4 |
&0R-RP08 |
IF 0R-RP07 > 1 THEN 0R-RP07 - 1 ELSE 12 |
&0R-RY08 |
IF 0R-RP08 < 0R-RP07 THEN 0R-RY07 ELSE 0R-RY07 - 1 |
Spalte 3 |
&0R-RP09 |
IF 0R-RP08 > 1 THEN 0R-RP08 - 1 ELSE 12 |
&0R-RY09 |
IF 0R-RP09 < 0R-RP08 THEN 0R-RY08 ELSE 0R-RY08 - 1 |
Spalte 2 |
&0R-RP10 |
IF 0R-RP09 > 1 THEN 0R-RP09 - 1 ELSE 12 |
&0R-RY10 |
IF 0R-RP10 < 0R-RP09 THEN 0R-RY09 ELSE 0R-RY09 - 1 |
Spalte 1 |
&0R-RP11 |
IF 0R-RP10 > 1 THEN 0R-RP10 - 1 ELSE 12 |
&0R-RY11 |
IF 0R-RP11 < 0R-RP10 THEN 0R-RY10 ELSE 0R-RY10 - 1 |
Die Formelvariablen &0R-RP00 (Periode der letzten Spalte) und &0R-RY00 (Geschäftsjahr der letzten Spalte) sind die einzigen unabhängigen Variablen in den Berichtsspalten. Jedes Variablenpaar errechnet die Periode und das Geschäftsjahr der vorhergehenden Periode. Wenn das System mit Hilfe von Periode 1 die vorhergehenden Perioden errechnet, ändert sich das Geschäftsjahr.
Beispiel 2: Perioden des Quartals q anzeigen
In diesem Beispielbericht werden drei Spalten für die Perioden des Quartals q ausgegeben.
Um die Berichtsspalten zu definieren, müssen Sie zunächst die Wertvariable &QUARTAL für das Merkmal "Periode" anlegen. Als Variablenbeschreibung geben Sie
Quartal ein. Diese Variable ist die unabhängige Variable. Anschließend müssen Sie drei Formelvariablen (siehe folgende Tabelle) für die drei Perioden des Quartals anlegen.Formelvariablen, die zur Berechnung der Perioden des Quartals q verwendet werden
|
Period.-Variable |
Formel | |
Spalte 1 |
&QPER1 |
QUARTAL * 3 - 2 |
Spalte 2 |
&QPER2 |
QUARTAL * 3 - 1 |
Spalte 3 |
&QPER3 |
QUARTAL * 3 |
In diesem Beispiel wird angenommen, daß das erste Quartal aus den Perioden eins, zwei und drei besteht. Sie geben die Formelvariablen &QPER1, &QPER2 und &QPER3 in Kennzahlen ein, wenn Sie einen Report-Writer-Bericht anlegen. Wenn Sie einen Report-Painter-Bericht anlegen, können Sie die Variablen direkt in die Spaltendefinition eingeben.
Die unabhängige Variable &QUARTAL wird nicht direkt im Bericht verwendet, sondern indirekt über die Formelvariablen. Wenn Sie die Berichtsgruppe des Berichts ausführen, erzeugt der Report Writer das Eingabefeld Quartal für die unabhängige Variable &QUARTAL. Dann können Sie Quartal eins, zwei, drei oder vier eingeben, um Ihren Bericht für das betreffende Quartal ausgeben zu lassen.
Beispiel 3: Perioden des Quartals q anhand der Periode p
In diesem Beispielbericht werden drei Spalten für die Perioden des Quartals q ausgegeben. Im Gegensatz zu dem Bericht aus Beispiel 2 geben Sie auf dem Selektionsbild zur Festlegung der drei Periodenspalten eine Periode des Quartals und nicht das Quartal selbst an.
Um die Berichtsspalten zu definieren, müssen Sie zunächst die Wertvariable &PERIODE für das Merkmal "Periode" anlegen. Als Variablenbeschreibung geben Sie
Periode ein. diese Variable ist die unabhängige Variable. Anschließend müssen Sie drei Formelvariablen anlegen (siehe folgende Tabelle), durch die die drei Perioden des Quartals festgelegt werden.
Formelvariablen, die zur Berechnung der Perioden des Quartals q anhand der Periode p verwendet werden
|
Period.-Variable |
Formel | |
Spalte 1 |
&QPER1 |
((PERIODE - 1) DIV 3 + 1) * 3 - 2 |
Spalte 2 |
&QPER2 |
((PERIODE - 1) DIV 3 + 1) * 3 - 1 |
Spalte 3 |
&QPER3 |
((PERIODE - 1) DIV 3 + 1) * 3 |
In diesem Beispiel wird angenommen, daß das erste Quartal aus den Perioden eins, zwei und drei besteht. Die unabhängige Variable &PERIODE wird nicht direkt im Bericht verwendet, sondern indirekt über die Formelvariablen. Wenn Sie die Berichtsgruppe des Berichts ausführen, erzeugt der Report Writer das Eingabefeld Periode für die unabhängige Variable &PERIODE. Dann können Sie die Periode eins, zwei oder drei eingeben, um Ihren Bericht für die Perioden des ersten Quartals auszugeben.
Beispiel 4: Variable Anzahl von Spalten für die Perioden p1 bis p12 anzeigen
Mit Hilfe dieses Beispielberichts können Sie einen Bericht anlegen, der eine variable Anzahl von Spalten für die Perioden eins bis zwölf enthält. Es ist nicht möglich, direkt bei der Berichtsdefinition eine variable Anzahl von Spalten zu definieren; sie können dies jedoch tun, indem Sie einen Spaltenblock anlegen, der aus zwölf Spalten besteht, von denen jede durch eine Formelvariable repräsentiert wird.

Wenn in Ihrem System Daten für Periode 16 gebucht wurden, sollten Sie eine andere Periode verwenden, die keine Daten enthält (z.B. Periode 17).
Um die Berichtsspalten zu definieren, müssen Sie zuerst die Wertvariablen &PER_FROM und &PER_TO für das Merkmal "Periode" anlegen. Diese Variablen sind unabhängige Variablen. Dann müssen Sie die Formelvariablen anlegen (siehe folgende Tabelle), die sich alle auf die unabhängigen Periodenvariablen beziehen. Wenn Sie die Formelvariablen angelegt haben, müssen Sie sie in ein Basic-Set (das für das Merkmal "Periode" angelegt wurde) eingeben, wenn Sie einen Report-Writer-Bericht anlegen. Wenn Sie einen Report-Painter-Bericht anlegen, können Sie die Formelvariablen direkt in die Spaltendefinition eingeben.
Formelvariablen, die zum Anzeigen einer variablen Anzahl von Berichtsspalten verwendet werden
|
Period.-Variable |
Formel | |
Spalte 1 |
&PER01 |
IF 1 >= PER_FROM AND 1 <= PER_TO THEN 1 ELSE 16 |
Spalte 2 |
&PER02 |
IF 2 >= PER_FROM AND 2 <= PER_TO THEN 2 ELSE 16 |
Spalte 3 |
&PER03 |
IF 3 >= PER_FROM AND 3 <= PER_TO THEN 3 ELSE 16 |
Spalte 4 |
&PER04 |
IF 4 >= PER_FROM AND 4 <= PER_TO THEN 4 ELSE 16 |
Spalte 5 |
&PER05 |
IF 5 >= PER_FROM AND 5 <= PER_TO THEN 5 ELSE 16 |
Spalte 6 |
&PER06 |
IF 6 >= PER_FROM AND 6 <= PER_TO THEN 6 ELSE 16 |
Spalte 7 |
&PER07 |
IF 7 >= PER_FROM AND 7 <= PER_TO THEN 7 ELSE 16 |
Spalte 8 |
&PER08 |
IF 8 >= PER_FROM AND 8 <= PER_TO THEN 8 ELSE 16 |
Spalte 9 |
&PER09 |
IF 9 >= PER_FROM AND 9 <= PER_TO THEN 9 ELSE 16 |
Spalte 10 |
&PER10 |
IF 10 >= PER_FROM AND 10 <= PER_TO THEN 10 ELSE 16 |
Spalte 11 |
&PER11 |
IF 11 >= PER_FROM AND 11 <= PER_TO THEN 11 ELSE 16 |
Spalte 12 |
&PER12 |
IF 12 >= PER_FROM AND 12 <= PER_TO THEN 12 ELSE 16 |

Das Kennzeichen Nullspalten unterdrücken muß im dem Bericht zugeordneten Standardlayout markiert sein, damit Spalten, die keine Werte enthalten, bei der Berichtsausgabe nicht angezeigt werden.
Wenn Sie die Berichtsgruppe des Berichts ausführen, erzeugt der Report Writer Eingabefelder für die unabhängigen Variablen &PER_FROM und &PER_TO, durch die das Periodenintervall festgelegt wird.
Beispiel 5: Vorschlagswerte für ein verschobenes Geschäftsjahr berechnen
Sie können Formelvariablen anlegen, die anhand des Systemdatums die aktuelle Periode und das aktuelle Geschäftsjahr vorschlagen. Wenn Sie mit einem verschobenen Geschäftsjahr arbeiten, können Sie Formelvariablen anlegen, die anhand des aktuellen Systemdatums die entsprechende Periode und das entsprechende Geschäftsjahr als Vorschlagswert ermitteln.
Beispielformelvariablen für die Berechnung von Vorschlagswerten für ein verschobenes Geschäftsjahr
Beschreibung |
Formel |
Kalenderjahr nach Systemdatum |
#S001 |
Kalendermonat nach Systemdatum |
#S002 |
Aus dem Systemdatum errechnetes verschobenes Geschäftsjahr (das verschobene Geschäftsjahr beginnt im Juli) |
IF #S002 > 6 THEN #S001 + 1 ELSE #S001 |
Aus dem Systemdatum errechnete Periode (das verschobene Geschäftsjahr beginnt im Juli) |
IF #S002 >6 THEN #S002 - 6 ELSE #002 + 6 |