cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
GunnerJ Member
Member

Help with some Syntax

If someone can help me figure out how to fix my syntax I'd appreciate it. In the picture you can see that powerbi doesn't like my last section where I have the DELAY condition added. If I add it before the "OR" section of code that the error switches to the OR statement. 
 
02.Min.Task Time by SO# = CALCULATE(min('Open SO data'[BI_EVENT_DT_TM]),FILTER(allexcept('Open SO data','Open SO data'[BI_SO_NBR],'Open SO data'[BI_WRKFLW_TASK_SEQ_NBR],'Open SO data'[BI_WORK_EVENT_CD],'Open SO data'[BI_WORKGRP]), or('Open SO data'[BI_WORKGRP] = "CONFOLLOW" ,or('Open SO data'[BI_WORKGRP] = "CONST", 'Open SO data'[BI_WORKGRP] = "SUB")), 'Open SO data'[BI_WORK_EVENT_CD] = "DELAY"))
 
Syntax error.PNG
1 ACCEPTED SOLUTION

Accepted Solutions
Highlighted
Super User
Super User

Re: Help with some Syntax

Hi @GunnerJ 

You seem to be using FILTER with three arguments. It takes only two. Try this, where I'm assuming you want and AND

 

02.Min.Task Time by SO# =
CALCULATE (
    MIN ( 'Open SO data'[BI_EVENT_DT_TM] ),
    FILTER (
        ALLEXCEPT (
            'Open SO data',
            'Open SO data'[BI_SO_NBR],
            'Open SO data'[BI_WRKFLW_TASK_SEQ_NBR],
            'Open SO data'[BI_WORK_EVENT_CD],
            'Open SO data'[BI_WORKGRP]
        ),
        OR (
            'Open SO data'[BI_WORKGRP] = "CONFOLLOW",
            OR ( 'Open SO data'[BI_WORKGRP] = "CONST", 'Open SO data'[BI_WORKGRP] = "SUB" )
        )
            && 'Open SO data'[BI_WORK_EVENT_CD] = "DELAY"
    )
)

 or this (I don't know what you are trying to do)

 

02.Min.Task Time by SO# =
CALCULATE (
    MIN ( 'Open SO data'[BI_EVENT_DT_TM] ),
    FILTER (
        ALLEXCEPT (
            'Open SO data',
            'Open SO data'[BI_SO_NBR],
            'Open SO data'[BI_WRKFLW_TASK_SEQ_NBR],
            'Open SO data'[BI_WORK_EVENT_CD],
            'Open SO data'[BI_WORKGRP]
        ),
        OR (
            'Open SO data'[BI_WORKGRP] = "CONFOLLOW",
            OR ( 'Open SO data'[BI_WORKGRP] = "CONST", 'Open SO data'[BI_WORKGRP] = "SUB" )
        )
    ),
    'Open SO data'[BI_WORK_EVENT_CD] = "DELAY"
)

View solution in original post

2 REPLIES 2
Highlighted
Super User
Super User

Re: Help with some Syntax

Hi @GunnerJ 

You seem to be using FILTER with three arguments. It takes only two. Try this, where I'm assuming you want and AND

 

02.Min.Task Time by SO# =
CALCULATE (
    MIN ( 'Open SO data'[BI_EVENT_DT_TM] ),
    FILTER (
        ALLEXCEPT (
            'Open SO data',
            'Open SO data'[BI_SO_NBR],
            'Open SO data'[BI_WRKFLW_TASK_SEQ_NBR],
            'Open SO data'[BI_WORK_EVENT_CD],
            'Open SO data'[BI_WORKGRP]
        ),
        OR (
            'Open SO data'[BI_WORKGRP] = "CONFOLLOW",
            OR ( 'Open SO data'[BI_WORKGRP] = "CONST", 'Open SO data'[BI_WORKGRP] = "SUB" )
        )
            && 'Open SO data'[BI_WORK_EVENT_CD] = "DELAY"
    )
)

 or this (I don't know what you are trying to do)

 

02.Min.Task Time by SO# =
CALCULATE (
    MIN ( 'Open SO data'[BI_EVENT_DT_TM] ),
    FILTER (
        ALLEXCEPT (
            'Open SO data',
            'Open SO data'[BI_SO_NBR],
            'Open SO data'[BI_WRKFLW_TASK_SEQ_NBR],
            'Open SO data'[BI_WORK_EVENT_CD],
            'Open SO data'[BI_WORKGRP]
        ),
        OR (
            'Open SO data'[BI_WORKGRP] = "CONFOLLOW",
            OR ( 'Open SO data'[BI_WORKGRP] = "CONST", 'Open SO data'[BI_WORKGRP] = "SUB" )
        )
    ),
    'Open SO data'[BI_WORK_EVENT_CD] = "DELAY"
)

View solution in original post

GunnerJ Member
Member

Re: Help with some Syntax

@AlB I see my mistake. Thank you for the quick reply!

Helpful resources

Announcements
New Kudos Given Badges Coming

New Kudos Given Badges Coming

We're rolling out new Kudos Given badges. Find out how many Kudos you've given.

Power Platform World Tour

Power Platform World Tour

Find out where you can attend!

Top Kudoed Authors (Last 30 Days)
Users online (3,867)