Inside a flow, using a field of type "List"in an "If" condition is not working as expected. When a list ( for example: list of sys ids) is used in an "If" conditional check to see if this list contains a specific sys id. This does not work even though the condition is met and it results in an error message in the System Log.
Steps to Reproduce
- Go to flow designer
- Create a new flow with a trigger which can be anything
- Create following actions
- Look up Record - look for a specific Knowledge Base Record (using its "sys id" in the Condtion and ensure this record has few users as managers i.e managers field should not be empty]
- Use 3.1 Record.Manager field in an "If" condition and check itf it "contains" a specific sys id [provide a sys id who is one of the manager]
- Add a Log action inside above "If" conditionSave the flow and test run the flow
NOTE: The runtime value of the "If" condition looks fine, i.e the list of sys id's does contain the specific sys id that is being looked for. But the condition does not evaluate to true. Also, look out for error message in the System Log.
This problem is currently under review. You can contact ServiceNow Technical Support or subscribe to this Known Error article by clicking the Subscribe button at the top right of this form to be notified when more information will become available.
- Create a new action which takes in the variable of "List" type and returning the output as a "String" instead.
- Call this custom UI action in your flow
- Use the output (which is of type String) from this flow in the If condition and check if it is blank
Basically, in the "if" condition instead of using the field of type "List" use field of type "String" (by converting the List to String).
Related Problem: PRB1358050