É comum os utilizadores quererem interagir com números curtos. Por exemplo, preferem 2,5 milhões de USD a uma sequência longa como 2 523 093,25 USD. Pode criar apresentações de números curtos criando várias medidas LookML definidas, como uma para apresentação tal como está, uma dividida por 1000 ou uma com casas decimais limitadas, entre outras.
O LookML pode alcançar estas apresentações automaticamente com uma sintaxe value_format
mais avançada.
Sintaxe
Use este padrão para definir formatos de valores com condições:
[if_condition]format; [if_condition]format; else_format
Uma vez que o valor do parâmetro value_format
já está entre aspas duplas no LookML, quaisquer aspas duplas aninhadas têm de ter um caráter de escape com a barra invertida \
.
Exemplo com números grandes
Para criar números como 12,23 M ou 2,33 K, pode usar o seguinte código:
[>=1000000]0.00,,\"M\";[>=1000]0.00,\"K\";
Ou sem casas decimais:
[>=1000000]0,,\"M\";[>=1000]0,\"K\";0
Seguem-se as medidas no LookML com este formato, com sinais de dólar adicionados:
measure: global_amount { type: sum sql: ${TABLE}.total value_format: "[>=1000000]$0.00,,\"M\";[>=1000]$0.00,\"K\";$0.00" drill_fields: invoices* }
Exemplo com números negativos grandes
Pode usar uma sintaxe semelhante com números negativos. Para criar números como -12,23 M ou -2,33 K, pode usar o seguinte código:
[<=-1000000]0.00,,\"M\";[<=-1000]0.00,\"K\";
Ou sem casas decimais:
[<=-1000000]0,,\"M\";[<=-1000]0,\"K\";0
Seguem-se as medidas no LookML com este formato, com sinais de dólar adicionados:
measure: global_amount_negative { type: sum sql: ${TABLE}.total value_format: "[<=-1000000]$0.00,,\"M\";[<=-1000]$0.00,\"K\";$0.00" drill_fields: invoices* }