Forum Discussion

Saxon10's avatar
Saxon10
Post Prodigy
4 years ago
Solved

Crete measure for multiple columns

I have two tables are table 1 and table 2.   In table 1 the following columns are contains description, qty need 10 days, qty need 20 days, qty need 30 days and qty need 40 days.    In table ...
  • Seanan's avatar
    4 years ago

    Hi Saxon10 

    I have a solution but it is not the most dynamic. If your column headers will never change then this may be a fine solution but I'm sure someone may have a more dynamic option. However, please see the below measure and let me know if this is a viable option.

     

    CheckQty = SWITCH(TRUE(),
        CONTAINSSTRING("Qty Need 10 Days",MAX('Days'[Days])),SUM('Items'[Qty Need 10 Days]),
        CONTAINSSTRING("Qty Need 20 Days",MAX('Days'[Days])),SUM('Items'[Qty Need 20 Days]),
        CONTAINSSTRING("Qty Need 30 Days",MAX('Days'[Days])),SUM('Items'[Qty Need 30 Days]),
        CONTAINSSTRING("Qty Need 40 Days",MAX('Days'[Days])),SUM('Items'[Qty Need 40 Days])) + 0

     

    Result:

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    Kind regards,
    Seanan
    If this post helped, please consider accepting it as the solution.

  • Seanan's avatar
    Seanan
    4 years ago

    Hi Saxon10 

    You could try this:

    Total = 'Items'[10 Days] + 'Items'[20 Days] + 'Items'[30 Days] + 'Items'[40 Days]

    Then click on the parameter column and adjust the code to:

    Days = {
        ("10Days", NAMEOF('Items'[10 Days]), 0),
        ("20 Days", NAMEOF('Items'[20 Days]), 1),
        ("30 Days", NAMEOF('Items'[30 Days]), 2),
        ("40 Days", NAMEOF('Items'[40 Days]), 3),
        ("Total", NAMEOF('Items'[Total]), 4)
    }

    Result:

  • MFelix's avatar
    MFelix
    4 years ago

    Hi Saxon10 ,

     

    For the card create the following measure:

     

    Measure = 
    VAR __SelectedValue =
        SELECTCOLUMNS (
            SUMMARIZE ( days , Days[Days] , Days[Days Fields]),
            Days[Days]
        )
    var SelectedValuesDays = CONCATENATEX(__SelectedValue, Days[Days], "|")
    
    Return
    IF(CONTAINSSTRING(SelectedValuesDays, "10"), [10 days]) 
    + IF( CONTAINSSTRING(SelectedValuesDays, "20"), [20 days])
    + IF( CONTAINSSTRING(SelectedValuesDays, "30"), [30 days])
    + IF( CONTAINSSTRING(SelectedValuesDays, "40"), [40 days])