Legacy Dev Forum Posts

 View Only

Sign Up

  • 1.  Logical decisions

    Posted 06-05-2025 18:40

    ScottBub | 2017-03-21 14:48:26 UTC | #1

    We are returning data from a query to a database and trying to route the call flow based on the data returned. Before creating the logical decision in my call flow, I was able to call the number associated to the call flow and I was able to get through to the call flow.

    When I add the logical step, I call the number and it fails. I assume that I am not writing the expression correctly, but I have no error message. Could you please help me understand if this logical step is correct?

    (ToBool(Flow.HasBAS) AND (Flow.SOStatus == "4" OR Flow.SOStatus == "10" OR Flow.SOStatus == "13" OR Flow.SOStatus == "21") AND Task.SOType == "2")


    ScottBub | 2017-03-17 21:03:16 UTC | #2

    I have also just tried the following which also did not work.

    Flow.HasBAS


    ScottBub | 2017-03-18 19:03:31 UTC | #3

    I have been able to call the call flow and get to the main menu. I am able to even able to put in a service order number, but after it queries the data it tells me that an error occurred and disconnects the call. I have checked the bridge server logs and the query is working well.

    I created a second call flow and everything worked even when I added a switch/decision. As soon as I edit the switch or decision it fails.

    No matter what I do with the variables that I receive from my Bridge Action, it will not process the logic. It does like 2 + 2 == 4 though.


    tim.smith | 2017-03-21 14:46:56 UTC | #4

    Have you tried setting your flow variables to participant attributes (and retrieving them via the API) or reading them back to the caller to make sure the values are what you're expecting them to be?


    ScottBub | 2017-03-21 15:03:03 UTC | #5

    Hey Tim,

    I actually was able to resolve this issue. When writing logic inside of the expression box it made me create actual IF() statements for it to work correctly. Here is an example:

    IF((Flow.HasBAS == "1" and (Flow.SOStatus == "4" or Flow.SOStatus == "10" or Flow.SOStatus == "13" or Flow.SOStatus == "21") and Task.SOType == "2"), true, false)

    Maybe it was that I was returning Flow.HasBAS as a boolean and the rest as a string, but I tried various different methods to get it to work and the only thing I could get to work was that IF statement.


    system | 2017-08-28 19:33:07 UTC | #6


    This post was migrated from the old Developer Forum.

    ref: 1067