Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
6 years ago
Solved

Summation for Different Data Types in same Column !

Hi,

 

I am looking for the DAX function to calculate the column to make unique to get correct sum figure while preparing the visualization.

 

I need to prepare based on the the month total_data summation. Before that i need to convert the data into GB all of Data Type. Please suggest how to convert the data using the DAX , so that we can sum the Total_Data.

 

Formated YearData_typeTotal_data
Apr-19 B21285
Apr-19B0
Apr-19GB909866.69
Apr-19KB248615.01
Apr-19MB58876.97
Apr-19TB39519.41
Aug-19 B73742
Aug-19B0
Aug-19GB1147168.81
Aug-19KB6033.27
Aug-19MB74900.88
Aug-19TB28773.93
Dec-19 B73507
Dec-19B0
Dec-19GB152571.36
Dec-19KB14228.56
Dec-19MB135740.53
Dec-19TB25513.71
Feb-19 B73143
Feb-19B0
Feb-19GB370056.91
Feb-19KB

100.2

 

Please suggest.

 

Thanks,
Venugs

  • Try creating new column like

    GB Value =
    SWITCH (
            TRUE (),
            [Data_type] = "MB", Total_data/1024,
            [Data_type] = "KB", Total_data/1024/1024,
            [Data_type] = "TB",Total_data*1024,
            Total_data
        )

     

    Appreciate your Kudos. In case, this is the solution you are looking for, mark it as the Solution.
    In case it does not help, please provide additional information and mark me with @

    Thanks. My Recent Blogs -Decoding Direct Query - Time Intelligence, Winner Coloring on MAP, HR Analytics, Power BI Working with Non-Standard TimeAnd Comparing Data Across Date Ranges
    Connect on Linkedin

  • Hi, Anonymous 

     

    Based on my description, you may create a calculated column as follows.

     

    GB column 1 = 
    IF(
        'Table'[Date_type] = "B",
        'Table'[Total_data]/1024/1024/1024,
        IF(
            'Table'[Date_type] = "KB",
            'Table'[Total_data]/1024/1024,
            IF(
                'Table'[Date_type] = "MB",
                'Table'[Total_data]/1024,
                IF(
                    'Table'[Date_type] = "GB",
                    'Table'[Total_data],
                    IF(
                        'Table'[Date_type] = "TB",
                        'Table'[Total_data]*1024
                    )
                )
            )
        )
    )
    
    OR
    
    GB column 2 = 
    SWITCH(
        TRUE(),
        'Table'[Date_type] = "B",'Table'[Total_data]/1024/1024/1024,
        'Table'[Date_type] = "KB",'Table'[Total_data]/1024/1024,
        'Table'[Date_type] = "MB",'Table'[Total_data]/1024,
        'Table'[Date_type] = "GB",'Table'[Total_data],
        'Table'[Date_type] = "TB",'Table'[Total_data]*1024,
        BLANK()
    )

     

     

    Then you could create a measure as below.

     

    SumTotalData = 
    CALCULATE(
        SUM('Table'[GB column 1]),
        FILTER(
            ALLSELECTED('Table'),
            'Table'[Formated Year] = MAX('Table'[Formated Year])
        )
    )

     

     

    Result:

     

    Best Regards

    Allan

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.

2 Replies

  • Try creating new column like

    GB Value =
    SWITCH (
            TRUE (),
            [Data_type] = "MB", Total_data/1024,
            [Data_type] = "KB", Total_data/1024/1024,
            [Data_type] = "TB",Total_data*1024,
            Total_data
        )

     

    Appreciate your Kudos. In case, this is the solution you are looking for, mark it as the Solution.
    In case it does not help, please provide additional information and mark me with @

    Thanks. My Recent Blogs -Decoding Direct Query - Time Intelligence, Winner Coloring on MAP, HR Analytics, Power BI Working with Non-Standard TimeAnd Comparing Data Across Date Ranges
    Connect on Linkedin

  • v-alq-msft's avatar
    v-alq-msft
    Community Support

    Hi, Anonymous 

     

    Based on my description, you may create a calculated column as follows.

     

    GB column 1 = 
    IF(
        'Table'[Date_type] = "B",
        'Table'[Total_data]/1024/1024/1024,
        IF(
            'Table'[Date_type] = "KB",
            'Table'[Total_data]/1024/1024,
            IF(
                'Table'[Date_type] = "MB",
                'Table'[Total_data]/1024,
                IF(
                    'Table'[Date_type] = "GB",
                    'Table'[Total_data],
                    IF(
                        'Table'[Date_type] = "TB",
                        'Table'[Total_data]*1024
                    )
                )
            )
        )
    )
    
    OR
    
    GB column 2 = 
    SWITCH(
        TRUE(),
        'Table'[Date_type] = "B",'Table'[Total_data]/1024/1024/1024,
        'Table'[Date_type] = "KB",'Table'[Total_data]/1024/1024,
        'Table'[Date_type] = "MB",'Table'[Total_data]/1024,
        'Table'[Date_type] = "GB",'Table'[Total_data],
        'Table'[Date_type] = "TB",'Table'[Total_data]*1024,
        BLANK()
    )

     

     

    Then you could create a measure as below.

     

    SumTotalData = 
    CALCULATE(
        SUM('Table'[GB column 1]),
        FILTER(
            ALLSELECTED('Table'),
            'Table'[Formated Year] = MAX('Table'[Formated Year])
        )
    )

     

     

    Result:

     

    Best Regards

    Allan

     

    If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.