Utiliser Liquid dans les libellés de manière intéressante

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 ;; }

Sélecteur de champ "Explorer" des éléments d'inventaire affichant les coûts, les coûts en euros et les coûts hors TVA organisés sous le libellé de vue "The Money Zone".

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 :

  • Le paramètre 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.
  • Les libellés des mesures peuvent être modifiés en fonction de la région d'une équipe à l'aide de la variable Liquid {{ _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.