- Optional: Erstellen Sie ein berechnetes Feld mit einem Namen wie "Gewinn lückenlos" mit einer Berechnung ähnlich der folgenden:
ZN(LOOKUP(SUM([Gewinn]),0))
Hinweis: Wenn im Datensatz Tage fehlen, ermöglicht uns dieser Schritt, fehlende Tage als Nullgewinn zu behandeln. Wenn Sie diesen Schritt auslassen, verwenden Sie in allen folgenden Schritten SUM([Gewinn]) statt [Gewinn lückenlos].
- Erstellen Sie ein berechnetes Feld mit einem Namen wie "Startdatum" mit einer Berechnung ähnlich der folgenden:
IF [Gewinn lückenlos] >= 0
THEN NULL
ELSEIF LOOKUP([Gewinn lückenlos],-1) >= 0
THEN MIN([Bestelldatum])\}
ELSE PREVIOUS_VALUE(#1/1/18#)
END
- Erstellen Sie ein berechnetes Feld mit einem Namen wie "Nächster Gewinnwert" mit einer Berechnung ähnlich der folgenden:
LOOKUP([Gewinn lückenlos],1)
- Erstellen Sie ein berechnetes Feld mit einem Namen wie "Enddatum" mit einer Berechnung ähnlich der folgenden:
IF [Gewinn lückenlos] >= 0
THEN NULL
ELSEIF [Nächster Gewinnwert] >= 0
THEN MIN([Bestelldatum])\}
ELSE PREVIOUS_VALUE(#1/1/18#)
END
- Erstellen Sie ein berechnetes Feld mit einem Namen wie "Tage in Folge" mit einer Berechnung ähnlich der folgenden:
DATEDIFF('day', [Startdatum], [Enddatum]) + 1
- Erstellen Sie ein berechnetes Feld mit einem Namen wie "Anzahl Perioden" mit einer Berechnung ähnlich der folgenden:
IF [Tage in Folge] = 1 THEN
WINDOW_SUM(
IF [Tage in Folge] = 1
THEN COUNTD([Bestelldatum])
END
)
ELSEIF [Tage in Folge] = 2 THEN
WINDOW_SUM(
IF [Tage in Folge] = 2
THEN COUNTD([Bestelldatum])
END
)
ELSEIF [Tage in Folge] = 3 THEN
WINDOW_SUM(
IF [Tage in Folge] = 3
THEN COUNTD([Bestelldatum])
END
)
ELSEIF ...
END / [Tage in Folge]
Hinweis: Die berechneten Felder [Anzahl Perioden] und [Nur einen Tag pro Periode behalten] müssen eine Bedingung für jede mögliche Anzahl von Tagen in einer Periode enthalten. Weitere Erklärungen dazu finden Sie im Artikel Verwenden eines aggregierten Felds, um die Detailgenauigkeit in einer Tabellenberechnung zu definieren.
- Erstellen Sie ein berechnetes Feld mit einem Namen wie "Nur einen Tag pro Periode behalten" mit einer Berechnung ähnlich der folgenden:
MIN([Bestelldatum]) = WINDOW_MIN(IF[Tage in Folge] = 1 THEN [Startdatum] END)
OR MIN([Bestelldatum]) = WINDOW_MIN(IF[Tage in Folge] = 2 THEN [Startdatum] END)
OR MIN([Bestelldatum]) = WINDOW_MIN(IF[Tage in Folge] = 3 THEN [Startdatum] END)
OR ...
Die Erstellung des Prep-Schemas ist zwar aufwendiger, aber die Erstellung der Ansichten aus der Prep-Ausgabe ist viel einfacher als die Erstellung der Ansichten mit Tabellenberechnungen. Das Prep-Schema "Grouping Consequtive days.tflx" demonstriert die folgenden Schritte und kann vom Bereich rechts heruntergeladen werden.