Um diese Frage zu beantworten, verwenden wir Daten zu fiktiven Bestellungen. Zu jeder Bestellung gibt es jeweils ein Bestelldatum und ein Lieferdatum.
Zum Beispiel Bestellung 44 vom 17.12.2017, die rechtzeitig vor Weihnachten am 23.12.2017 geliefert wurde.
Um die Daten mit Zufallswerten selbst zu erstellen, kann folgender Code im Dateneditor eingefügt werden.
DER KLASSISCHE MASTER KALENDER
Verwendet man ein klassischer Kalender, wie z. B. den von Josh Good, kann das Bestelldatum der Tabelle Bestellungen mit dem Datumsfeld der Tabelle "MasterCalendar" verbunden werden. Somit wäre die obige Bestellung 44 mit dem Jahr 2017 und dem Monat Dezember aus dem Master Kalender verbunden.
Sollen zusätzliche Informationen wie Jahr und Monat ausgewertet werden, die aus dem Lieferdatum stammen, reicht ein Master Kalender nicht aus. Ein zweiter Kalender z. B. Lieferkalender, wird benötigt, in dem sämtliche Feldnamen neu benannt werden müssen (z. B.: Lieferjahr /-monat /-datum).
Dieses Problem verschärft sich, je mehr Datumsinformationen gleichzeitig ausgewertet werden sollen. So müssten für ein Wunsch-Lieferdatum, ein versprochenes Lieferdatum und ein tatsächliches Lieferdatum, jeweils eigene Kalender-Tabellen mit eindeutigen Feldnamen erstellt werden.
DER VORTEIL VON DERIVED FIELDS
Um dem entgegen zu wirken, kann in Qlik Sense® die Funktion DERIVE FIELDS verwendet werden.
Darin wird wie beim klassischen Master Kalender definiert, wie aus einem Feld mit Datumsinfomrationen beispielsweise Jahr und Monat abgeleitet werden sollen. Diese Definition lässt sich nun auf sämtliche Datumsfelder anwenden, ohne jeweils separate Kalender erzeugen zu müssen.
ABLEITUNGSDEFINITION
Die hier verwendete Ableitungsdefinition heißt Calendar und erzeugt für jedes Datumsfeld, auf das die Ableitungsdefinition angewendet wird, das dazugehörige Jahr, den Monat, die Woche, den Wochentag und das Quartal.
Das Anwenden der Definition erfolgt mit dem Aufruf:
VERWENDUNG
Nach dem Laden des Dateneditors stehen die abgeleiteten Felder in der App zur Verfügung und können wie sämtliche anderen Felder verwendet werden. Jedoch werden sie im Datenmodell nicht angezeigt und stehen immer eingerückt unter dem Ausgangs- bzw. Ursprungsdatum.
Dabei werden sie immer nach dem Ursprungsfeld, Schema und abgeleitetem Feld benannt. Hier z. B. Bestelldatum.Calendar.Weekday.
FAZIT
Um in einer Applikation mehrere Datumsfelder auswerten, bzw. selektieren zu können, bietet die Funktion DERIVE FIELDS die Möglichkeit, eine einmal definierte Datumsableitung beliebig oft anzuwenden, ohne für sämtliche Datumsfelder einen eigenen Kalender erstellen zu müssen. Derzeit steht diese Funktion nur für Qlik Sense® zur Verfügung.