Formas interessantes de usar o Liquid em etiquetas

Esta página realça formas úteis de usar o campo parameter do Looker com alguns dos subparâmetros label que aceitam variáveis Liquid.

Os exemplos nesta página requerem conhecimentos sobre o Liquid. Para saber como usar o Liquid no Looker, visite a nossa página de documentação Referência de variáveis do Liquid.

Usar view_label para nomes de vistas dinâmicos

O parâmetro view_label do Looker é usado para agrupar dimensões sob um nome mais contextual e fácil de usar no selecionador de campos da opção Explorar. Para saber mais sobre as etiquetas de visualização, visite a página de documentação view_label (para campos).

A atribuição do mesmo view_label às dimensões simplifica as explorações para os utilizadores. Os grupos de campos claros e descritivos garantem que os utilizadores conseguem encontrar os dados de que precisam.

Exemplo: escrever código DRY (don't repeat yourself) com um Liquid view_label

Por exemplo, suponhamos que tem campos organizados em view_label Finanças e contabilidade num Explore denominado Itens de inventário:

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

E se quisesse alterar o view_label Finanças e contabilidade para The Money Zone para os utilizadores? A utilização do Liquid pode evitar a reescrita repetitiva de código.

Pode criar um tipo de pseudovariável do nome da vista pretendido através do campo parameter do Looker. Depois de alterar o nome da vista em parameter, todos os campos são atualizados.

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

O selecionador de campos Explorar itens de inventário mostra o custo, o custo em EUR e o custo sem IVA organizados sob a etiqueta de visualização "The Money Zone".

Nota: se não quiser que as aspas apareçam no menu, parameter tem de ser definido como type:unquoted e default_value tem de ser uma string sem espaços, por exemplo, The_Money_Zone. Se o parâmetro for type:string, são apresentadas as aspas.

Etiquetas de campos dinâmicos

Pode ter vários grupos de utilizadores que podem interpretar o nome de um campo de forma diferente. Por exemplo, alguns utilizadores podem referir-se a uma margem bruta como uma margem operacional e outros utilizadores podem referir-se a uma margem bruta como uma margem padrão, consoante o respetivo exemplo de utilização.

O nome de um campo pode ter um aspeto diferente para diferentes utilizadores, consoante a forma como combina os atributos do utilizador e as variáveis do Liquid.

Exemplo: etiquetas diferentes para diferentes atributos do utilizador

Extrapolando o exemplo anterior, pode acomodar diferenças na lógica empresarial fazendo com que o campo Margem bruta apareça como Margem padrão para alguns utilizadores e Margem operacional para outros utilizadores. O seguinte LookML tira partido dos atributos do utilizador e das variáveis 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} ;;
}

Com base no LookML, o campo Gross Margin aparece como Operating Margin num selecionador de campos de exploração para User A.

Com base no LookML, o campo Margem bruta aparece como Margem padrão num seletor de campos de exploração para o Utilizador B.

Este padrão também pode ser usado para criar uma localização de baixo nível com base em cada utilizador, conforme demonstrado no exemplo seguinte.

Exemplo: nomes de campos personalizados para várias explorações

Este exemplo combina as técnicas dos exemplos anteriores para criar uma exploração com etiquetas de campos que variam consoante a região de um utilizador.

Neste exemplo, existem duas equipas regionais, Finance East e Finance West, que usam uma análise detalhada denominada Vendas da empresa. Ambas as equipas têm de usar as medidas Lucro total e Receita total nas respetivas 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 }

No entanto, cada equipa quer que o nome do campo reflita a região da equipa.

Os programadores podem fazer com que os nomes dos campos tenham um aspeto para os utilizadores da Finance East e outro para os utilizadores da Finance West. Podem fazê-lo com DRY LookML através dos seguintes parâmetros Liquid:

  • O parâmetro from especifica a vista subjacente para as explorações.
  • Oexplore_label é usado para apresentar o mesmo nome para as duas explorações com alias ("Vendas da empresa") para criar uma experiência de exploração idêntica para ambas as equipas.
  • As etiquetas das medidas podem ser alteradas de acordo com a região de uma equipa através da variável Liquid {{ _explore._name}}, que vai capturar e apresentar o nome do Explore.
  • As explorações:

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

    Quando exploram, a equipa de finanças do leste vê o campo Lucro total como Finance_East: Profit e o campo Receita total como Finance_East: Revenue.

    Quando exploram, a equipa de Finanças Oeste vê o campo Lucro total como Finance_West: Profit e o campo Receita total como Finance_West: Revenue.

    Para ver formas adicionais de personalizar a forma como os campos são apresentados aos utilizadores, visite a página de documentação Alterar o menu Explorar e o selecionador de campos.