cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Arlenio
Regular Visitor

RANK X inst understanding value > 0

I have this rank measure that is ranking less than 0, as "rank 1". But I want it to be classified as last. And as you can see in my calculate, I'm only ranking values> = 0. Would anyone know how to help me?

rank.JPG

 

  

2.JPG

1 ACCEPTED SOLUTION
daxer
Solution Sage
Solution Sage

// Your measure for ranking should be:

[Ranking Measure] =
if( HASONEFILTER( T[Papel] ),

	var __maxValue =
		// You can replace this value
		// with some big, big value that
		// you know will never appear as
		// the value of [Div Liquida/ebit].
		// This will speed up this calculation.
		MAXX(
			ALLSELECTED( T[Papel] ),
			[Div Liquida/ebit]
		)
	var __greaterMaxValue = __maxValue + 1
	var __currentMeasure = [Div Liquida/ebit]
	var __result =
		if( __currentMeasure < 0,
			__greaterMaxValue,
			__currentMeasure
		)
	return
		__result
		
)
		
// The measure above just assigns to the negative
// values of the measure a value higher than
// the highest value for all the visible values
// of the measure. You should then use this measure
// in the RANKX function. The measure also checks
// if only one Papel value is visible in the current
// context. If not, then it returns BLANK(). So, you'll
// have to make sure that you're calculating ranks
// against single Papel values. But it makes no sense
// to calculate a rank against an amalgamated set of
// values as this has no meaning anyway.

 

Best

D

View solution in original post

1 REPLY 1
daxer
Solution Sage
Solution Sage

// Your measure for ranking should be:

[Ranking Measure] =
if( HASONEFILTER( T[Papel] ),

	var __maxValue =
		// You can replace this value
		// with some big, big value that
		// you know will never appear as
		// the value of [Div Liquida/ebit].
		// This will speed up this calculation.
		MAXX(
			ALLSELECTED( T[Papel] ),
			[Div Liquida/ebit]
		)
	var __greaterMaxValue = __maxValue + 1
	var __currentMeasure = [Div Liquida/ebit]
	var __result =
		if( __currentMeasure < 0,
			__greaterMaxValue,
			__currentMeasure
		)
	return
		__result
		
)
		
// The measure above just assigns to the negative
// values of the measure a value higher than
// the highest value for all the visible values
// of the measure. You should then use this measure
// in the RANKX function. The measure also checks
// if only one Papel value is visible in the current
// context. If not, then it returns BLANK(). So, you'll
// have to make sure that you're calculating ranks
// against single Papel values. But it makes no sense
// to calculate a rank against an amalgamated set of
// values as this has no meaning anyway.

 

Best

D

View solution in original post

Helpful resources

Announcements
PBI_User Group Leader_768x460.jpg

Manage your user group events

Check out the News & Announcements to learn more.

MBAS on Demand

2021 Release Wave 2 Plan

Power Platform release plan for the 2021 release wave 2 describes all new features releasing from October 2021 through March 2022.

Get Ready for Power BI Dev Camp

Microsoft named a Leader in The Forrester Wave

Microsoft received the highest score of any vendor in both the strategy and current offering categories.

R2 (Green) 768 x 460px.png

Microsoft Dynamics 365 & Power Platform User Professionals

DynamicsCon is a FREE, 4 half-day virtual learning experience for 11,000+ Microsoft Business Application users and professionals.