O Power BI Developer Mode encontra-se a alguns meses em preview, sendo que permite a edição dos ficheiros de Power BI através de um editor de texto assim como a integração com GIT permitindo utilizar capacidades de trabalho em paralelo de vários utilizadores.
Aquando do lançamento desta versão de desenvolvimento, foi anunciada o novo formato de definição dos modelos, o TMDL (Tabular Model Definition Language), sendo que no mês de fevereiro foi lançada a preview desta funcionalidade.
Mas o que é o TMDL e para que serve?
O TMDL é uma sintaxe de definição dos modelos para objetos tabulares, ou seja, é a linguagem na qual os modelos do Power BI, assim como outros modelos tabulares são guardados.
Quem tem feito utilização do Power BI Developer Mode verifica que o ficheiro model BIM apresenta um formato atualmente bastante mais simplificado do que anteriormente, isto é possível devido ao TMSL (Tabular Model Scripting Language), que é relativamente legível, mas ainda inclui algumas particularidades que podem dificultar a sua leitura ou escrita.
O TMDL traz uma componente de facilidade adicional uma vez que é baseado em texto e otimizado para a interação e legibilidade.
Seguindo o exemplo do formato PBIP (Power BI Project) o nosso modelo em vez de ser guardado num único ficheiro (formato BIM), está agora dividido por pasta e subpastas, uma por cada atributo do nosso modelo.
Vamos ver o exemplo abaixo:
Tabelas Power BI

Pasta ficheiro PBIP

Estrutura de pasta de dataset

Ficheiros da pasta tables

Como podemos ver por cada uma das tabelas presentes no nosso modelo é gerado um ficheiro correspondente às definições do mesmo, ou seja, onde nos aparece o código M as métricas DAX, as formatações e todas restantes características.
Vamos então um exemplo de como estes ficheiros podem ser editados num qualquer editor de texto.

Na imagem acima podemos verificar que temos no topo a identificação da tabela, e abaixo temos as várias medidas DAX que estão incluídas nesta tabela, vemos também no fim da imagem uma das colunas. Como é evidente a leitura é muito simples e além de notações especificas, mas que são também muito legíveis, não temos a utilização de qualquer carater especial para iniciar uma escrita de nova linha, a alteração de uma característica, ou qualquer, outra forma de codificação.

Neste outro exemplo apresentamos o código M da nossa tabela que podemos verificar agora se apresenta tal como no editor avançado do Power Query.
Se compararmos com o formato TMSL, é evidente a simplificação que este novo formato traz para a edição através de editor de texto:

Verifiquem que nesta última imagem temos a introdução de vários carateres especiais tais como:}, “, /,] entre outros que se não estiverem corretamente colocados vão originar erros.
Devemos ter em atenção que as práticas relativas ao PBIP são as mesmas:
- Power BI Desktop não reconhece as alterações realizadas no editor de texto obrigando a abrir o PBIP para serem assumidas
- Alterações de tabelas irão obrigar a um refresh (identificado mal se abre o PBI Desktop)
- Edição de medidas DAX são reconhecidas sem necessidade de refresh
- Nos casos em que vários utilizadores estão a trabalhar no mesmo PBIP, os utilizadores não devem trabalhar no mesmo objeto
- As regras da linguagem M continuam a ser as mesmas (exemplo: case sensitive, identificação de campos de texto com #” “, …)
- Não existe intellisense para M ou DAX
- Entre outras
Caso queiram aprender mais sobre esta forma de editar os modelos no Power BI vejam os links abaixo para começarem a vossa viagem no mundo da edição no formato de texto.
https://powerbi.microsoft.com/en-us/blog/deep-dive-into-power-bi-desktop-developer-mode-preview
https://learn.microsoft.com/en-us/analysis-services/tmdl/tmdl-how-to?view=asallproducts-allversions