Forum Discussion

Anonymous's avatar
Anonymous
Not applicable
2 years ago
Solved

Error with visual query visualizations

Hi, I'm getting an error message which says the following (I'm attaching a screenshot of the message), It basically appears when i try to visualize the result of a visual query in datamart, The query contains a group by and a merage of two tabelles, I wonder if it ever happened with you before? and how i can slove that issure? I appreciate any help

 
  • Hi Anonymous ,

     

    It looks like your M query isn't fully foldable to the SQL source. When I say 'foldable', I mean that you've used some M code that does not have a direct translation to SQL code. For example:

    -- Table.RemoveColumns can be translated via the SQL SELECT clause

    -- Table.SelectRows can usually be translated via the WHERE clause, sometimes not

    -- Table.Group can be translated via the GROUP BY clause

    -- Text.Trim can be translated to RTRIM(LTRIM(..))

    -- Table.TransformColumnTypes can usually be translated to CONVERT(<data type>, [Column]), sometimes not (change type to integer, for example)

    -- Table.SplitColumn can NOT be translated as there's no equivalent SQL function

    -- Etc.

     

    You can check whether your M code folds to the source at each step by right-clicking on the query step and seeing if 'View Native Query' is greyed-out or not. Black/selectable = folding, greyed-out = not folding.

     

    Good info here:

    https://www.biconnector.com/blog/query-folding-power-bi-everything-you-need-to-know/ 

     

    Pete

2 Replies

  • Hi Anonymous ,

     

    It looks like your M query isn't fully foldable to the SQL source. When I say 'foldable', I mean that you've used some M code that does not have a direct translation to SQL code. For example:

    -- Table.RemoveColumns can be translated via the SQL SELECT clause

    -- Table.SelectRows can usually be translated via the WHERE clause, sometimes not

    -- Table.Group can be translated via the GROUP BY clause

    -- Text.Trim can be translated to RTRIM(LTRIM(..))

    -- Table.TransformColumnTypes can usually be translated to CONVERT(<data type>, [Column]), sometimes not (change type to integer, for example)

    -- Table.SplitColumn can NOT be translated as there's no equivalent SQL function

    -- Etc.

     

    You can check whether your M code folds to the source at each step by right-clicking on the query step and seeing if 'View Native Query' is greyed-out or not. Black/selectable = folding, greyed-out = not folding.

     

    Good info here:

    https://www.biconnector.com/blog/query-folding-power-bi-everything-you-need-to-know/ 

     

    Pete

  • Anonymous's avatar
    Anonymous
    Not applicable

    Thanks a lot Pete for the help. I have a better understanding of the issure and I'll work on solving it.