Forum Discussion

JiriRak's avatar
JiriRak
Helper I
3 years ago
Solved

Creating table from a table

Hi,

As usually, this was meant to be a quick modification to my model ...

There is a table that contains:

- Hedge type (1 or 2),

- Contract ID,

- Hedge ID.

Many Contracts ID have been hedged by 1 and 2.

Some of them  have been hedged more than once, i.e. there are a few Contract ID with more than one Hedge ID within the Hedge type.

I want to create two tables:

- with the values where Contract ID has got only one Hedge ID within the Hedge type,

- with the value where Contract ID has got more than one Hedge ID within the Hedge type.

How can I do it?

And where should I do it - query or desktop? 

I thought because it´s conditional, desktop would be better.

Principally, I need to filter out a table where the rows where Total is bigger than 2 would be missing.

  • Anonymous's avatar
    Anonymous
    3 years ago

    Hi  JiriRak ,

    I created some data:

    Here are the steps you can follow:

    Create calculated table.

    Table 1 =
    var _table=
    SUMMARIZE(
        'Table','Table'[Contract ID],'Table'[Hedge type],'Table'[Hedge ID],
        "Count",COUNTX(FILTER(ALL('Table'),'Table'[Contract ID]=EARLIER('Table'[Contract ID])),[Hedge ID]))
    var _table2=
    FILTER(
        _table,[Count]<=2)
    return
    SUMMARIZE(_table2,[Contract ID],[Hedge type],[Hedge ID])

    Table 2 =
    var _table=
    SUMMARIZE(
        'Table','Table'[Contract ID],'Table'[Hedge type],'Table'[Hedge ID],
        "Count",COUNTX(FILTER(ALL('Table'),'Table'[Contract ID]=EARLIER('Table'[Contract ID])),[Hedge ID]))
    var _table2=
    FILTER(
        _table,[Count]>2)
    return
    SUMMARIZE(_table2,[Contract ID],[Hedge type],[Hedge ID])

    If you want to implement filtering data greater than 2 of Total in a matrix:

    Create measure.

    Count_measure =
    COUNTX(FILTER(ALL('Table'),'Table'[Contract ID]=MAX('Table'[Contract ID])),[Hedge ID])
    Flag =
    IF(
        [Count_measure]<=2,1,0)

    Place [Flag]in Filters, set is=1, apply filter.

    Result:

     

    Best Regards,

    Liu Yang

    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  JiriRak ,

    I created some data:

    Here are the steps you can follow:

    Create calculated table.

    Table 1 =
    var _table=
    SUMMARIZE(
        'Table','Table'[Contract ID],'Table'[Hedge type],'Table'[Hedge ID],
        "Count",COUNTX(FILTER(ALL('Table'),'Table'[Contract ID]=EARLIER('Table'[Contract ID])),[Hedge ID]))
    var _table2=
    FILTER(
        _table,[Count]<=2)
    return
    SUMMARIZE(_table2,[Contract ID],[Hedge type],[Hedge ID])

    Table 2 =
    var _table=
    SUMMARIZE(
        'Table','Table'[Contract ID],'Table'[Hedge type],'Table'[Hedge ID],
        "Count",COUNTX(FILTER(ALL('Table'),'Table'[Contract ID]=EARLIER('Table'[Contract ID])),[Hedge ID]))
    var _table2=
    FILTER(
        _table,[Count]>2)
    return
    SUMMARIZE(_table2,[Contract ID],[Hedge type],[Hedge ID])

    If you want to implement filtering data greater than 2 of Total in a matrix:

    Create measure.

    Count_measure =
    COUNTX(FILTER(ALL('Table'),'Table'[Contract ID]=MAX('Table'[Contract ID])),[Hedge ID])
    Flag =
    IF(
        [Count_measure]<=2,1,0)

    Place [Flag]in Filters, set is=1, apply filter.

    Result:

     

    Best Regards,

    Liu Yang

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

    • JiriRak's avatar
      JiriRak
      Helper I

      Amazing, thank you, I got really crazy yesterday with the SUMMARIZE and VAR, and couldn´t get through.