Nutzung
view: retail_custom_calendar {
calendar_definition: {
reference_date: ref_date
timeframe_mapping: {
custom_date: custom_date
custom_period: custom_period
custom_quarter: custom_quarter
custom_season: custom_season
custom_week: custom_week
custom_year: custom_year
}
timeframe_ordinal_mapping: {
custom_date: custom_date
custom_period: custom_period
custom_quarter: custom_quarter
custom_season: custom_season
custom_week: custom_week
custom_year: custom_year
}
previous_ordinal_mapping: {
custom_date: custom_date
custom_week: custom_week
}
}
|
Hierarchie
calendar_definition |
Definition
Im Rahmen der Verwendung benutzerdefinierter Kalender in Looker können Sie mit dem Parameter calendar_definition benutzerdefinierte Zeiträume für Looker-Kalender den Spalten einer benutzerdefinierten Kalendertabelle zuordnen, die Sie in Ihrer Datenbank erstellt haben.
Informationen zum Einrichten einer Ansichtsdatei für benutzerdefinierte Kalender finden Sie auf der Dokumentationsseite Benutzerdefinierte Kalender in Looker verwenden.
Fügen Sie in der Ansichtsdatei für Ihren benutzerdefinierten Kalender den Parameterblock calendar_definition hinzu. Beispiel:
calendar_definition: {
reference_date: ref_date
timeframe_mapping: {
custom_date: custom_date
custom_period: custom_period
custom_quarter: custom_quarter
custom_season: custom_season
custom_week: custom_week
custom_year: custom_year
}
timeframe_ordinal_mapping: {
custom_date: ordinal_custom_date
custom_period: ordinal_custom_period
custom_quarter: ordinal_custom_quarter
custom_season: ordinal_custom_season
custom_week: ordinal_custom_week
custom_year: ordinal_custom_year
}
previous_ordinal_mapping: {
custom_date: prev_day_num
custom_week: prev_week_num
}
}
Beachten Sie Folgendes zum Parameterblock calendar_definition:
- Der
reference_dateParameter ist erforderlich. - Die Parameter
timeframe_mappingundtimeframe_ordinal_mappingsowie alle zugehörigen Unterparameter sind erforderlich. Weitere Informationen finden Sie unter Erforderliche Zeiträume. - Der
previous_ordinal_mappingParameterblock wird für benutzerdefinierte Kalender mit Messwerten für den Zeitraumvergleich verwendet, um Looker mitzuteilen, wie die Vorwoche verarbeitet werden soll, wenn die aktuelle Woche 1 ist, und wie der Vortag verarbeitet werden soll, wenn der aktuelle Tag 1 ist. Der Parameterprevious_ordinal_mappingist ab Looker 26.8 optional.
Weitere Informationen finden Sie im Abschnitt Beispiel auf dieser Seite.
Nachdem Sie die benutzerdefinierte Kalendertabelle in LookML modelliert haben, können Sie eine Dimensionsgruppe vom Typ type: custom_calendar erstellen, die auf der benutzerdefinierten Kalenderansicht basiert. Ihre Endnutzer können dann Explore-Abfragen mit den Zeiträumen der benutzerdefinierten Kalenderdimension erstellen.
reference_date
Mit dem Parameter reference_date wird eine Dimension in Ihrer benutzerdefinierten Kalenderansicht angegeben, die der Spalte in Ihrer benutzerdefinierten Kalenderdatenbanktabelle entspricht, die ein Standardkalenderdatum enthält, z. B. 2026-01-01.
Beachten Sie Folgendes zum Parameter reference_date:
- Der Parameter
reference_dateist erforderlich, da Looker damit Verknüpfungen aus Ihren Datentabellen zu Ihrer benutzerdefinierten Kalendertabelle berechnet, um Abfrageergebnisse mit Ihren benutzerdefinierten Zeiträumen zu liefern. - Der Parameter
reference_datemuss eindeutig sein oder ein Primärschlüssel sein.
Im Abschnitt Beispiel auf dieser Seite sehen Sie, wie der Parameter reference_date auf eine Dimension verweist, die eine Spalte in Ihrer benutzerdefinierten Kalendertabelle modelliert.
timeframe_mapping
Der Block timeframe_mapping ordnet jeden benutzerdefinierten Zeitraum von Looker der Dimension zu, die die entsprechende Spalte Ihrer benutzerdefinierten Kalenderdatenbanktabelle modelliert.
timeframe_mapping: {
custom_date: field-ref
custom_period: field-ref
custom_quarter: field-ref
custom_season: field-ref
custom_week: field-ref
custom_year: field-ref
}
Im Abschnitt Beispiel auf dieser Seite sehen Sie, wie jeder timeframe_mapping Unterparameter eine Dimension angibt, die eine Spalte in Ihrer benutzerdefinierten Kalendertabelle modelliert.
timeframe_ordinal_mapping
Der Block timeframe_ordinal_mapping ordnet jeden benutzerdefinierten Zeitraum von Looker der Dimension zu, die die entsprechende Ordnungsspalte Ihrer benutzerdefinierten Kalenderdatenbanktabelle modelliert.
timeframe_ordinal_mapping: {
custom_date: field-ref
custom_period: field-ref
custom_quarter: field-ref
custom_season: field-ref
custom_week: field-ref
custom_year: field-ref
}
Im Abschnitt Beispiel auf dieser Seite sehen Sie, wie jeder timeframe_ordinal_mapping Unterparameter eine Dimension angibt, die eine Spalte in Ihrer benutzerdefinierten Kalendertabelle modelliert.
previous_ordinal_mapping
Wenn Sie Messwerte für den Zeitraumvergleich erstellen möchten, die Ihren benutzerdefinierten Kalender verwenden, können Sie Ihrem calendar_definition auch einen previous_ordinal_mapping Block hinzufügen. Der Block previous_ordinal_mapping ordnet die Looker-Zeiträume custom_date und custom_week den Dimensionen zu, die die Spalten Ihrer benutzerdefinierten Kalenderdatenbanktabelle modellieren, in denen der Vortag und die Vorwoche angegeben sind.
previous_ordinal_mapping: {
custom_date: field-ref
custom_week: field-ref
}
- Der Parameter
custom_dategibt an, wie Looker den Vortag verarbeiten soll, wenn der aktuelle Tag 1 ist. - Der Parameter
custom_weekgibt an, wie Looker die Vorwoche verarbeiten soll, wenn die aktuelle Woche 1 ist.
Der Parameter previous_ordinal_mapping ist ab Looker 26.8 optional. Wenn der Block previous_ordinal_mapping weggelassen wird, geht Looker von einem Jahr mit 52 Wochen aus, wobei der vorherige Wert für Woche 1 52 und der vorherige Wert für Tag 1 364 ist.
Erforderliche Zeiträume
Die Unterparameter für Zeiträume von timeframe_mapping und timeframe_ordinal_mapping sind erforderlich. Wenn ein bestimmter Zeitraum wie custom_season für Ihren benutzerdefinierten Kalender nicht relevant ist, müssen Sie ihn trotzdem einbeziehen, indem Sie in Ihrer Kalenderansicht eine Platzhalterdimension definieren. Beispiel:
dimension: season {
type: string
sql: 'N/A' ;;
hidden: yes
}
dimension: season_num {
type: number
sql: 0 ;;
hidden: yes
}
Beispiel
Hier ist eine Beispielansichtsdatei namens fiscal_calendar.view.lkml, die eine benutzerdefinierte Kalendertabelle namens fiscal_calendar_table modelliert:
view: fiscal_calendar {
sql_table_name: fiscal_calendar_table ;;
calendar_definition: {
reference_date: reference_date
timeframe_mapping: {
custom_year: fiscal_year
custom_quarter: fiscal_quarter_of_year
custom_date: fiscal_date_of_month
custom_week: fiscal_week_of_year
custom_period: fiscal_period_of_year
custom_season: season
}
timeframe_ordinal_mapping: {
custom_year: fiscal_year_num
custom_quarter: fiscal_quarter_of_year_num
custom_date: fiscal_date_of_month_num
custom_week: fiscal_week_of_year_num
custom_period: fiscal_period_of_year_num
custom_season: season_num
}
previous_ordinal_mapping: {
custom_date: prev_custom_date
custom_week: prev_custom_week
}
}
dimension: reference_date {
type: date
primary_key: yes
sql: ${TABLE}.reference_date ;; # Name of the column in your database table that shows the standard date, such as `2026-01-01`
}
dimension: fiscal_year {
type: string
sql: ${TABLE}.fiscal_year ;;
}
dimension: fiscal_year_num {
type: number
sql: ${TABLE}.fiscal_year_num ;;
}
dimension: prev_custom_week {
type: number
sql: ${TABLE}.prev_custom_week ;;
}
# ... other dimensions for quarters, weeks, periods, seasons, etc. ...
# Example placeholder dimensions for unused timeframes
dimension: season {
type: string
sql: 'N/A' ;;
hidden: yes
}
dimension: season_num {
type: number
sql: 0 ;;
hidden: yes
}
}