Ir para conteúdo
  • 0

Ajuda com Dash de Logistica


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

Pergunta

  • Membros

Estou fazendo um Dashboard do setor de Logística, onde estou tentando mostrar no gráfico abaixo o custo por mês (Custo Fixo + Custo Variável). Estou com dois problemas, no gráfico fica aparecendo esse "Em branco" antes de janeiro e o outro problema é que se eu somar os valores isolados do mês, o resultado é maior do que o exibido no cartão. Alguém pode me ajudar a solucionar esses problemas? Vou deixar o Pbix em anexo.

image.thumb.png.8be1e3f73007c6ce5140515e2626d713.png

Logistica.pbix

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0
  • Membros
  • Solução
9 minutos atrás, alexsander.silva disse:

4621,40.
Vou te explicar a lógica que utilizei. Eu peguei o valor de férias que é 30% do salario e divido por 12 para achar o valor que das férias por mês, depois fiz o mesmo calculo para o 13º Salario. Feito isso peguei o salario mensal de cada um e somei mais 70% de encargos, depois somei o valor rateado das férias e décimo terceiro em cima desse valor, depois somo os valores e divido pelo numero de caminhões que no caso é 13, gerando o custo mensal com funcionário de 4621,40 por caminhão.

Entendi, vei então para resolver isso é só tu criar uma nova medida de funcionario:
 

Custo Mensal Fun =
SUMX(
VALUES(dCalendario[Mes Abrev]),
[Custo Mensal Funcionario])

 


Depois substitui lá na medida Custo Fixo a medida Custo Mensal Funcionario por essa nova Custo Mensal Fun... o resultado vai ser esse:


image.png.148a2dee38bc10faef7d9f066849449e.png


A soma deles individualmente vai bater com o valor do card....


Agora eu notei que ta vindo o custo de funcionários de abril (justamente por não existir o relacionamento), não sei se você quer que ele apareça já que na tabela que mandou não tem dados de abril...

Caso não queira que os meses sem dados apareça e conte já os custos fixos dele a saída é o seguinte:

1. Crie uma nova coluna na tabela calendário

image.thumb.png.3fca1e0ba366c882f1e4df87e70f5c2e.png 

2. Crie um filtro na página para ficar somente os TRUE, o resultado será esse:

image.png.f3aa65f818e1ce0ce88612fa8d81fb6e.png

 

Sem o mês de abril que não tem dados na tabela que você enviou....


Agora caso queira que já apareça o abril msm sem ter dados só a mudança nas medidas vai funcionar para você.

 

 

 

 

 

 

 

 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros
2 horas atrás, alexsander.silva disse:

Estou fazendo um Dashboard do setor de Logística, onde estou tentando mostrar no gráfico abaixo o custo por mês (Custo Fixo + Custo Variável). Estou com dois problemas, no gráfico fica aparecendo esse "Em branco" antes de janeiro e o outro problema é que se eu somar os valores isolados do mês, o resultado é maior do que o exibido no cartão. Alguém pode me ajudar a solucionar esses problemas? Vou deixar o Pbix em anexo.

image.thumb.png.8be1e3f73007c6ce5140515e2626d713.png

Logistica.pbix 196 kB · 1 download

Fala meu querido, bom dia!

Cara o que ocorre ai é um problema de modelagem e de DAX.

