Cette page présente des façons utiles d'utiliser le champ parameter
de Looker avec certains des sous-paramètres label
qui acceptent les variables Liquid.
Les exemples de cette page nécessitent une compréhension de Liquid. Pour en savoir plus sur l'utilisation de Liquid dans Looker, consultez la page de documentation Documentation de référence sur les variables Liquid.
Utiliser view_label
pour les noms de vues dynamiques
Le paramètre view_label
de Looker permet de regrouper des dimensions sous un nom plus contextuel et convivial dans le sélecteur de champ "Explorer". Pour en savoir plus sur les libellés de vue, consultez la page de documentation view_label
(pour les champs).
Attribuer le même view_label
aux dimensions simplifie les explorations pour les utilisateurs. Des groupes de champs clairs et descriptifs permettent aux utilisateurs de trouver les données dont ils ont besoin.
Exemple : Écrire du code DRY (don't repeat yourself) avec un view_label
Liquid
Par exemple, supposons que vous ayez des champs organisés sous view_label
Finance et comptabilité
dans une exploration appelée Éléments d'inventaire :
dimension: cost { view_label: "Finance & Accounting" type: number sql: ${TABLE}.COST ;; } dimension: cost_ex_vat { view_label: "Finance & Accounting" type: number sql: ${TABLE}.COST_EX_VAT ;; } dimension: cost_eur { view_label: "Finance & Accounting" type: number sql: ${TABLE}.COST_EUR ;; }
Que faire si vous souhaitez remplacer Finance et comptabilité
par La zone argent
pour les utilisateurs ?view_label
L'utilisation de Liquid peut éviter la réécriture répétitive de code.
Vous pouvez créer un type de pseudo-variable du nom de la vue souhaitée à l'aide du champ parameter
de Looker. Une fois que vous avez modifié le nom de la vue dans parameter
, tous les champs sont mis à jour.
parameter: view_label { type: string default_value: "The Money Zone" }dimension: cost { view_label: "{% parameter view_label %}" type: number sql: ${TABLE}.COST ;; } dimension: cost_ex_vat { view_label: "{% parameter view_label %}" type: number sql: ${TABLE}.COST_EX_VAT ;; } dimension: cost_eur { view_label: "{% parameter view_label %}" type: number sql: ${TABLE}.COST_EUR ;; }
Remarque : Si vous ne souhaitez pas que les guillemets apparaissent dans le menu, parameter
doit être défini sur type:unquoted
et default_value
doit être une chaîne sans espaces, par exemple The_Money_Zone
. Si le paramètre est type:string
, les guillemets s'affichent.
Libellés de champs dynamiques
Vous pouvez avoir plusieurs groupes d'utilisateurs qui peuvent interpréter le nom d'un champ différemment. Par exemple, certains utilisateurs peuvent faire référence à une marge brute en tant que marge d'exploitation, tandis que d'autres peuvent faire référence à une marge brute en tant que marge standard, selon leur cas d'utilisation.
Le nom d'un champ peut être différent pour différents utilisateurs selon la façon dont vous combinez les attributs utilisateur et les variables Liquid.
Exemple : Différentes étiquettes pour différents attributs utilisateur
En extrapolant l'exemple précédent, vous pouvez tenir compte des différences de logique métier en faisant apparaître le champ Marge brute sous la forme Marge standard pour certains utilisateurs et Marge d'exploitation pour d'autres. Le code LookML suivant utilise des attributs utilisateur et des variables Liquid.
dimension: gross_margin { label: "{% if _user_attributes['customer'] == 'A' %} Standard Margin {% elsif _user_attributes['customer'] == 'B' %} Operating Margin {% else %} Gross Margin {% endif %}" type: number value_format_name: usd sql: ${sale_price} - ${inventory_items.cost} ;; }
D'après le code LookML, le champ Marge brute apparaît sous le nom Marge d'exploitation dans le sélecteur de champs d'une exploration pour Utilisateur A.
D'après le LookML, le champ Marge brute apparaît sous le nom Marge standard dans le sélecteur de champ Explorer pour Utilisateur B.
Ce modèle peut également être utilisé pour créer une localisation de bas niveau pour chaque utilisateur, comme le montre l'exemple suivant.
Exemple : Noms de champs personnalisés pour plusieurs explorations
Cet exemple combine les techniques des exemples précédents pour créer une exploration avec des libellés de champ qui varient en fonction de la région d'un utilisateur.
Dans cet exemple, deux équipes régionales (Finance East et Finance West) utilisent une exploration appelée Company Sales. Les deux équipes doivent utiliser les mesures Bénéfice total et Revenus totaux dans leurs requêtes :
measure: total_profit { label: "{{ _explore._name}}: Profit" type: sum sql: ${profit} ;; } measure: total_revenue { label: "{{ _explore._name}}: Revenue" type: sum sql: ${sale_price} ;; value_format_name: usd }
Toutefois, chaque équipe souhaite que le nom du champ reflète la région de son équipe.
Les développeurs peuvent faire en sorte que les noms de champs s'affichent d'une certaine manière pour les utilisateurs de Finance Est et d'une autre manière pour ceux de Finance Ouest. Pour ce faire, ils peuvent utiliser DRY LookML avec les paramètres Liquid suivants :
from
spécifie la vue sous-jacente pour les explorations.
explore_label
permet d'afficher le même nom pour les deux Explorations avec alias ("Ventes de l'entreprise") afin de créer une expérience d'exploration identique pour les deux équipes.
{{ _explore._name}}
, qui capture et affiche le nom Explore.
Les Explorations :
explore: Finance_East{ from: order_items label: "Company Sales" view_label: "The Money Zone" } explore: Finance_West{ from: order_items label: "Company Sales" view_label: "The Money Zone" }
Lorsqu'ils explorent les données, les membres de l'équipe Finance East voient le champ Bénéfice total sous la forme Finance_East: Profit et le champ Revenu total sous la forme Finance_East: Revenue.
Lorsqu'elle explorera les données, l'équipe Finance Ouest verra le champ Bénéfice total sous la forme Finance_Ouest: Bénéfice et le champ Revenus totaux sous la forme Finance_Ouest: Revenus.
Pour découvrir d'autres façons de personnaliser l'affichage des champs pour les utilisateurs, consultez la page de documentation Modifier le menu "Explorer" et le sélecteur de champs.