Maximiza la reutilización del código con DRY LookML: define una cadena una vez para usarla en todo tu proyecto de LookML

Puedes usar el parámetro constant de LookML en el archivo de manifiesto de tu proyecto para definir una cadena que se pueda usar en todo el proyecto. Las constantes de LookML pueden ser útiles cuando necesitas definir una cadena específica (como un número, un nombre o un formato HTML para los valores de campo) y volver a usar ese valor en todo tu proyecto.

En esta página, se incluyen los siguientes ejemplos de uso de constantes de LookML para definir y mantener valores de cadenas reutilizables en un solo lugar:

Componentes

Requisitos previos

Ejemplo: Cómo usar la misma cadena en las etiquetas de varias exploraciones

Supongamos que deseas crear dos exploraciones, con las etiquetas Usuarios de San Francisco y Pedidos de San Francisco en la IU, pero no quieres escribir manualmente el texto para cada etiqueta.

Para ello, puedes definir una constante place_name con el valor "San Francisco" en el archivo de manifiesto del proyecto de tu proyecto:

constant: place_name {
  value: "San Francisco"
}

Se puede hacer referencia a esta constante en cualquier parte del proyecto en la que se acepte una cadena con la sintaxis @{place_name}. En este ejemplo, puedes definir las exploraciones de users y orders si especificas "@{place_name} Users" y "@{place_name} Orders" como valores para el parámetro label, como en el siguiente ejemplo:


explore: users {
  label: "@{place_name} Users"
}

explore: orders {
  label: "@{place_name} Orders"
}

En este ejemplo, Looker muestra San Francisco Users y San Francisco Orders en el menú Explorar y en los títulos de las exploraciones, en lugar de las etiquetas predeterminadas Users y Orders.

Supongamos que deseas actualizar todas las referencias a San Francisco a Bay Area.

En lugar de tener que actualizar cada referencia de forma manual, solo debes realizar una única actualización a la constante place_name en el archivo de manifiesto de tu proyecto:

constant: place_name {
  value: "Bay Area"
}

Como definiste la constante place_name, no es necesario que cambies manualmente San Francisco a Bay Area en varios lugares. Las referencias a San Francisco con la constante place_name se reemplazarán por Bay Area, por lo que Looker mostrará Bay Area Users y Bay Area Orders en el menú Explorar y en los títulos de las exploraciones.

Ejemplo: Aplica el mismo formato a los valores negativos de varios campos

Imagina que deseas que los valores de datos negativos se muestren en rojo y entre paréntesis cada vez que aparezcan en los informes.

Cuando configuras este formato como el valor de una constante de LookML, puedes especificar el formato solo una vez con Variables de Liquid y HTML. Luego, podrás hacer referencia a la constante cada vez que quieras aplicar ese formato a un campo.

Por ejemplo, puedes crear una constante llamada negative_format que puedes usar para aplicar este formato a un campo:


constant: negative_format {
  value: "{% if value < 0 %}
            <p style='color:red;'>({{rendered_value}})</p>
          {% else %}
            {{rendered_value}}
          {% endif %}"
}

Este código crea la constante negative_format, que especifica que los valores de datos negativos deben tener una fuente roja y estar entre paréntesis. Luego, puedes aplicar este formato a las dimensiones y mediciones de tu conjunto de datos con el parámetro html.

Por ejemplo, puedes crear la métrica Total Amount de type: sum y especificar @{negative_format} como el valor del parámetro html:


measure: total_amount {
  type: sum
  value_format_name: usd
  sql: ${amount} ;;
  html: @{negative_format} ;;
}

En tu tabla, los valores negativos para la medida Total Amount se formatearán como se especifica en la definición de la constante negative_format, con una fuente roja y rodeados de paréntesis.

Si deseas aplicar el mismo formato a los valores negativos de otros campos, puedes hacer referencia a la constante negative_format en el parámetro html de esos campos.