Ir para conteúdo
  • 0

Turnover Acumulado Ano


Thiago Pedrazi
Ir para solução Solucionado por Renato Carlos Rossato ,

Pergunta

  • Alunos

Ola pessoal! Gostaria uma ajuda no caso abaixo:
Eu tenho as medidas de contratações, demissões, Headcount, Turnover e Turnover acumulado.
Pra achar o Headcount acumulado ano eu usei a seguinte medida abaixo.

O Usuário me disse que o cálculo é: 
Acumulado ano: Soma do total de desligados / média de headcount do ano
Fiz no excel o cálculo e achei 7,31%, mas na medida eu achei 7,17%. Conseguem me ajudar? Agradeço desde já!

Turnover Acumulado = 
VAR AnoSelecionado = YEAR(MAX(dCalendario[Data]))
VAR DemissoesAno =
    CALCULATE(
        [Demissões],
        DATESYTD(dCalendario[Data] , "12/31")
    )
VAR MediaHeadcountAno =
    CALCULATE(
        AVERAGEX(
            VALUES(dCalendario[Ano]),
            [Headcount]
        ),
        dCalendario[Ano] = AnoSelecionado
    )
RETURN
    DIVIDE(DemissoesAno, MediaHeadcountAno, 0)


image.png.cfb8959f2ec6eb9ac6052d71cbd1ab15.png   

image.png.18c692e74343c42eaba640c7ad9a9de0.png

image.png

Link para o comentário
Compartilhar em outros sites

11 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução

Olá @Thiago Pedrazi, sim, só tomei cuidado com o uso da SELECTEDVALUE pois ela é uma função seletiva, ou seja, retorna valor somente se tiver um valor de contexto selecionado, caso não ela retorna BLANK, acredito que se usar o MAX ali no lugar da SELECTEDVALUE vai dar certo neste cenário também.

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
Em 19/04/2024 em 06:58, Bruno Abdalla de Souza disse:

Tenta usar a

Uma.coluna.de.Ano/Mês na VALUES da AVERAGEX, pois entendi que é uma média anual baseada nos valores mensais. 

Bom dia @Bruno Abdalla de Souza ,  Obrigado pela dica, você está certo! Criei uma coluna na minha dCalendario com o mês/ano, coloquei na medida como você falou. Mas eu descobri porque achei 7,22% de Turnover acumulado, ao invés de 7,31%.
O problema ao meu ver está na medida anterior, o Headcount. Eu tenho minhas contratações e demissões até abril e faço o cálculo do Headcount até abril. Mas quando coloco numa tabela ou gráfico, o valor de Headcount de abril se repete até o final dos meses do ano selecionado, 2024.
Quando faço o cálculo do Turnover acumulado ano (Acumulado ano: Soma do total de desligados / média de headcount do ano), é como se eu tivesse calculando a média até o final do ano, com 488 em maio, junho, julho e etc.
Eu tentei resolver esse problema criando uma nova medida Chamada Headcount até o mês atual, mas não deu muito certo. Consegue me ajudar?

Coloquei abaixo a medida original de Headcount, e uma medida segundária de Headcount pra tentar fazer com o que o valor de Headcount de abril não fique se repetindo até o final do ano. Eu acho que se conseguir resolver esse problema, consigo acertar o cálculo de Turnover acumulado ano.

 

Headcount = 
// Funcionários Ativos
VAR _Ativos =
CALCULATE(
    [Contratações] - [Demissões],
    FILTER(
        ALL(dCalendario),
        dCalendario[Data] <= MAX(dCalendario[Data])
    )
)
RETURN
IF (_Ativos <> 0, _Ativos)

 

Headcount_Ate_Mes_Atual = 

VAR MesAtual = MAX(dCalendario[MêsAno])

VAR Headcount_Ate_Mes = 
    CALCULATE(
        [Headcount],
        FILTER(
            ALL(dCalendario[MêsAno]),
            dCalendario[MêsAno] <= MesAtual
        )
    )

