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 agendas personnalisés dans Looker, le paramètre calendar_definition vous permet de mapper les périodes de l'agenda personnalisé Looker aux colonnes d'une table d'agenda personnalisé que vous avez créée dans votre base de données.
Pour savoir comment configurer un fichier d'affichage d'agenda personnalisé, consultez la page de documentation Utiliser des agendas personnalisés dans Looker.
Dans le fichier d'affichage de votre agenda 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 éléments 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 la section Périodes obligatoires. - Le bloc de paramètres
previous_ordinal_mappingest utilisé pour les agendas personnalisés avec des mesures d'une période à l'autre. Il indique à Looker comment traiter la semaine précédente lorsque la semaine en cours est la première et comment traiter le jour précédent lorsque le jour en cours est le premier. 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 d'agenda personnalisé dans LookML, vous pouvez créer un groupe de dimensions de type: custom_calendar basé sur la vue d'agenda personnalisé. Vos utilisateurs finaux peuvent ensuite créer des requêtes d'exploration à l'aide des périodes de la dimension d'agenda personnalisé.
reference_date
Le paramètre reference_date spécifie une dimension dans votre vue d'agenda personnalisé qui correspond à la colonne de votre table de base de données d'agenda personnalisé fournissant une date d'agenda standard, par exemple 2026-01-01.
Notez les éléments suivants concernant le paramètre reference_date :
- Le paramètre
reference_dateest obligatoire, car Looker l'utilise pour calculer les jointures de vos tables de données à votre table d'agenda personnalisé afin de fournir des résultats de requête qui utilisent vos périodes personnalisées. - Le paramètre
reference_datedoit être unique ou une clé primaire.
Consultez la section Exemple sur cette page pour voir comment le reference_date pointe vers une dimension qui modélise une colonne de votre table d'agenda personnalisé.
timeframe_mapping
Le bloc timeframe_mapping mappe chaque période personnalisée Looker à la dimension qui modélise la colonne équivalente de votre table de base de données d'agenda 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 sur cette page pour voir comment chaque timeframe_mapping sous-paramètre spécifie une dimension qui modélise une colonne de votre table d'agenda 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 votre table de base de données d'agenda 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 sur cette page pour voir comment chaque timeframe_ordinal_mapping sous-paramètre spécifie une dimension qui modélise une colonne de votre table d'agenda personnalisé.
previous_ordinal_mapping
Si vous souhaitez créer des mesures d'une période à l'autre qui utilisent votre agenda 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 votre table de base de données d'agenda personnalisé où le jour précédent et la semaine précédente sont spécifiés.
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 en cours est le premier. - Le paramètre
custom_weekindique à Looker comment traiter la semaine précédente lorsque la semaine en cours est la première.
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 de la semaine 1 est 52 et la valeur précédente du jour 1 est 364.
Périodes 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 agenda personnalisé, vous devez quand même l'inclure en définissant une dimension d'espace réservé dans votre vue d'agenda. 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 d'agenda personnalisé 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
}
}