Basic.Fractions

Fraction formatting for decimal values.

Syntax

DaxLib.FormatString.Basic.Fractions ( )

Definition

DAX
// Convert decimals to simple fractions
// Returns fractions like "1/2", "3/4", "2 1/3"
() =>
    VAR _WholeNumber = INT( SELECTEDMEASURE () )
    VAR _DecimalPart = SELECTEDMEASURE () - _WholeNumber

    VAR _CommonFractions =
        SWITCH (
            TRUE (),
            ABS( _DecimalPart - 0.5 ) < 0.01, "1/2",
            ABS( _DecimalPart - 0.25 ) < 0.01, "1/4",
            ABS( _DecimalPart - 0.75 ) < 0.01, "3/4",
            ABS( _DecimalPart - 0.33333 ) < 0.01, "1/3",
            ABS( _DecimalPart - 0.66667 ) < 0.01, "2/3",
            ABS( _DecimalPart - 0.125 ) < 0.01, "1/8",
            ABS( _DecimalPart - 0.375 ) < 0.01, "3/8",
            ABS( _DecimalPart - 0.625 ) < 0.01, "5/8",
            ABS( _DecimalPart - 0.875 ) < 0.01, "7/8",
            FORMAT( _DecimalPart, "0.00" )
        )

    RETURN
        IF ( _WholeNumber = 0,
            _CommonFractions,
            FORMAT( _WholeNumber, "#,##0" ) &
            IF ( _DecimalPart <> 0, " " & _CommonFractions, "" )
        )

Parameters

This function takes no parameters.

Example

DaxLib.FormatString.Basic.Fractions ()

Use this function in a measure's formatStringDefinition to apply fraction formatting.

Related Functions