Forum Discussion

KellyLen's avatar
KellyLen
Icon for Helper III rankHelper III
8 years ago
Solved

New measure

Hi,   How should the DAX look like if I would like to create measure with following information:   Used columns are: OK/NOK Status And values are Amount in EUR.    I would like to ca...
  • MFelix's avatar
    MFelix
    8 years ago

    Hi KellyLen,

     

    Based on your table try to use this measure:

    percentage = 
    
        IF (
            DISTINCTCOUNT ( 'Status'[Status] ) > 1 ,
            1 ,
            IF (
                DIVIDE (
                    CALCULATE (
                        SUM ( 'Status'[Amount in EUR] ),
                        'Status'[Status] = VALUES ( 'Status'[Status] )
                    ),
                    CALCULATE ( SUM ( 'Status'[Amount in EUR] ), ALL ( 'Status'[Status],'Status'[NOK/OK] ) )
                )
                    = BLANK (),
                0 ,
                DIVIDE (
                    CALCULATE (
                        SUM ( 'Status'[Amount in EUR] ),
                        'Status'[Status] = VALUES ( 'Status'[Status] )
                    ),
                    CALCULATE ( SUM ( 'Status'[Amount in EUR] ), ALL ( 'Status'[Status],'Status'[NOK/OK] ) )
                )
            )
        )

    Then format as % and you should get the result below (put it as table to be more visible).

     

     

     

    If you need to take out only the Ok status and remove the NOK from the calculation

     

    percentage =
    IF (
        MAX ( 'Status'[NOK/OK] ) = "NOK",
        BLANK (),
        IF (
            DISTINCTCOUNT ( 'Status'[Status] ) > 1,
            1,
            IF (
                DIVIDE (
                    CALCULATE (
                        SUM ( 'Status'[Amount in EUR] ),
                        'Status'[Status] = VALUES ( 'Status'[Status] )
                    ),
                    CALCULATE ( SUM ( 'Status'[Amount in EUR] ), ALL ( 'Status'[Status] ) )
                )
                    = BLANK (),
                0,
                DIVIDE (
                    CALCULATE (
                        SUM ( 'Status'[Amount in EUR] ),
                        'Status'[Status] = VALUES ( 'Status'[Status] )
                    ),
                    CALCULATE ( SUM ( 'Status'[Amount in EUR] ), ALL ( 'Status'[Status] ) )
                )
            )
        )
    )

     

    Total calculations can also be redone to not include NOK

     

    Regards,

    MFelix