Nos últimos meses temos vindo a ter no Power BI (PBI), Desktop e Serviço, diversas opções que apenas estavam disponíveis através de ferramentas externas. Como exemplo destas funcionalidades temos as alterações no modelo semântico: desabilitar medidas implícitas, criação de calculations groups, vista de perspetivas e culturas.
No final do ano passado surgiu em preview a DAX Query View, que nos permite escrever, editar e visualizar expressões em DAX no nosso modelo semântico.
Esta funcionalidade que dantes estava disponível através do DAX Studio, passou a estar dentro do PBI Desktop, permitindo assim analisar o nosso modelo de forma facilitada utilizando o DAX.
Para acedermos a esta janela temos um novo botão no painel do lado esquerdo do Power BI Desktop:

Esta janela é composta por:

- Separador: inclui botões para as funcionalidades de escrita de DAX
- Barra de comandos: Ações para correr queries de DAX
- Painel de dados
- Editor de queries de DAX: Onde se escrevem as queries de DAX
- Tabela de resultados: resultados das queries de DAX
- Queries Rápidas: Queries de DAX geradas automaticamente de tabelas, colunas e medidas
Para podermos utilizar corretamente esta funcionalidade é importante perceber dois conceitos base:
- EVALUATE: função requerida para que os dados que pretendemos sejam devolvidos
- DEFINE: função opcional, e que permite definir uma medida ou uma fórmula de DAX para usar na nossa querie.
Temos duas formas de utilizar esta janela.
Escrever as nossas próprias queries
Esta forma permite-nos escrever diretamente o nosso código, temos de ter em atenção que o resultado devolvido deverá ser sempre em formato de tabela pelo que por exemplo se quisermos correr uma medida de forma isolado temos de transformar o resultado em tabela utilizando a função ROW, SUMMARIZECOLUMNS ou envolvendo a nossa medida entre chavetas ({ [Medida] }).
Vamos então ver o exemplo de uma sintaxe utilizando SUMMARIZE:

Também podemos utilizar variáveis na nossa sintaxe:

Como podemos verificar rapidamente podemos fazer queries ao nosso modelo e obter os resultados diretamente dos nossos dados tendo em atenção todo o contexto do mesmo.
Queries rápidas:
A segunda forma de utilizarmos esta janela é através das queries rápidas, estas estão disponíveis através do botão de contexto nas tabelas, colunas ou medidas, ou através da janela da performance analyzer:

Dependendo da opção que fazemos temos diversas sintaxes, no entanto podemos destacar algumas opções interessantes:
- Tabela e coluna: inclui uma opção de estatísticas por coluna, informação de contagem, valores distintos, nulos, máximo, mínimo, …
- Coluna: ver dados da coluna, utiliza a função DISTINCTpara devolver os resultados
- Medidas:
- EVALUATE devolve apenas o valor da medida selecionada.
- DEFINE and EVALUATE define a medida e devolve o resultado da mesma
- DEFINE with references and EVALUATE define a medida, mas inclui as definições de todas as medidas das quais a nossa medida depende, como podemos ver na imagem abaixo

Ao utilizarmos a opção DEFINE nas nossas medidas podemos fazer modificações às mesmas e abrimos a possibilidade de fazer alterações diretamente no nosso modelo, se alterarmos uma das nossas medidas anteriores podemos verificar essa opção:


Além de podermos rapidamente fazer um querie aos nossos dados e visualizar os nossos resultados destaco ainda:
- Utilização de intelissense
- Barra de tarefas com opções de Formatação, comentar / descomentar, procurar/substituir e comandos
- Funções de informação (INFO) que nos permitem saber informação sobre o esquema do nosso modelo
- Estas queries são guardadas no nosso PBIX
- Máximo de 15MB ou 1.000.000 de valores por querie, significando que se fizermos uma querie com 20 colunas iremos receber o resultado de 50.000 linhas (1.000.000 / 20)
Existem também algumas limitações sendo que as mesmas estão sumarizadas na página da documentação.