The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends September 15. Request your voucher.
I have a performance issue while using IF condition in DAX Expression.
if i remove the 2nd part of if statment and simply add 0. Result Calculated: 03 Seconds Only
if i kept the every thing as it is. Restult Calcuated Time: 4 to 5 mintues (even if only one BL is selected).
My observation is that "if condition" is always calcuate the false part even if the condition is true while there is no need to calculate 2nd condition.
Measure Projected Closing =
VAR BLs =
VALUES ( SalesCurr[BL_CODE1] )
VAR RDB =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "RDB", BLs ),
0
)
VAR KLG =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "KLG", BLs ),
0
)
VAR UBJ =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "UBJ", BLs ),
0
)
VAR HLB =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "HLB", BLs ),
0
)
VAR PGL =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "PGL", BLs ),
0
)
VAR MRS =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "MRS", BLs ),
0
)
VAR IFC =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "IFC", BLs ),
0
)
VAR AXE =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "AXE", BLs ),
0
)
VAR LNT =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "LNT", BLs ),
0
)
VAR LRL =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "LRL", BLs ),
0
)
VAR DSS =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "DSS", BLs ),
0
)
VAR MBR =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "MBR", BLs ),
0
)
VAR WRG =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "WRG", BLs ),
0
)
VAR OVL =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "OVL", BLs ),
0
)
VAR SHK =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "SHK", BLs ),
0
)
VAR HIZ =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "HIZ", BLs ),
0
)
VAR BLG =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "BLG", BLs ),
0
)
VAR GAN =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "GAN", BLs ),
0
)
VAR NOR =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "NOR", BLs ),
0
)
VAR TNG =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], SalesCurr[BL_CODE1] = "TNG", BLs ),
0
)
VAR BL_1 =
IFERROR (
CALCULATE ( [Gross Sales] / [LD_AVG_%age], VALUES ( SalesCurr[BL_CODE1] ) ),
0
)
RETURN
IF (
HASONEVALUE ( SalesCurr[BL_CODE1] ),
BL_1,
RDB+KLG+UBJ+HLB+PGL+MRS+IFC+AXE+LNT+LRL+DSS+MBR+WRG+OVL+SHK+HIZ+BLG+GAN+NOR+TNG)
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.