Pular para o conteúdo principal

Power BI ERROR - O modelo não tem uma expressão nomeada chamada ...

Sua dCalendario tem muitas colunas? Vamos adicionar mais uma...



Olá povo bonito e poliglota do Linkedin, queria falar hoje com vocês sobre uma dúvida que foi postada num dos grupos do Whatsapp de Power BI que participo.

A necessidade do nosso amigo era bem interessante, ele queria analisar dados ao longo do tempo de uma forma diferente mas que pode trazer algumas ideias bem interessantes pra analisar a sazonalidade de vendas, atendimentos, o que você quiser, nos dias da semana ao longo de um período.

Se você não entendeu nada, na hora eu também não entendi, eu vou explicar...

Ele queria ver, por exemplo, num gráfico a venda de todos os meses somente da Primeira Segunda-Feira de cada mês. Então num gráfico de colunas estariam todas as primeiras segunda-feira de cada mês ao longo dos meses. Depois ele poderia comparar também essa primeira segunda-feira com a segunda segunda-feira do mês e, então, analisar a sazonalidade de vendas comparando dentro de um mês o comportamento do cliente não nas segundas-feiras apenas, mas na primeira segunda-feira, na segunda, na terceira e aí conseguimos ter insights analisando esses desenhos de padrão de consumo.

O grande problema era então conseguir criar numa dCalendario (se não sabe o que é isso dá uma olhada nesse vídeo do Garcia que é muito bom) uma coluna que indicasse se aquela segunda-feira seria a primeira, segunda, terceira, quarta ou quinta dentro de um mês.

Então vamos à brincadeira...

Mas antes... vai lá no meu canal e se inscreve, vai levar nem 10 segundos seu pão duro...


Agora que você se inscreveu no meu canal vamos iniciar...

Temos aqui então a coluna de data da nossa dCalendario no seu estado simples, somente datas nesse caso, iniciando do dia 01/01/2018... mas você vai utilizar claro a sua dCalendario no período que você esteja trabalhando.

Coloque essa coluna em ORDEM da menor data para a maior pra dar tudo certo.

Vamos precisar inserir inicialmente 2 colunas, nome do mês e ano, porque iremos mescla-las para que possamos criar uma coluna "mês ano".



Para incluir as colunas Nome Mês e Ano é bem simples você vai selecionar a coluna "Data" Menu Adicionar coluna e no botão "Data", aquele que tem um desenho de um calendário vai clicar e selecionar Ano, e depois em Mês vai escolher "Nome do Mês" como abaixo.


Beleza garotinho? Seleciona então agora as colunas "Nome do Mês" clica no CTRL e seleciona também "Ano", Menu > Transformar > Mesclar Colunas.




Seleciona novamente a coluna "Data" que agora vamos adicionar o nome do dia da semana.


Se deu tudo certo agora você tem uma coluna de Datas, uma coluna com Mês e Ano e uma coluna com o nome do dia da semana. Se não deu comece tudo de novo até aprender.

E agora vamos começar de verdade a trabalhar com o power query. Vamos precisar agora agrupar as linhas com base em dois critérios "MêsAno" e "Nome do Dia".

Selecione essas duas colunas que falei acima, clique com o botão direito no cabeçalho de qualquer uma das duas e clique em "Agrupar por..."


Ele vai lhe mostrar a tela abaixo.


E com meus poderes mediúnicos eu sei que você já saiu clicando no OK.

"Essa pessoa, não seja essa pessoa..."

Vamos ter que alterar antes a opção "Operação" que por default vai esta na opção "Contar Linhas" e vamos mudar para "Todas as Linhas".


AGORA SIM CLICA OK AÍ...

Você vai perceber que foi criada uma Coluna com o nome "Contagem" que em cada registro traz uma tabela encapsulada.

Se você clicar AO LADO DO NOME TABLE em um desses registros (AO LADO, NÃO NO NOME!!!!!!) você vai ver abaixo os dados dessa tabela encapsulada... que nada mais será uma relação de todos os dias de um Mês que caem por exemplo na segunda-feira como abaixo:


Se você prestar atenção vai ver que as segundas-feiras estão em ordem de data dentro do mês, porque lá atrás eu coloquei minha coluna Data em Ordem Crescente, por isso te pedi pra fazer isso no começo.

Agora precisamos então de alguma forma, criar um numero que me identifique que dia 01/01/2018 é a 1ª, dia 08/01/2018 é a 2ª e assim por diante.

Pra isso podemos incluir uma coluna de Índice iniciando do 1. Mas se você for lá em cima no menu Adicionar Colunas e simplesmente mandar criar um Índice não vai rolar, porque precisamos criar esse índice DENTRO da tabela encapsulada.

Vamos fazer isso adicionando uma coluna personalizada com a seguinte expressão:

Table.AddIndexColumn([Contagem], "Index", 1)


