Unexpected false result with fulfillmentOrder.lineItems

I am getting a “False” from a workflow Condition that I expect a “True” from. Any ideas what’s wrong with my Condition?

Condition:

  • For at least one of the order fulfillment items (batches of items shipped, delivered, or picked up)
    • At least one of line items in that fulfillment item has a product with a product type equal to “A” (lineItems_item.lineItem.product.productType)
    • The fulfilment item is being shipped (fulfillmentOrders_item.deliveryMethod.methodType)

When I test this on an order that has products with product types of both A and B it returns false. The workflow run shows a pass (green check mark) that a product was detected with the correct product type, but at the next level up which is the line item level, it shows a fail (gray X), as if the data is not being passed up to the line item level from the product level. I’m including screenshots to hopefully explain things better.

Here are the workflow conditions (I swapped the order to see if that would somehow help; it didn’t):

Meanwhile, if the order contains only one item and that item has the correct type “A,” then it passes.

Update: This issue seems to be related to the fact that this particular order was modified after the customer checked out online. I’m still not sure exactly what’s going on, though.

Instead of equal to bike, have you tried includes, starts with, or is at least one of?

It has the same result, which is what I would expect since the initial check that uses the equals or includes is already returning true.

It’s as if the TRUE result is not being passed up a step to the check for “At least one of line items”

@PaulNewton any ideas on this one? Is this user error, or unexpected behavior?

Did you mean the Flow PM @ paul_n?
Try not to at people not in a thread for help, EVERYONE wants individual help for their private benefit.

Duly noted. I only did so because thought there was a real possibility I might have found a bug or at least “unintended behavior.”

I think I remember something weird about one of my workflows not going through with “at least one of” and I had to use negative logic to make it work. E.g. “None of”. And then put the action in the “Else”.

It’s a bit hard to tell without looking at your data because you have multiple lists.

But I suspect the problem is that you are AND’ing the two conditions together. So you need at least one fulfillment order to have the delivery method type == SHIPPING and for that same fulfillment order to have a line item with the product type that includes Bike. Likely, your fulfillment order that matches the first condition doesn’t match the second.