Formas interesantes de usar Liquid en etiquetas

En esta página, se destacan formas útiles de usar el campo parameter de Looker con algunos de los subparámetros label que aceptan variables de Liquid.

Para comprender los ejemplos de esta página, debes conocer Liquid. Para obtener información sobre el uso de Liquid en Looker, visita nuestra página de documentación de Referencia de variables de Liquid.

Usa view_label para nombres de vistas dinámicas

El parámetro view_label de Looker se usa para agrupar dimensiones con un nombre más contextual y fácil de usar en el selector de campos Explorar. Para obtener más información sobre las etiquetas de vista, visita la página de documentación de view_label (para campos).

Asignar el mismo view_label a las dimensiones simplifica las exploraciones para los usuarios. Los grupos de campos claros y descriptivos garantizan que los usuarios puedan encontrar los datos que necesitan.

Ejemplo: Cómo escribir código DRY (no te repitas) con un view_label de Liquid

Por ejemplo, supongamos que tienes campos organizados en view_label Finanzas y contabilidad en una exploración llamada Elementos del inventario:

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

¿Qué sucede si quieres cambiar view_label Finanzas y Contabilidad a Zona financiera para los usuarios? El uso de Liquid puede evitar la reescritura repetitiva del código.

Puedes crear un tipo de pseudovariable del nombre de la vista deseada con el campo parameter de Looker. Una vez que cambies el nombre de la vista en parameter, se actualizarán todos los campos.

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

Selector de campos Explorar elementos del inventario que muestra los campos Cost, Cost Eur y Cost Ex Vat organizados bajo la etiqueta de vista "The Money Zone".

Nota: Si no quieres que las comillas aparezcan en el menú, parameter debe establecerse como type:unquoted y default_value debe ser una cadena sin espacios, por ejemplo, The_Money_Zone. Si el parámetro es type:string, aparecerán las comillas.

Etiquetas de campos dinámicos

Es posible que tengas varios grupos de usuarios que podrían interpretar el nombre de un campo de manera diferente. Por ejemplo, algunos usuarios podrían referirse a un margen bruto como un margen operativo, y otros podrían referirse a un margen bruto como un margen estándar, según su caso de uso.

El nombre de un campo puede verse diferente para diferentes usuarios según la forma en que combines los atributos del usuario y las variables líquidas.

Ejemplo: Etiquetas diferentes para diferentes atributos de usuario

Extrapolando el ejemplo anterior, puedes adaptar las diferencias en la lógica empresarial haciendo que el campo Margen bruto aparezca como Margen estándar para algunos usuarios y Margen operativo para otros. En la siguiente expresión LookML, se aprovechan los atributos del usuario y las variables de 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} ;;
}

Según LookML, el campo Margen bruto aparece como Margen operativo en un selector de campos de Explorar para el Usuario A.

Según el modelo de LookML, el campo Margen bruto aparece como Margen estándar en un selector de campos de Explorar para el Usuario B.

Este patrón también se puede usar para crear una localización de bajo nivel por usuario, como se muestra en el siguiente ejemplo.

Ejemplo: Nombres de campos personalizados para varios Explorar

En este ejemplo, se combinan las técnicas de los ejemplos anteriores para crear una tarjeta Explorar con etiquetas de campo que varían según la región del usuario.

En este ejemplo, hay dos equipos regionales: Finanzas del Este y Finanzas del Oeste, que usan una exploración llamada Ventas de la empresa. Ambos equipos deben usar las medidas Ingresos totales y Utilidad total en sus consultas:

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 }

Sin embargo, cada equipo desea que el nombre del campo refleje la región de su equipo.

Los desarrolladores pueden hacer que los nombres de los campos se vean de una manera para los usuarios de Finance East y de otra para los usuarios de Finance West. Para ello, pueden usar los siguientes parámetros de Liquid con LookML sin redundancias:

  • El parámetro from especifica la vista subyacente para las exploraciones.
  • El explore_label se usa para mostrar el mismo nombre para las dos exploraciones con alias ("Ventas de la empresa") para crear una experiencia de exploración idéntica para ambos equipos.
  • Las etiquetas de las medidas se pueden cambiar según la región de un equipo aprovechando la variable Liquid {{ _explore._name}}, que capturará y mostrará el nombre de Explorar.
  • Las secciones Explorar:

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

    Cuando realice la exploración, el equipo de Finanzas del Este verá el campo Total profit como Finance_East: Profit y el campo Total Revenue como Finance_East: Revenue.

    Cuando realice la exploración, el equipo de Finanzas Oeste verá el campo Ingresos totales como Finance_West: Ingresos y el campo Ingresos totales como Finance_West: Ingresos.

    Para conocer otras formas de personalizar la forma en que los campos aparecen para los usuarios, visita la página de documentación Cómo cambiar el menú Explorar y el selector de campos.