Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
2 years ago
Solved

power bi deskstop - debug calculated column result different in daxstudio

Have a calculated column that needed debugging to get the correct result.  Found the issue using daxstudio.  

But using the same code in power bi desktop still returns the incorrect result.  

Sounds like I have not transposed exactly OR there may be a difference in how daxstudio vs pbi works.

 

Calculated column from pbi desktop

Calculated column in daxstudio with my debug wrapper code bits

Table visual results

Note  Org Plan Objective Weighting Rollup  should be all 2.00 for the three common rows.

To me both code chunks are the same.  The bug being needing ROUND() function wrapper to round up the result to the next integer  ie from 1.66 to 2.00

 

Stack Overflow link for bonus kudos 

https://stackoverflow.com/questions/78537250/power-bi-deskstop-debug-calculated-column-result-different-in-daxstudio

 

  • Hey Anonymous ,

     

    there are two main differences when you try to debug the DAX code of calculated column using DAX Studio.

     

    The most obvious difference is that using the DAX query pane in DAX Studio returns a table because of the required keyword EVALUATE whereas you are creating a scalar value when you are creating a CALCULATED COLUMN.

     

    The 2nd difference when creating a calculated column is that you are starting from ROW CONTEXT.

     

    For this reason it's necessary to use this pattern when you want to use DAX Studio:

    EVALUATE
    ADDCOLUMNS(
    SUMMARUIZE(
    <name of the table where you want to create the CALCULATED COLUMN>
    , "name of the calculated column"
    , <your DAX code>
    )
    )

     

    Hopefully, this helps to tackle your challenge.

     

    Regards,

    Tom

3 Replies

  • Hey Anonymous ,

     

    there are two main differences when you try to debug the DAX code of calculated column using DAX Studio.

     

    The most obvious difference is that using the DAX query pane in DAX Studio returns a table because of the required keyword EVALUATE whereas you are creating a scalar value when you are creating a CALCULATED COLUMN.

     

    The 2nd difference when creating a calculated column is that you are starting from ROW CONTEXT.

     

    For this reason it's necessary to use this pattern when you want to use DAX Studio:

    EVALUATE
    ADDCOLUMNS(
    SUMMARUIZE(
    <name of the table where you want to create the CALCULATED COLUMN>
    , "name of the calculated column"
    , <your DAX code>
    )
    )

     

    Hopefully, this helps to tackle your challenge.

     

    Regards,

    Tom

  • Anonymous's avatar
    Anonymous
    Not applicable

    Thanks TomMartens showing the interim calculations highlights what you said.  Will change my debug wrapper and continue.