RETURN
    IF(MesAtual = MAX(dCalendario[MêsAno]), Headcount_Ate_Mes, BLANK())



image.png.536e7e3d1c00691017b875edb8a01a68.png

 

image.png.dbab9c045e3657163d04c43489088d75.png

image.png.8ae3ecef8ac73945fc4314645b9a9b7d.png

 

 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
1 hora atrás, Renato Carlos Rossato disse:

Olá @Thiago Pedrazi, apenas pra ajudar, segue a correção:

Espero ter ajudado.

Dashboard_Turnover_V2.pbix 876.62 kB · 1 download

Oi @Renato Carlos Rossato , Obrigado pelo suporte amigo! Entendi o que você fez..
Mas acho que eu vejo um ponto de atenção na sua solução. 
Na dCalendario você criou uma coluna calculada considerando a coluna de Admissão.

Possui Dados = dCalendario[Data] <= EOMONTH(MAX(fFuncionarios[fct_funcionarios.data_admissao]), 0)

Vamos supor que em um determinado mês eu não tenha Admissões, mas tenha Demissões? 
Ou não tenha Admissões, e nem tenha Demissões.  Os 488 de Headcount em Abril vão ficar "Travados em abril", concorda?
Mesmo não tendo Admissões ou Demissões por exemplo em maio, eu precisaria que os 488 de Abril continuasse em maio. Faz sentido?

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
1 hora atrás, Renato Carlos Rossato disse:

@Thiago Pedrazi, caso deseje precise arrastar os valores, nesse caso então você pode trocar por TODAY() desta forma:

Possui Dados = dCalendario[Data] <= TODAY()
Testa se dessa forma atende, qualquer coisa dá um alô.

Oi @Renato Carlos Rossato , fiz o que você falou, e deu problema no Headcount de abril, sumiu o valor de abril..

 

image.png.de2d5c8a4b5ac8dd9d934835536d0e5d.png

image.png.83390b131da45ec331118d9524cd07ef.png

image.png.a84e9f545a1ab785c97a651c3189ae2d.png

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
2 horas atrás, Renato Carlos Rossato disse:

@Thiago Pedrazi, caso deseje precise arrastar os valores, nesse caso então você pode trocar por TODAY() desta forma:

Possui Dados = dCalendario[Data] <= TODAY()
Testa se dessa forma atende, qualquer coisa dá um alô.

Complementando a minha mensagem anterior @Renato Carlos Rossato , acho que deu erro no cálculo por causa disso.
Possui Dados = dCalendario[Data] <= TODAY() - Logicamente ele entende como Today () até hoje no caso, nos dias seguintes ele chama de False.
Eu uso nas tabelas e gráficos o mês/ano..



image.png.0e68739418f3b662014ea35f0bdbc61b.png

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos
2 horas atrás, Renato Carlos Rossato disse:

@Thiago Pedrazi, caso deseje precise arrastar os valores, nesse caso então você pode trocar por TODAY() desta forma:

Possui Dados = dCalendario[Data] <= TODAY()
Testa se dessa forma atende, qualquer coisa dá um alô.

Acho que resolvi o problema @Renato Carlos Rossato ,  faz sentido?

 


Mês_Corrente = IF(MONTH(dCalendario[Data]) <= MONTH(TODAY()), TRUE(), FALSE())

Headcount V2 = 
// Funcionários Ativos
VAR _Ativos =
CALCULATE(
    [Contratações] - [Demissões],
    FILTER(
        ALL(dCalendario),
        dCalendario[Data] <= MAX(dCalendario[Data]) && SELECTEDVALUE(dCalendario[Mês_Corrente]) = TRUE()
    )
)
RETURN
IF (_Ativos <> 0 , _Ativos)

 

image.png.2872a3cac1baf488f1bb50a6b63d037a.png

image.png.7c59451afce3973b9a3b8133078985c7.png

Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...