Ir para conteúdo
  • 0

Apoio Formula Dax - Valor Incorreto


Jcsouza.lemos
Ir para solução Solucionado por Jcsouza.lemos ,

Pergunta

  • Membros

Boa tarde! 

Estou com uma situação onde o valor final não bate.

No exemplo da formula abaixo o valor para a variável CUSTO e PERCUSTO de forma individualizadas retornam corretamente, porém realizar o calculo com os dos valores o valor final apresenta uma pequena diferença.

 

Exemplo:

CUSTO = 22265,50

PERCUSTO = 5,26

Resultado Final Correto: 21094,34

Resultado Final Formula: 21093,63

Alguém teria um norte de como identificar o que poderia está ocasionando essa diferença?

Custo Final =
VAR CUSTO = CALCULATE(SUMX(
    tb_custos_colaboradores,tb_custos_colaboradores[Custo Mensal Contrato]) / SUmx(tb_colaboradores,tb_colaboradores[Dias Úteis])) * SUMX(tb_colaboradores,tb_colaboradores[dia_profissional_realizado])
 
VAR PERCUSTO =
 IF(
    divide([Faltas_Contabilizadas],[dprofesperado]) *100 = 0, 0,
    divide([Faltas_Contabilizadas],[dprofesperado]) *100
)
 
return
 
 CUSTO - (CUSTO * DIVIDE(PERCUSTO,100))
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
  • Membros
  • Solução
3 horas atrás, Thiago Abras Carneiro disse:

Boa tarde, talvez uma questão de arredondamento?

Custo Final =
VAR CUSTO =
    ROUND(
        SUMX(tb_custos_colaboradores, tb_custos_colaboradores[Custo Mensal Contrato])
        / SUMX(tb_colaboradores, tb_colaboradores[Dias Úteis])
        * SUMX(tb_colaboradores, tb_colaboradores[dia_profissional_realizado]),
        2
    )
VAR PERCUSTO =
    IF(
        ROUND(DIVIDE([Faltas_Contabilizadas], [dprofesperado]), 4) * 100 = 0,
        0,
        ROUND(DIVIDE([Faltas_Contabilizadas], [dprofesperado]), 4) * 100
    )
RETURN
    ROUND(CUSTO - (CUSTO * DIVIDE(PERCUSTO, 100)), 2)
 

Fala Thiago, Boa Noite!

Foi exatamente isso. Muito Obrigado pela ajuda.

  • Gostei 1
Link para o comentário
Compartilhar em outros sites

  • 0
  • Membros

Boa tarde, talvez uma questão de arredondamento?

Custo Final =
VAR CUSTO =
    ROUND(
        SUMX(tb_custos_colaboradores, tb_custos_colaboradores[Custo Mensal Contrato])
        / SUMX(tb_colaboradores, tb_colaboradores[Dias Úteis])
        * SUMX(tb_colaboradores, tb_colaboradores[dia_profissional_realizado]),
        2
    )
VAR PERCUSTO =
    IF(
        ROUND(DIVIDE([Faltas_Contabilizadas], [dprofesperado]), 4) * 100 = 0,
        0,
        ROUND(DIVIDE([Faltas_Contabilizadas], [dprofesperado]), 4) * 100
    )
RETURN
    ROUND(CUSTO - (CUSTO * DIVIDE(PERCUSTO, 100)), 2)
 

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...