A proposal for #DAX Code Formatting #ssas #powerpivot #tabular
        Posted  
        
            by Marco Russo (SQLBI)
        on SQL Blog
        
        See other posts from SQL Blog
        
            or by Marco Russo (SQLBI)
        
        
        
        Published on Mon, 22 Oct 2012 12:10:00 GMT
        Indexed on 
            2012/10/22
            17:13 UTC
        
        
        Read the original article
        Hit count: 422
        
I recently published a set of rules for DAX code formatting. The following is an example of what I obtain:
CALCULATE (     
    SUMX (      
        Orders,      
        Orders[Amount]      
    ),      
    FILTER (      
        ALL ( Customers ),      
        CALCULATE (      
            COUNTROWS ( Sales ),      
            ALL ( Calendar[Date] )      
        ) > 42 + 8 – 25 * ( 3 - 1 )       
            + 2 – 1 + 2 – 1       
            + CALCULATE (       
                  2 + 2 – 2       
                  + 2 - 2       
              )       
            – CALCULATE ( 4 )      
    )      
)
The goal is to improve code readability and I look forward to implement a code formatting feature in DAX Studio. The DAX Editor already supports the rules described in the article.
I am also considering whether to add a rule specific for ADDCOLUMNS / SUMMARIZE because I would like to see the “pairs” of arguments to define a column in the same row or with a special indentation rule (DAX expression for a column is indented in the line following the column name).
EVALUATE     
CALCULATETABLE (      
       CALCULATETABLE (      
        SUMMARIZE (      
            Audience,      
            'Date'[Year],      
            Individuals[Gender],      
            Individuals[AgeRange],      
            "Num of Rows", FORMAT (COUNTROWS (Audience), "#,#"),       
            "Weighted Mean Age",         
                SUMX (Audience, Audience[Weight] * Audience[Age]) / SUM (Audience[Weight])      
        ),      
        SUMMARIZE (      
            BridgeIndividualsTargets,      
            Individuals[ID_Individual]      
        ),      
        Audience[Weight] > 0      
       ),      
       Targets[Target] = "Maschi",      
    'Date'[Year] = 2010,      
    'Date'[MonthName] = "January"      
)
I would like to get feedback for that – you can use comments here or comments in original article. Thanks!
© SQL Blog or respective owner