Formato condicional con value_format

Es habitual que los usuarios quieran interactuar con números cortos. Por ejemplo, prefieren 2,5 M USD a una cadena larga como 2.523.093,25 USD. Puedes crear visualizaciones de números abreviados creando varias medidas de LookML definidas, como una para mostrar los valores tal cual, otra dividida por 1000 u otra con un número limitado de decimales, etc.

LookML puede conseguir estas visualizaciones automáticamente con una sintaxis value_format más avanzada.

Sintaxis

Usa este patrón para definir formatos de valor con condiciones:

[if_condition]format; [if_condition]format; else_format

Como el valor del parámetro value_format ya está entre comillas dobles en LookML, las comillas dobles anidadas deben incluirse entre comillas dobles con el carácter de barra invertida \.

Ejemplo con números grandes

Para escribir números como 12,23 M o 2,33 K, puedes usar el siguiente código:

  [>=1000000]0.00,,\"M\";[>=1000]0.00,\"K\";

O sin decimales:

  [>=1000000]0,,\"M\";[>=1000]0,\"K\";0

Aquí tienes la medida en LookML con este formato y con signos de dólar:

  measure: global_amount {
    type: sum
    sql: ${TABLE}.total
    value_format: "[>=1000000]$0.00,,\"M\";[>=1000]$0.00,\"K\";$0.00"
    drill_fields: invoices*
  }

Ejemplo con números negativos grandes

Puedes usar una sintaxis similar con números negativos. Para crear números como -12,23 M o -2,33 K, puedes usar el siguiente código:

  [<=-1000000]0.00,,\"M\";[<=-1000]0.00,\"K\";

O sin decimales:

  [<=-1000000]0,,\"M\";[<=-1000]0,\"K\";0

Aquí tienes la medida en LookML con este formato y con signos de dólar:

  measure: global_amount_negative {
    type: sum
    sql: ${TABLE}.total
    value_format: "[<=-1000000]$0.00,,\"M\";[<=-1000]$0.00,\"K\";$0.00"
    drill_fields: invoices*
  }