Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
4 years ago

Calculate monthly distribution between two tables

Hi, 
I've been trying to create a report which estimates the monthly distribution based on two tables.

 

Table 1 contains Year-Month, country and weight based on shipping data.  

Year-Month      Country      Weight Kg   
2021-01      Norway   

   15

2021-01   Canada      2
2021-02   Norway   10
2021-02   Brazil   3

 

Table 2 contains Year-Month, weight, and attributes based on transactions. 

Year-Month   Weight Kg   Attribute 1   Attribute 2   Attribute 3
2021-01   12   A   A

   B

2021-01   5   B   C   A
2021-02   3    C   B   A
2021-02   9    B   B   B

 

I'm trying to estimate the distribution of each attribute with each country based weight distribution per month.  
My plan is to calculate the total attribute weight per month, get a ratio and then distribute it to each country.

The total weight per month doesn't need to add upp to the toal attribute weight per month, only the ratios are important. 

 

In this example I want the following: 
2021-01: Total attribute weight 17 Kg, 12/17 has [A,A,B] and 5/17 has [B,C,A] 
2021-02: Total attribute weight 12 Kg, 3/12 has [C,B,A] and 9/12 has [B,B,B] 

The end table should then show 

Year-month   Country   Attribute Weight Kg   Attribute 1   Attribute 2    Attribute 3
2021-01   Norway   12*(12/17)    A   A   B
2021-01   Norway   12*(5/17)   B   C   A
2021-01   Canada   5*(12/17)    A   A   B
2021-01   Canada   5*(5/17)    B   C   A
2021-02   Norway   10*(3/12)    C   B   A
2021-02   Norway   10*(9/12)   B   B   B
2021-02   Brazil   3*(3/12)    C   B   A
2021-02   Brazil   3*(9/12)   B   B   B


Any help regarding this would be greatly apprechiated!

2 Replies

  • daXtreme's avatar
    daXtreme
    Icon for Solution Sage rankSolution Sage

    Where do you want to do this? In Power Query or DAX? I suggest you do it in Power Query.

  • Anonymous's avatar
    Anonymous
    Not applicable

    Hi Anonymous ,

    I created a sample pbix file(see attachment) for you, please check whether that is what you want.

    1. Create a relationship between Table 1 and Table 2 base on the field Year-Month

    2. Create a measure as below

    Attribute Weight Kg = 
    VAR _selym =
        SELECTEDVALUE ( 'Table 1'[Year-Month] )
    VAR _selcountry =
        SELECTEDVALUE ( 'Table 1'[Country] )
    VAR _t2sqty =
        CALCULATE (
            SUM ( 'Table 2'[Weight Kg] ),
            FILTER ( ALLSELECTED ( 'Table 2' ), 'Table 2'[Year-Month] = _selym )
        )
    RETURN
        SUM ( 'Table 1'[Weight Kg] )
            * ( DIVIDE ( SUM ( 'Table 2'[Weight Kg] ), _t2sqty ) )

    If the above one can't help you get the desired result, please provide some sample data in your tables (exclude sensitive data) with Text format and your expected result with backend logic and special examples. It is better if you can share a simplified pbix file. You can refer the following link to upload the file to the community. Thank you.

    How to upload PBI in Community

    Best Regards