Isso vai criar dentro de cada tabela encapsulada uma coluna de índice chamada "Index" iniciando de 
1. Vamos ver como ficou agora então nossa nova tabela encapsulada


Remove então essa coluna "Contagem" porque não vamos mais precisar dela.

E vamos expandir a coluna Personalizar clicando no botão de expandir do lado do nome da coluna.





Ele vai te mostrar algo assim...

Seleciona somente as colunas Data e Index, que são as que iremos extrair, já que MesAno e Nome do Dia já temos...

Clique em ok, e veja que temos agora 4 colunas.

Ajustes os tipos de dados das colunas e vamos pra próxima parte.





Vamos selecionar a Coluna de Index segurar CTRL e clicar na coluna com Nome do Dia, botão direito do mouse no cabeçalho de uma das duas e "Mesclar Colunas"

No tipo de separador eu escolhi um Personalizado e coloquei um "azinho" de ordinal ( ª ) com um espaço depois dele pra que fique no padrão que eu quero e em Novo Nome da Coluna coloquei "OrdemSemana", mas você pode fazer o que você quiser... importante é concatenar pra que você possa ter a coluna que queríamos criar.


voilà temos agora criada a coluna que queríamos:



Agora meus amiguinhos... é com a imaginação de vocês. Como podem utilizar essa mais nova coluna na sua dCalendário?

Grande abraço e até a próxima.


Comentários

Postagens mais visitadas deste blog

[Links Públicos do Power BI] Você ainda os utiliza? Bem... cuidado...

O título pode parecer um pouco "sensacionalista" mas não era a intenção, ou talvez era sei lá... mas o fato é que Links públicos ainda são MUITO utilizados não só para o seu uso devido que é o compartilhamento de informações que são de fato públicas, para criação de portfólio e etc, essas são excelentes formas de utilizar esse cara.

Mas o problema vem quando utilizamos links públicos para compartilhamento de informações ou sigilosas da empresa o que pode levar à sua demissão ou informações sensíveis de terceiros que por padrão NEM DEVERIAM ESTAR NO SEU RELATÓRIO, por conta da nossa querida LGPD que uma hora ou outra entrará em vigor.

E se você quer uma consultoria em Power BI e a Melhor do Brasil em POWER BI EMBEDDED "chama nois" em [email protected]

Então temos o velho argumento, se eu não compartilhar com ninguém ou só compartilhar com pessoas da minha empresa e pedir para não compartilhar com ninguém (você é bem ingênuo né?) não tem como vazar.

Será????
Sim pode …

Power BI - Atualização Incremental de Qualquer Tipo de Fonte de Dados!!!!

Sim eu não enlouqueci, na técnica que vamos apresentar que foi criada pelo Dustin Ryan aqui nesse artigo https://sqldusty.com/2020/05/20/power-bi-incremental-refresh-with-web-api-data-source/ e também demonstrada pelo Gilbert da Fourmoo (adoro o símbolo da empresa kakakkaka) aqui nesse outro excelente artigo https://www.fourmoo.com/2020/06/10/how-you-can-incrementally-refresh-any-power-bi-data-source-this-example-is-a-csv-file/ , permite que você faça atualização incremental para qualquer FUCKIN tipo de fonte de dados e isso é sensacional. MASSSSSSS... eu fui um pouco além e decidi mudar uma coisinha que pode fazer uma ENORME diferença, nos artigos citados acima é utilizada uma fonte do SQL Server (que claro poderia ser um Oracle, ou qualquer fonte que utilize query folding) já que QueryFolding é uma premissa necessária para a utilização da Atualização Incremental, como eu já falei pra vocês nesse vídeo aqui no canal Planilheiros Brasil e aconselho que veja esse vídeo antes de seguir l…

Power BI - Colocando sua dCalendario em "Ordem"

Power BI - Colocando sua dCalendario em "Ordem"
Olá Princesas e Princesos.

Hoje iremos brincar, novamente, com dCalendario.

É um assunto legal, uma estrutura praticamente obrigatória, então vamos explora-la ainda mais.

Se você já entende o conceito de ordenar as linhas da coluna da dCalendário de forma a ficar sempre tudo na ORDEM crescente ou DECRESCENTE de Datas, Meses, Anos, Semanas, e etc esse artigo pode ser um tanto quanto boring pra você, então aconselho a procurar outro meio de vida.

MAS ANTES... adivinhem?

Não tá inscrito no canal se inscreve lá www.youtube.com/rafaelmendonca

Exemplo 1 - Ordenando coluna de Nome do Mês.
Uma das colunas que costumamos criar na dCalendario é a Mês Nome (janeiro, fevereiro, março...)

Por padrão a ordenação de uma coluna sempre é ela mesmo, ou seja numa coluna com dados de texto a ordenação vai ser alfabética, e seus meses serão ordenados da seguinte forma:

abril, agosto, dezembro, fevereiro, janeiro, julho, junho, maio, março, novembro…