Ir para conteúdo
  • 0

Calendário Gerencial


alexsander.silva
Ir para solução Solucionado por Vitor Peralva ,

Pergunta

  • Members

Bom dia pessoal, preciso de ajuda para criar um calendário gerencial. Basicamente eu preciso definir nesse calendário que o mês gerencial tem que começar sempre na segunda feira e terminar sempre no domingo, fazendo com que alguns meses se estendam a outros meses, por exemplo o mês de junho começar no dia 30/05 (Segunda-Feira) e terminar no dia 03/07 (Domingo). Alguém poderia me ajudar com esse problema? Vou deixar uma planilha em anexo com o calendário gerencial de 2022 como exemplo. No caso eu precisaria criar um Calendário automatizado que defina os meses corretamente de acordo com a base que eu estiver utilizando.

Calendário Gerencial.xlsx

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
  • Members
  • Solução

Boa Noite, @alexsander.silva!

 

Acredito que o que você precisa fazer é mais ou menos o seguinte, se quiser somente uma coluna com o nome do mês.

 

Insira este código numa coluna personalizada e ela ter retorna o nome do mês ajustado:

 

let 

vDia = Date.Day([Data]),
vDataUltimoDia = Date.EndOfMonth([Data]),
vUltimoDiaMes = Date.Day(vDataUltimoDia),
vDataUltimoDiaSemana = Date.EndOfWeek([Data], Day.Monday),
vResultado = 
if vDia > 3 and vDia < (vUltimoDiaMes - 2) then Date.MonthName([Data])
else if vDia < 4 and Date.Day(vDataUltimoDiaSemana) < 4 then Date.MonthName(Date.AddMonths([Data], -1))
else if vDia > (vUltimoDiaMes - 3) and Duration.TotalDays(vDataUltimoDiaSemana - vDataUltimoDia) > 3 then Date.MonthName(Date.AddMonths([Data], 1))
else Date.MonthName([Data])

in 

Text.Proper(vResultado))

 

Vou ver se consigo gravar um vídeo para o meu canal com a explicação passo a passo, mas acredito que olhando o código, também é possível compreender.

 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Members
9 minutos atrás, Rapha disse:

Bom dia @alexsander.silva !

Achei esse artigo publicado no blog do mestre, acho que pode ajudar adaptando o código a sua necessidade:

https://powerbiexperience.com/pt/blog/tabela-dcalendario-com-ano-fiscal-offset-e-mes-de-fechamento-personalizado/

Eu já vi esse artigo, porem não entendo quase nada de linguagem M, por isso não sei como adaptar o código.

Editado por alexsander.silva
Link para o comentário
Compartilhar em outros sites

  • 0
  • Members
Em 11/06/2022 em 19:33, Vitor Peralva disse:

Boa Noite, @alexsander.silva!

 

Acredito que o que você precisa fazer é mais ou menos o seguinte, se quiser somente uma coluna com o nome do mês.

 

Insira este código numa coluna personalizada e ela ter retorna o nome do mês ajustado:

 

let 

vDia = Date.Day([Data]),
vDataUltimoDia = Date.EndOfMonth([Data]),
vUltimoDiaMes = Date.Day(vDataUltimoDia),
vDataUltimoDiaSemana = Date.EndOfWeek([Data], Day.Monday),
vResultado = 
if vDia > 3 and vDia < (vUltimoDiaMes - 2) then Date.MonthName([Data])
else if vDia < 4 and Date.Day(vDataUltimoDiaSemana) < 4 then Date.MonthName(Date.AddMonths([Data], -1))
else if vDia > (vUltimoDiaMes - 3) and Duration.TotalDays(vDataUltimoDiaSemana - vDataUltimoDia) > 3 then Date.MonthName(Date.AddMonths([Data], 1))
else Date.MonthName([Data])

in 

Text.Proper(vResultado))

 

Vou ver se consigo gravar um vídeo para o meu canal com a explicação passo a passo, mas acredito que olhando o código, também é possível compreender.

 

Bom dia,
Eu consegui criar o calendário utilizando o DAX, mas se puder explicar o que seu código faz e como referenciar minhas datas no código para que possa ser efetuado os cálculos ficarei grato. 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...