Utilisation
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
}
}
|
Hiérarchie
calendar_definition |
Définition
Lorsque vous utilisez des calendriers personnalisés dans Looker, le paramètre calendar_definition vous permet de mapper les périodes du calendrier personnalisé Looker aux colonnes d'une table de calendrier personnalisé que vous avez créée dans votre base de données.
Pour savoir comment configurer un fichier d'affichage de calendrier personnalisé, consultez la page de documentation Utiliser des calendriers personnalisés dans Looker.
Dans le fichier d'affichage de votre calendrier personnalisé, ajoutez le bloc de paramètres calendar_definition. Exemple :
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
}
}
Notez les points suivants concernant le bloc de paramètres calendar_definition :
- Le paramètre
reference_dateest obligatoire. - Les paramètres
timeframe_mappingettimeframe_ordinal_mapping, ainsi que tous leurs sous-paramètres, sont obligatoires. Pour en savoir plus, consultez Délais obligatoires. - Le bloc de paramètres
previous_ordinal_mappingest utilisé pour les calendriers personnalisés avec des mesures de période par rapport à la période précédente. Il indique à Looker comment traiter la semaine précédente lorsque la semaine actuelle est la semaine 1 et comment traiter le jour précédent lorsque le jour actuel est le jour 1. Le paramètreprevious_ordinal_mappingest facultatif à partir de Looker 26.8.
Consultez la section Exemple sur cette page.
Après avoir modélisé la table de calendrier personnalisée dans LookML, vous pouvez créer un groupe de dimensions type: custom_calendar basé sur la vue de calendrier personnalisée. Vos utilisateurs finaux peuvent ensuite créer des requêtes Explorer à l'aide des périodes de la dimension de calendrier personnalisée.
reference_date
Le paramètre reference_date spécifie une dimension dans votre vue de calendrier personnalisée qui correspond à la colonne de votre table de base de données de calendrier personnalisée qui fournit une date de calendrier standard, telle que 2026-01-01.
Notez les points suivants concernant le paramètre reference_date :
- Le
reference_dateest obligatoire, car Looker l'utilise pour calculer les jointures entre vos tables de données et votre table de calendrier personnalisée afin de fournir des résultats de requête qui utilisent vos périodes personnalisées. - Le
reference_datedoit être unique ou une clé primaire.
Consultez la section Exemple sur cette page pour voir comment reference_date pointe vers une dimension qui modélise une colonne dans votre tableau de calendrier personnalisé.
timeframe_mapping
Le bloc timeframe_mapping mappe chaque période personnalisée Looker à la dimension qui modélise la colonne équivalente de la table de base de données de votre calendrier personnalisé.
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
}
Consultez la section Exemple de cette page pour découvrir comment chaque sous-paramètre timeframe_mapping spécifie une dimension qui modélise une colonne dans votre tableau de calendrier personnalisé.
timeframe_ordinal_mapping
Le bloc timeframe_ordinal_mapping mappe chaque période personnalisée Looker à la dimension qui modélise la colonne ordinale appropriée de la table de base de données de votre calendrier personnalisé.
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
}
Consultez la section Exemple de cette page pour découvrir comment chaque sous-paramètre timeframe_ordinal_mapping spécifie une dimension qui modélise une colonne dans votre tableau de calendrier personnalisé.
previous_ordinal_mapping
Si vous souhaitez créer des mesures de période à période qui utilisent votre calendrier personnalisé, vous pouvez également ajouter un bloc previous_ordinal_mapping à votre calendar_definition. Le bloc previous_ordinal_mapping mappe les périodes Looker custom_date et custom_week aux dimensions qui modélisent les colonnes de la table de base de données de votre calendrier personnalisé, où sont spécifiés la veille et la semaine précédente.
previous_ordinal_mapping: {
custom_date: field-ref
custom_week: field-ref
}
- Le paramètre
custom_dateindique à Looker comment traiter le jour précédent lorsque le jour actuel est le 1er. - Le paramètre
custom_weekindique à Looker comment traiter la semaine précédente lorsque la semaine en cours est la semaine 1.
Le paramètre previous_ordinal_mapping est facultatif à partir de Looker 26.8. Si le bloc previous_ordinal_mapping est omis, Looker suppose une année de 52 semaines, où la valeur précédente pour la semaine 1 est 52 et la valeur précédente pour le jour 1 est 364.
Délais obligatoires
Les sous-paramètres de période de timeframe_mapping et timeframe_ordinal_mapping sont obligatoires. Si une période spécifique, telle que custom_season, n'est pas pertinente pour votre calendrier personnalisé, vous devez quand même l'inclure en définissant une dimension d'espace réservé dans la vue de votre calendrier. Exemple :
dimension: season {
type: string
sql: 'N/A' ;;
hidden: yes
}
dimension: season_num {
type: number
sql: 0 ;;
hidden: yes
}
Exemple
Voici un exemple de fichier d'affichage appelé fiscal_calendar.view.lkml qui modélise une table de calendrier personnalisée appelée fiscal_calendar_table :
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
}
}