Forum Discussion

moussab_orabi's avatar
moussab_orabi
Frequent Visitor
8 years ago
Solved

Manipulating data form.

Hello every one, I need help with manipulating this data: odred    quantity     valid_form      valid_to  1             100            01.01.2016     31.05.2017 2              50             01.02...
  • Zubair_Muhammad's avatar
    Zubair_Muhammad
    8 years ago

    moussab_orabi

     

    Following are the steps

     

    Step#1 Create a New Table

     

    Go to Modelling Tab >>>NEW TABLE

     

    New_Table =
    GENERATE (
        TableName,
        GENERATESERIES (
            YEAR ( TableName[Valid From] ),
            YEAR ( TableName[Valid To] ),
            1
        )
    )

     

    Step# 2 Change the Column Name from "Value" to YEAR

  • Zubair_Muhammad's avatar
    Zubair_Muhammad
    8 years ago

    moussab_orabi

     

    Step # 3 Add the YEAR PORTION column to this NEW TABLE

     

    Year_Portion =
    IF (
        YEAR ( 'New_Table'[Valid From] ) = 'New_Table'[YEAR],
        DIVIDE (
            DATEDIFF (
                'New_Table'[Valid From],
                MIN ( DATE ( YEAR ( 'New_Table'[Valid From] ), 12, 31 ), 'New_Table'[Valid To] ),
                DAY
            ),
            DATEDIFF ( 'New_Table'[Valid From], 'New_Table'[Valid To], DAY )
        ),
        IF (
            'New_Table'[YEAR] > YEAR ( 'New_Table'[Valid From] )
                && 'New_Table'[YEAR] < YEAR ( 'New_Table'[Valid To] ),
            365 / DATEDIFF ( 'New_Table'[Valid From], 'New_Table'[Valid To], DAY ),
            DIVIDE (
                DATEDIFF (
                    DATE ( YEAR ( 'New_Table'[Valid to] ) - 1, 12, 31 ),
                    'New_Table'[Valid To],
                    DAY
                ),
                DATEDIFF ( 'New_Table'[Valid From], 'New_Table'[Valid To], DAY )
            )
        )
    )
        * 'New_Table'[Quantity]