A Enganosa Simplicidade do "Botãozinho": Dominando o Comando SWITCH no Power BI
- #Power BI
"É só um botãozinho, você consegue adicionar ainda hoje?" - Em um mundo ideal, as solicitações de última hora para "adicionar apenas um botãozinho" seriam tão simples quanto parecem. Mas, na realidade dos analistas de dados e desenvolvedores, esses pedidos escondem complexidades que exigem não só habilidades técnicas, mas também uma compreensão profunda das ferramentas à disposição, neste caso do Power BI.
Para uma melhor compreensão, o poder da função SWITCH
será apresentada neste artigo por meio de um estudo de caso, uma simulação da vida real. Para isto, imagine que você ocupa o cargo de Analista de Dados Júnior e a sua liderança solicitou com urgência um "botãozinho" que altere os valores das vendas no dashboard de acordo com a moeda selecionada - Real ou Euro. Este é o problema de negócio a ser solucionado: a necessidade de alternar entre as moedas com facilidade. Mas, antes de continuar, reflita... Como você solucionaria essa demanda?
No caso do Power BI, há diversos caminhos para responder à essa solicitação, dentre eles o uso da função SWITCH
exemplifica uma opção elegante e eficaz.
Imagine a função SWITCH no Power BI como um interruptor de luz, afinal "switch" nada mais é do que "interruptor" em inglês. Assim como um interruptor que aciona diferentes estados dependendo da posição em que está, a função SWITCH altera o cálculo realizado em seu dashboard baseado na seleção do "botãozinho". Esta capacidade de "trocar" entre diferentes cenários ou condições faz dela uma ferramenta extremamente útil e flexível para responder a problemas condicionais.
De acordo com a documentação oficial do Power BI disponibilizada pela Microsoft, a função SWITCH
"Avalia uma expressão em relação a uma lista de valores e retorna uma das várias expressões de resultado possíveis e pode ser usada para evitar vários comandos If's
aninhados." (Microsoft, 2024)
A sintaxe:
SWITCH(<expression>, <value>, <result>[, <value>, <result>]…[, <else>])
<expression>
Refere-se a qualquer expressão DAX que retorne um único valor escalar em que a expressão deva ser avaliada várias vezes (para cada linha/contexto).
<value>
Um valor constante a ser correspondido com os resultados da expressão.
<result>
Qualquer expressão escalar a ser avaliada se os resultados da expressão corresponderem ao valor correspondente.
<else>
Qualquer expressão escalar a ser avaliada se os resultados da expressão não corresponderem a nenhum dos argumentos value. (Microsoft, 2024)
Dada estas informações, nota-se que a função pode ser útil para resolver a solicitação realizada pela sua liderança, certo?
1. Já no Power BI, na aba "Inicio" clique em "Entrar dados" para criação da tabela "TB_MOEDAS", onde serão inseridas as opções do botãozinho que, neste caso, serão "BRL" e "EUR". Nomeie a coluna como "Seleção" e clique em OK.
2. Agora, crie uma medida para calcular os valores das vendas em diferentes moedas. Vá até a aba "Modelagem" e clique em "Nova Medida". Neste momento será considerado que já existe uma tabela "TB_VENDAS" em que há uma coluna "Valor BRL" dos produtos vendidos.
1. Seleção Dinâmica do Valor das Vendas =
2. SWITCH(
3. SELECTEDVALUE('TB_MOEDAS[Seleção]),
4. "BRL", SUM('TB_VENDAS'[Valor BRL])
5. "EUR", DIVIDE(SUM('TB_VENDAS'[Valor BRL]), 5.98),
6. )
Antes de prosseguirmos, avalie a fórmula e veja o que você consegue compreender sem uma explicação prévia. Não se preocupe, pois todas as linhas serão detalhadas a seguir.
- Linha 1: 'Seleção Dinâmica do Valor das Vendas =' define o nome da medida que será usada no dashboard.
- Linha 2:
SWITCH('
é onde começamos a especificar o que a medida deve calcular, dependendo de condições específicas. - Linha 3 e 4:
SELECTEDVALUE('TB_MOEDAS'[Seleção])
obtém a moeda selecionada pelo usuário, que vai determinar os cálculos subsequentes, como umIF
. - Linha 5: Se "BRL" for escolhido,
SUM(TB_VENDAS[Valor BRL])
simplesmente soma o valor das vendas em BRL.. - Linha 6: Se a opção "EUR" for escolhido,
DIVIDE(SUM(TB_VENDAS[Valor BRL]), 5.98)
converte o valor das vendas de BRL para Euro usando a taxa de 5.98, isto é, usando a funçãoDIVIDE
para realizar a divisão da soma pelo rate do Euro, que foi definido como 5.98. - Linha 7: Fecha a função
SWITCH
.
3. Você deverá usar a medida criada no passo 2 no visual que preferir, neste caso foi escolhido o gráfico de linhas e colunas.
4. Então, para permitir que os usuários finais mudem facilmente entre "BRL" e "EUR", adicione um o visual "Slicer" ao seu dashboard e arraste o campo 'Seleção' da tabela 'TB_MOEDAS' para que usuário escolha em que moeda dseja visualizar.
O presente estudo de caso é concluído com a entrega da solução finalizada à liderança, este projeto revelou como um pedido simples como adicionar um "botãozinho" para alternar entre moedas, encapsula desafios significativos que foram superados utilizando a função SWITCH
do Power BI.
A solução final permite que os gestores visualizem os dados de vendas na moeda de sua escolha, aumentando a clareza e a precisão na análise financeira. Com a implementação do slicer, proporcionamos uma interface intuitiva que facilita essa troca dinâmica entre diferentes moedas.
A seguir, no gráfico de linha, uma amostra do resultado visual do estudo de caso:
Com a opção "EUR" selecionada:
E agora com a opção "BRL" selecionada:
Sua liderança o parabenizou e ressaltou que esta entrega não apenas atendeu à necessidade inicial mas também demonstrou proatividade e inovação na resolução de problemas, por este motivo você foi promovido ao cargo de Analista de Dados Pleno, parabéns! Ao aplicar conhecimentos técnicos avançados para criar uma ferramenta adaptável e fácil de usar, destacou o valor dos dados e da análise em tempo real, fazendo aquilo que diferencia um profissional no mercado, isto é, alinhando tecnologia à estratégia de negócios (Porter, 1985).
Se você gostou deste conteúdo e está interessado em aprofundar ainda mais suas habilidades no Power BI, vale a pena explorar o conceito de SWITCH aninhados. Utilizar SWITCH
dentro de outro SWITCH
permite criar condições mais complexas e dinâmicas, proporcionando ainda mais flexibilidade na construção de dashboards avançados.
Por exemplo, imagine que além de alternar entre moedas, você também precisa alternar entre valores acumulados e mensais. Você pode aninhar a função SWITCH
para atender a esses requisitos adicionais:
Seleção Dinâmica do Valor das Vendas =
SWITCH(
SELECTEDVALUE('TB_MOEDAS[Seleção]'),
"BRL", SWITCH(
SELECTEDVALUE('TB_PERIODO[Seleção]'),
"Mensal", SUM('TB_VENDAS'[Valor BRL]),
"Acumulado", "Sua medida aqui"
),
"EUR", SWITCH(
SELECTEDVALUE('TB_PERIODO[Seleção]'),
"Mensal", DIVIDE(SUM('TB_VENDAS'[Valor BRL]), 5.98),
"Acumulado", DIVIDE("Sua medida aqui", 5.98)
)
)
Neste exemplo, a função SWITCH
é aninhada para lidar com múltiplas condições, tornando o dashboard ainda mais dinâmico e responsivo às necessidades da sua liderança. Esta é uma dica para você ir além do conteúdo deste artigo, e se aprofundar.
Neste artigo, utilizamos um estudo de caso baseado em uma situação real vivida pela autora para demonstrar como a função SWITCH
pode ser aplicada para resolver problemas práticos com eficiência. É fundamental adotar uma mentalidade orientada ao negócio, utilizando a tecnologia não apenas por si só, mas com um propósito claro de resolver desafios reais e agregar valor.
A principal lição é que o uso da tecnologia deve sempre visar melhorias concretas e aplicáveis ao contexto do negócio, portanto é essencial que o estudo preparatório para o mercado de trabalho tenha como foco problemas reais para que o aprendizado seja guiado a garantir que cada solução técnica contribua para a estratégia e sucesso da empresa.
REFERÊNCIAS
MICROSOFT LEARN. Switch. Disponível em: https://learn.microsoft.com/pt-br/dax/switch-function-dax. Acesso em: 26 jun. 2024.
PORTER, M. E. Competitive Advantage: Creating and Sustaining Superior Performance. New York: Free Press, 1985.