O mes em branco e o total da soma maior que o do cartão ocorre porque não existe relacionamento entre a tabela de motoristas e fAbastecimento. Assim, ela ta repetindo o mesmo valor para todo mundo (inclusive para um mês inexistente que é o "EM BRANCO" e o de abril (pode notar que são os mesmos valores e que esses valores é exatamente o vaor da medida Custo Mensal Funcionário que esta sendo repitido o mesmo valor para todos os meses por causa da ausência de relacionamento).

Para resolver isso é preciso fazer um relacionamento entre as tabelas como o feito abaixo:

image.png.04fa82a30bbe2046375657e0d9fd7399.png


Garanta que essa tabela dMotorista não tenha mais relacionamento com nínguem pq esse tipo de relacionamento bidirecional pode causar ambiguidades (Caso a tabela dMotorista tenha que fazer relacionamento com algúem você vai ter fazer esse relacionamento se tornar do tipo AMBOS direto na medida)


Com isso você resolve a parte do "EM BRANCO" e a parte do valor de custo mensal do funcionário ser o mesmo para todo mes. como demonstrado abaixo:
image.png.9924ac3cae4d593ded8783ad98bcd0b4.png



Note que o valor de março é diferente dos outros isso ocorre porque o funcionário WALTER não está sendo considerado em março já que não tem nenhuma linha na fAbastecimento para ele.

Se isso não for para ocorrer aconselho você mudar a medida Custo Mensal Funcionário, colocando um ALL na tabela dCalendário (Cuidado para não aplicar o calculate + all com uma variavel dentro, isso não vai funcionar)


Outra coisa que podemos percerber é que no contexto geral do custo mensal de funcionario ele não ta somando todos os custos e sim só replicando um deles. Isso ocorre porque no geral ele usa um contexto completo. Para que no final ele some e mostre o valor correto (Isso é muito importante para que o seu card calcule o valor correto, pq o card usa o contexto "TOTAL" e lá tem que estar o valor correto) é preciso usar a SUMX. Isso não da para ser feito na medida que já existe, porque ela ta toda referenciada a variaveis e como falei acima, a variavel não pode ser utilizada dentro de um CALCULATE. Logo, temos que criar uma medida nova como a medida abaixo:
 

Custo Mensal Fun =
SUMX(
CROSSJOIN(
VALUES(dCalendario[Ano]),
VALUES(dCalendario[Mes Abrev])),
CALCULATE([Custo Mensal Funcionario]))



Agora altera a medida de custo fixo onde lá você chama a medida "Custo Mensal Funcionário" e coloque essa medida nova que foi criada que eu chamei de "Custo Mensal Func".


Isso resolve as duas questões que você trouxe, mas eu aconselho a validar os números pq essa questão do custo do funcionário é complicada caso tenha que ser o mesmo todo mes ou se tiver que fazer uma análise de quando esse funcionario entrou e só ai contar o valor dele.


 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros
13 minutos atrás, paulocesarmlf disse:

Fala meu querido, bom dia!

Cara o que ocorre ai é um problema de modelagem e de DAX.

O mes em branco e o total da soma maior que o do cartão ocorre porque não existe relacionamento entre a tabela de motoristas e fAbastecimento. Assim, ela ta repetindo o mesmo valor para todo mundo (inclusive para um mês inexistente que é o "EM BRANCO" e o de abril (pode notar que são os mesmos valores e que esses valores é exatamente o vaor da medida Custo Mensal Funcionário que esta sendo repitido o mesmo valor para todos os meses por causa da ausência de relacionamento).

Para resolver isso é preciso fazer um relacionamento entre as tabelas como o feito abaixo:

image.png.04fa82a30bbe2046375657e0d9fd7399.png


Garanta que essa tabela dMotorista não tenha mais relacionamento com nínguem pq esse tipo de relacionamento bidirecional pode causar ambiguidades (Caso a tabela dMotorista tenha que fazer relacionamento com algúem você vai ter fazer esse relacionamento se tornar do tipo AMBOS direto na medida)


Com isso você resolve a parte do "EM BRANCO" e a parte do valor de custo mensal do funcionário ser o mesmo para todo mes. como demonstrado abaixo:
image.png.9924ac3cae4d593ded8783ad98bcd0b4.png



Note que o valor de março é diferente dos outros isso ocorre porque o funcionário WALTER não está sendo considerado em março já que não tem nenhuma linha na fAbastecimento para ele.

Se isso não for para ocorrer aconselho você mudar a medida Custo Mensal Funcionário, colocando um ALL na tabela dCalendário (Cuidado para não aplicar o calculate + all com uma variavel dentro, isso não vai funcionar)


Outra coisa que podemos percerber é que no contexto geral do custo mensal de funcionario ele não ta somando todos os custos e sim só replicando um deles. Isso ocorre porque no geral ele usa um contexto completo. Para que no final ele some e mostre o valor correto (Isso é muito importante para que o seu card calcule o valor correto, pq o card usa o contexto "TOTAL" e lá tem que estar o valor correto) é preciso usar a SUMX. Isso não da para ser feito na medida que já existe, porque ela ta toda referenciada a variaveis e como falei acima, a variavel não pode ser utilizada dentro de um CALCULATE. Logo, temos que criar uma medida nova como a medida abaixo:
 

Custo Mensal Fun =
SUMX(
CROSSJOIN(
VALUES(dCalendario[Ano]),
VALUES(dCalendario[Mes Abrev])),
CALCULATE([Custo Mensal Funcionario]))



Agora altera a medida de custo fixo onde lá você chama a medida "Custo Mensal Funcionário" e coloque essa medida nova que foi criada que eu chamei de "Custo Mensal Func".


Isso resolve as duas questões que você trouxe, mas eu aconselho a validar os números pq essa questão do custo do funcionário é complicada caso tenha que ser o mesmo todo mes ou se tiver que fazer uma análise de quando esse funcionario entrou e só ai contar o valor dele.


 

Eu não entendi o por quê tem que ter esse relacionamento bidirecional, a única coisa que preciso e pegar um valor rateado de custo por funcionário e distribuir para os meses, ou seja a tabela de abastecimento não tem a ver com a de funcionário, e no caso o Custo mensal de funcionário tem que ser igual todos os meses pois é um valor geral rateado para o numero de caminhões.

Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros
54 minutos atrás, alexsander.silva disse:

Eu não entendi o por quê tem que ter esse relacionamento bidirecional, a única coisa que preciso e pegar um valor rateado de custo por funcionário e distribuir para os meses, ou seja a tabela de abastecimento não tem a ver com a de funcionário, e no caso o Custo mensal de funcionário tem que ser igual todos os meses pois é um valor geral rateado para o numero de caminhões.

Quanto que é o custo de funcionario que tem que ser colocado todo mês?

Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros
48 minutos atrás, paulocesarmlf disse:

Quanto que é o custo de funcionario que tem que ser colocado todo mês?

4621,40.
Vou te explicar a lógica que utilizei. Eu peguei o valor das férias que é 30% do salario e diz uma divisão por 12 para achar o valor das férias por mês, depois fiz o mesmo calculo para o 13º Salario. Feito isso peguei o salario mensal de cada um e somei 70% de encargos, depois somo o valor rateado das férias e décimo terceiro em cima desse valor. Agora faço a soma dos valores e divido pelo numero de caminhões que no caso é 13, gerando o custo mensal com funcionário de 4621,40 por caminhão.

Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros
7 minutos atrás, paulocesarmlf disse:

Entendi, vei então para resolver isso é só tu criar uma nova medida de funcionario:
 

Custo Mensal Fun =
SUMX(
VALUES(dCalendario[Mes Abrev]),
[Custo Mensal Funcionario])

 


Depois substitui lá na medida Custo Fixo a medida Custo Mensal Funcionario por essa nova Custo Mensal Fun... o resultado vai ser esse:


image.png.148a2dee38bc10faef7d9f066849449e.png


A soma deles individualmente vai bater com o valor do card....


Agora eu notei que ta vindo o custo de funcionários de abril (justamente por não existir o relacionamento), não sei se você quer que ele apareça já que na tabela que mandou não tem dados de abril...

Caso não queira que os meses sem dados apareça e conte já os custos fixos dele a saída é o seguinte:

1. Crie uma nova coluna na tabela calendário

image.thumb.png.3fca1e0ba366c882f1e4df87e70f5c2e.png 

2. Crie um filtro na página para ficar somente os TRUE, o resultado será esse:

image.png.f3aa65f818e1ce0ce88612fa8d81fb6e.png

 

Sem o mês de abril que não tem dados na tabela que você enviou....


Agora caso queira que já apareça o abril msm sem ter dados só a mudança nas medidas vai funcionar para você.

 

 

 

 

 

 

 

 

Excelente!!
Problema resolvido, muito obrigado.

  • Obrigado(a) 1
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...