Forum Discussion
Calculate the values between two lines
Hi everybody, I have a calculated value on Dax, but it calculates the value between the current fuel fill and the next one. I want to calculate the value between the current fuel fill and the previous one. Can abybody help me with this, please?
The Dax formula used is here, and attachet below.
Thank you
Hi Anonymous I found the solution for this case, it was:
KM Anterior =VAR Ultimo_Checklist =CALCULATE(MAX(fChecklists2[IdChecklist]),FILTER(ALL(fChecklists2),(fChecklists2[DescPlaca])=EARLIER([DescPlaca])&& fChecklists2[IdChecklist] < EARLIER([IdChecklist])&& fChecklists2[IdQuestionario] = EARLIER([IdQuestionario])&& fChecklists2[DtCadastro] <= EARLIER([DtCadastro])))VAR KM_Anterior =CALCULATE(MAX(fChecklists2[Digite a KM]),FILTER(ALL(fChecklists2),fChecklists2[IdChecklist] = Ultimo_Checklist))RETURNKM_Anterior
4 Replies
- johnt75
Super User
You can try
Diferenca KM = VAR _max = CALCULATE ( LASTNONBLANK ( fChecklists[IdChecklist], 0 ), FILTER ( ALL ( fChecklists ), fChecklists[IdChecklist] < EARLIER ( [IdChecklist] ) && fChecklists[DescPlaca] = EARLIER ( [DescPlaca] ) && fChecklists[DtCadastro] >= EARLIER ( [DtCadastro] ) && fChecklists[IdQuestionario] = EARLIER ( [IdQuestionario] ) ) ) RETURN CALCULATE ( MIN ( [Digite a KM] ), FILTER ( ALL ( fChecklists ), fChecklists[IdChecklist] = _max && fChecklists[DescPlaca] = EARLIER ( [DescPlaca] ) && fChecklists[IdQuestionario] = EARLIER ( [IdQuestionario] ) ) ) - [Digite a KM] - renanc
Helper II
Hi johnt75, actually it did not work. In the new column (Diferenca KM 2), the values are negative values of those we have in Digite a KM. Probably the term inside
CALCULATE ( MIN ( [Digite a KM] ), FILTER ( ALL ( fChecklists ), fChecklists[IdChecklist] = _max && fChecklists[DescPlaca] = EARLIER ( [DescPlaca] ) && fChecklists[IdQuestionario] = EARLIER ( [IdQuestionario] ) )is returning 0 or a null value, and then subtracting [Digite a KM].
Thank you for your help - AnonymousNot applicable
Hi renanc ,
Please share some sample data so that we could test the formula on it.
Best Regards,
Jay
- renanc
Helper II
Hi Anonymous I found the solution for this case, it was:
KM Anterior =VAR Ultimo_Checklist =CALCULATE(MAX(fChecklists2[IdChecklist]),FILTER(ALL(fChecklists2),(fChecklists2[DescPlaca])=EARLIER([DescPlaca])&& fChecklists2[IdChecklist] < EARLIER([IdChecklist])&& fChecklists2[IdQuestionario] = EARLIER([IdQuestionario])&& fChecklists2[DtCadastro] <= EARLIER([DtCadastro])))VAR KM_Anterior =CALCULATE(MAX(fChecklists2[Digite a KM]),FILTER(ALL(fChecklists2),fChecklists2[IdChecklist] = Ultimo_Checklist))RETURNKM_Anterior