Workflow triggering both conditions that are set to be opposite

Can someone help me see what I’m doing wrong?

I have a workflow “if this is true:” set to trigger with this formula to check if a patient exists in the table

IF(
ISBLANK(
FILTER(
“Patient Information”,
([PatientID] = [_THISROW].[PatientID])
)
),
FALSE,
TRUE
)

and another workflow to trigger if the above is opposite.

IF(
ISBLANK(
FILTER(
“Patient Information”,
([PatientID] = [_THISROW].[PatientID])
)
),
TRUE,
FALSE
)

THEY ARE BOTH TRIGGERING AND MESSING UP MY ACTIONS.

I have also tried the following which worked yesterday but is triggering both workflows today:

IN([_THISROW].[PatientID], Patient Information[PatientID])

and the opposite

NOT(IN([_THISROW].[PatientID], Patient Information[PatientID]))

Is there anything anyone can see that explains my problem? Should I be using different formulas in the “if this is true” of the workflows?

Thank you

0 2 159
2 REPLIES 2

APPARENTLY it was a bug, i deleted one of the workflows and added it back new, now it is working

I’m glad you got it working!

I’d like to point something out that might make you expressions simpler…

This:

IF(
  ISBLANK(
    FILTER(
      “Patient Information”,
      ([PatientID] = [_THISROW].[PatientID])
    )
  ),
  FALSE,
  TRUE
)

is equivalent to:

ISNOTBLANK(
  FILTER(
    “Patient Information”,
    ([PatientID] = [_THISROW].[PatientID])
  )
)

Note the use of ISNOTBLANK().

And this:

IF(
  ISBLANK(
    FILTER(
      “Patient Information”,
      ([PatientID] = [_THISROW].[PatientID])
    )
  ),
  TRUE,
  FALSE
)

is equivalent to just:

ISBLANK(
  FILTER(
    “Patient Information”,
    ([PatientID] = [_THISROW].[PatientID])
  )
)

ISBLANK() and ISNOTBLANK() each produce Yes/No values (TRUE or FALSE): you don’t need to compare their results to TRUE or FALSE, nor use IF() to convert their result to TRUE or FALSE.

In this:

IN([_THISROW].[PatientID], Patient Information[PatientID])

[_THISROW]. is only (possibly) needed if this expression is used within a FILTER(), MAXROW(), MINROW(), or SELECT() expression, or in a slice row filter expression; otherwise, it’s entirely unneeded, and can actually cause problems.

See also:



Top Labels in this Space