Forum Discussion

chutchut09's avatar
chutchut09
Regular Visitor
3 years ago
Solved

Multi currency reporting question

I have sales fact table that has columns for sales in local currency, Sales in USD, Sales in EUR, Sales in GPB and the local currency code.

I have a exchange rate table that reports each currency exhange rate against the 3 reporting currencies. Instead of reporting by just 3 currencies we want to report by all the different local currencies. I created a measure called Sales currency, so we are going from just the USDs to multi-currencies. 

 

My questions are,

1) Is there a way to leverage just the sales amount in local currency columns and total sales displayed by default currency of usds (when nothing is selected)?

Thank you in advance. Link to the power bi report

  • Anonymous's avatar
    Anonymous
    3 years ago

    Hi chutchut09 ,

     

    I suggest you to create an unrelated Currency Code table for slicer.

    Sales Currency =
    IF (
        MAX ( 'Dim Currency'[Currency Code] )
            IN VALUES ( 'Slicer Currency'[Currency Code] ),
        IF (
            ISFILTERED ( 'Slicer Currency'[Currency Code] ),
            IF (
                ISCROSSFILTERED ( 'Dim Currency' ),
                VAR SelectedCurrency =
                    SELECTEDVALUE ( 'Dim Currency'[Currency Code], "USD" )
                VAR DatesExchange =
                    SUMMARIZE (
                        FILTER (
                            'Fact Exchange Rate',
                            'Fact Exchange Rate'[Reporting Currency] = "USD"
                        ),
                        'Fact Exchange Rate'[MMM-YYYY],
                        'Fact Exchange Rate'[Exchange Rate]
                    )
                VAR Result =
                    IF (
                        NOT ISBLANK ( SelectedCurrency ),
                        IF (
                            SelectedCurrency = "USD",
                            [Total Sales_USD],
                            SUMX ( DatesExchange, [Total Sales_USD] * 'Fact Exchange Rate'[Exchange Rate] )
                        )
                    )
                RETURN
                    Result
            ),
            [Total Sales_USD]
        )
    )

    Result is as below.

     

    Best Regards,
    Rico Zhou

     

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

     

2 Replies

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi chutchut09 ,

     

    I suggest you to create an unrelated Currency Code table for slicer.

    Sales Currency =
    IF (
        MAX ( 'Dim Currency'[Currency Code] )
            IN VALUES ( 'Slicer Currency'[Currency Code] ),
        IF (
            ISFILTERED ( 'Slicer Currency'[Currency Code] ),
            IF (
                ISCROSSFILTERED ( 'Dim Currency' ),
                VAR SelectedCurrency =
                    SELECTEDVALUE ( 'Dim Currency'[Currency Code], "USD" )
                VAR DatesExchange =
                    SUMMARIZE (
                        FILTER (
                            'Fact Exchange Rate',
                            'Fact Exchange Rate'[Reporting Currency] = "USD"
                        ),
                        'Fact Exchange Rate'[MMM-YYYY],
                        'Fact Exchange Rate'[Exchange Rate]
                    )
                VAR Result =
                    IF (
                        NOT ISBLANK ( SelectedCurrency ),
                        IF (
                            SelectedCurrency = "USD",
                            [Total Sales_USD],
                            SUMX ( DatesExchange, [Total Sales_USD] * 'Fact Exchange Rate'[Exchange Rate] )
                        )
                    )
                RETURN
                    Result
            ),
            [Total Sales_USD]
        )
    )

    Result is as below.

     

    Best Regards,
    Rico Zhou

     

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

     

  • chutchut09's avatar
    chutchut09
    Regular Visitor

    I decided to keep what I have. I know the ask is a bit bizzare. It works! thank you for posting this alternative solution.